- 博客(43)
- 收藏
- 关注
原创 day42-硬件学习之温度传感器及(ARM体系架构)
两个或多个输出信号连接在一起可以实现逻辑“与”的功能。51单片机ds18b20公共总线111100010000拉高的过程为释放总线的过程;接收方一定要释放总线,来实现接收数据;上拉电阻:保证双方释放总线后,总线能够呈现高电平;首先,DS18B20的小数点是定点存放的,低四位为二进制小数,高十二位为整数部分,最低的小数部分为0.0625;ARM Cortex A(应用于消费类电子产品)M(应用于微控制器MAU方向,如STM32)R(应用于实时性方向,如军事,通信)
2025-06-19 19:13:32
548
原创 day40- 硬件学习之 51单片机II (中断处理)
中断系统是为使CPU具有对外界紧急事件的实时处理能力而设置的。当CPU正在处理某件事的时候外界发生了紧急事件请求,要求CPU暂停当前的工作,转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为中断;实现这种功能的部件称为中断系统请示CPU中断的请求源称为中断源51单片机中嵌套优先级最多两层;若中断优先级相同,中断号越小,越先响应;中断源发出中断请求;CPU检查是否响应中断及该中断源是否屏蔽;检查中断优先级;保护现场;执行中断服务函数;恢复现场;
2025-06-17 18:47:49
682
原创 day39-硬件学习简介及51单片机
在当前编译平台下,编译出来的程序能运行在体系结构不同的另一种目标平台上,但是编译平台本身却不能运行该程序;位选:选择哪个数码管显示(LEDS1、LEDS2、LEDS3、LEDS4来控制)GPIO(general purpose in out)通用目的的输入输出。注意:本次共阴极,在三极管中,将P10置一,LEDS1即为0被选中。段选:选择数码管中某段的亮灭状况(P0来控制)sfr 特殊功能寄存器。
2025-06-16 19:10:43
1112
原创 day37-TCP的并发(tcp_fork&&tcp_thread)| 数据库
vim中对齐:按v和=快速对齐:61,75d直接剪切,61-75行。
2025-06-10 17:46:09
794
原创 day36-多路IO复用
比如我现在用的电脑,需要同时处理键盘鼠标的输入、中断信号等等事件,再比如web服务器如nginx,需要同时处理来来自N个客户端的事件。逻辑控制流在时间上的重叠叫做 并发(时间段是并行,但时间点上是串行的)并行:在一个时间点上同时运行。而CPU单核在同一时刻只能做一件事情,一种解决办法是。
2025-06-09 23:31:44
1265
原创 day35-系统编程之网络编程IV及MQTT协议
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。2.2设计原则。
2025-06-06 17:21:50
974
原创 day34- 系统编程之 网络编程(TCP)
什么是P2P?P2P(Peer-to-Peer)网络是一种分布式网络架构,其中每个节点(或称为“对等体”)都是网络的参与者,节点之间直接进行数据交换与通信有链接,可靠传输方式应答机制超时重传全双工连续,无边界有顺序三次握手:(握手触发在accept()和connect()函数之间,断开出现在双方调close());UDP称为用户报TCP称为流式套接字注意:内容是有顺序的。
2025-06-05 22:16:41
1253
原创 day33-系统编程之 信号通信II 及 网络编程
OSI 模型 ===》开放系统互联模型 ==》分为7层:理想模型 ==》尚未实现tftpa /etc/123//此七层,自下向上看应用层表示层加密解密 gzip会话层网络断开,连接状态,keep-close keep-alive传输层tcp协议//可靠传输方式,但网络延迟大 udp协议//不可靠传输方式,可能会数据缺失,但网络延迟低,开销小 传输:文件(TCP) (实时性,UDP) 视频,音频网路层ip NAT链路层。
2025-06-04 17:11:16
833
原创 day32-系统编程之 进程间通信IPC
空间独立,需要一些操作;分为三大类:1、古老的通信方式无名管道 有名管道 信号2、IPC对象通信 system v BSD suse fedora kernel.org消息队列(用的相对少,这里不讨论)共享内存信号量集3、socket通信网络通信(不同主机间交互)
2025-06-03 18:29:02
812
原创 day29- 系统编程之线程
共同点:都可并发优点: 比多进程节省资源,可以。概念: 线程是轻量级进程,一般是一个进程中的多个任务。进程是系统中线程是系统中特征:1、共享资源(线程共享,进程不共享)2、效率高 30%(并发度更高,调度比进程更快)3、三方库: pthread clone posix (一种协议,便于移植)3.1 编写代码头文件: pthread.h3.2 编译代码加载库: -lpthread library缺点:1,线程和进程相比,2,线程的调试gdb,些。
2025-05-27 22:00:09
829
原创 day27- 系统编程之 进程
sprintf函数打印到字符串中(要注意字符串的长度要足够容纳打印的内容,否则会出现内存溢出),而printf函数打印输出到屏幕上。sprintf函数在我们完成其他数据类型转换成字符串类型的操作中应用广泛除了外,可选参数可以是任意个。buffer是名;format是格式化字符串(像:”%3d%6.2f%#x%o”)可以将多个数值数据连接起来可以将多个字符串连接成字符串。
2025-05-23 18:39:32
1060
1
原创 day25- 系统编程之 标准IO(II) 及 文件IO
为了匹配计算机与设备之间的速度,让低速的输入输出设备和高速的用户程序能够协调工作行缓冲,1k,terminal(终端),主要用于人机交互stdout缓存区满或者遇到\n刷新 1024行缓存多是关于终端的一些操作1.遇到\n刷新2.缓存区满刷新3.程序结束刷新4.fflush刷新 fflush(stdout);FILE*fp stdin stdout stderr //主要刷输出方向全缓冲,4k,主要用于文件的读写缓存区满刷新缓存区 4096。
2025-05-21 20:22:58
1608
原创 day24- 系统编程 概述 及 标准IO
I: 键盘是标准输入设备 默认输入就是指键盘 /dev/inputO: 显示器是标准输出设备 默认输出就是指显示器一般都是对普通文件操作是一种有缓存的IO 在文件IO和用户程序之间,加入缓冲区,可以有效减少系统调用的效率,节省系统IO调度资源linux中一切都是文件。文件用来存储数据(数据,指令)
2025-05-20 18:04:49
1222
原创 day23-数据结构之 树
树:n(n>=0)个结点的有限集合n = 0 ,空树在任意一个非空树中,树的度数是指,这棵树中,最大的结点的度数,称谓树的度数树的深度或高度,从根开始,根为第一层,根的孩子为第二层。
2025-05-19 18:29:58
1133
原创 day17-结构体与共用体&位运算
为原有的数据类型,起一个别名;int INT;//INT为变量名(具体)//INT为类型名(抽象)int id;//起别名int id;}Student;
2025-05-09 17:23:42
770
原创 day16-指针IV
如: int (*p)(int ,int) // 此时p指向一类两个整形作为参数且返回值为基类型的指针。首先,写函数声明,去掉函数名,在去掉的位置加(*p)int *a[10];函数的函数名为该函数的入口地址。
2025-05-08 17:22:27
502
原创 day15-指针III
编写程序在一个字符串中查找某个字串首次出现的位置, int subString(const char *s, const char *sub);一般形式:char *strncat(char *dest, const char *src, size_t n);一般形式:char *strncpy(char *dest, const char *src, size_t n);一般形式:char *strncat(char *dest, const char *src, size_t n);
2025-05-07 18:12:23
504
原创 day14-指针II
思想:先从右往左,找一个比基准数小的数;再从左往右,找一个比基准数大的数;即,基准数左边均小于基准数,基准数右边均大于基准数;将左右再分为两个小数组继续进行。空指针:依旧无法进行指针运算,它表示指针的一种状态,表示指针指向的空间不可被访问。int *binaryFind //返回值为指针的函数。废除野指针的方法: int *p = NULL。
2025-05-06 19:12:56
675
原创 day13-预处理命令&指针I
一般形式: #define 宏名(参数名) 宏的内容 如,//调用不需指定数据类型在宏定义时,宏的内容两边都加括号 如, ADD(a + b) ((a) + (b))基类型 * 指针变量名;(基类型指装什么类型的地址)int i = 10;int *p;p = &i;//指针变量p指向变量(int *p = &i;*p = 100;//通过指针间接对i空间进行访问野指针:指针指向的位置不可知的如何避免野指针:指针初始化。
2025-04-30 16:49:43
910
原创 day12-函数III
方法1: 方法2: 全局变量,主要作用是为了实现函数的传参,但可能导致耦合性过高 若未对全局变量或静态变量进行定义,其值必然为0 变量的生存期与程序的运行周期相同 全局变量和static形成的静态局部变量位于静态区,未被初始化时,值为0 局部对象,诞生于声明点,结束于块完毕 注意:寄存器位于CPU中,不可被取址4.2 extern变量 表示对函数声明,声明的函数不在自己的.c文件中 exter
2025-04-29 20:49:04
775
原创 day05-C语言之选择结构程序设计
练习2:从键盘输入一个字符,输出该字符的按字典排列顺序的下一个字符,例如,输入a,则输出b。如果输入的字符不在26个英语字母中,则显示输入数据有误,如果输入的字符是z或Z,则输出a或A。练习3:输入一元二次方程的系数,对一元二次方程进行求解。练习1:检验一个数,是偶数输出YES;练习:给定月份和年份,计算当年当月一共多少天?else if(表达式2)语句2。else if(表达式m)语句m。表达式2 : 表达式3。
2025-04-21 19:06:02
346
2
原创 day04-C语言之运算符II与简单C程序设计
预处理命令: #include<stdio.h>int main (void) 其中 int为函数返回值;main为函数名;void为函数返回值控制语句(完成一定控制功能)函数调用语句(一个函数调用加一个分号)表达式语句(一个表达式加一个分号)空语句(只有一个分号的语句)复合语句,又称分程序(用{}把一些语句括起来成为复合语句)
2025-04-18 19:51:15
833
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人