自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 LINUX管道

//fifo2.c #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <string.h> #include <errno.h> int main() { //创建有名管道 int re = mkfifo("/home/china/fifo1", 0777);if(pid > 0)//父进程 { //sleep(2);

2024-11-25 00:26:09 697 1

原创 C内存管理

全局变量:在所有函数(包括main函数)之外定义的变量称为全局变量(函数外),其作用域是声明位置到整个源程序结束(extern全局变量)或从声位置到本文件结束(static全局变量)。1.修饰局部变量改变其存储位置,存储在静态区,所以它的寿命是随程序。static全局变量的作用域是本文件,extern全局变量的作用是整个原程序,也就是说extern全局变量不属于那个文件属于整个程序。局部变量:函数的形参和函数内部定义的变量及复合语句内定义的变量称为局部变量(函数内),其作用域仅限于函数体内或复合语句内。

2024-11-25 00:25:00 461

原创 指针,数组,字符串

]也是一种运算符就是*的简写,所以可以用加法交换律,下标法a[i] = i[a] = 地址法*(a+i) = *(i+a) = 指针变量法*(p+i) 让指针指向数组。//定义了三个线性的一维数组A[0],A[1],A[2],每个数组A[0]有五个元素A[0][0],A[0][1]....函数指针数组:int *a[10](int ):错,要加()不然[]先于(int)结合,那里面放的是函数数组: int (*a[10])(int)数组[]实际上是编译系统对指针*的一种简写,a[i]*(a+i)

2024-11-25 00:24:14 275

原创 SPI实战

所以数据有效位(采样位)是上升/下降/奇/偶边沿是我们通过对SCK的CPOL和CPHA设置的.CPOL为1(表示空闲位的极性,空闲为高,有效为低)即时钟要从高到低再到高(先下降再上升,所以决定下降和上升谁是奇数谁是偶数),CPHA为1(表示先写后读是对的,奇数边沿触发,偶数采样)。主机和从机SCK信号是同步的,在主机发送字节的时候,是一个一个bit位发送,比如主机发送第一个bit位时候,就左移一位,就也是发送出去一位,同一时刻从机也收到SCK信号,也会发送左移一bit位,移出去的位发送给了主机。

2024-11-25 00:23:15 551

原创 UART实战

STM32开发实战总结图1.基于TTL的UART通讯基于TTL的UART通讯,是USART协议应用最简单的使用场景。即直接把数字I/O输出的高低电平作为实际的物理信号进行传输。在物理连接上,只需要设备共地,通过一根信号线可实现单向的设备通讯。所以UART为半双工,要使用两根信号线。UART的通信线路简单,只需要三根线即可实现两个设备之间的传输,但是传输速率是最慢的。当然两个设备使用UART串口通讯时,必须先约定好传输速率和帧格式。2 UART桢结构当两个设备需要通过U

2024-11-25 00:22:29 999

原创 PWM应用

高电平持续时间,是时间。假设50%,占空比=脉宽/PWM周期(ARR) //CCR值的设置是与AAR结合使用的,注意AAR就是PWM的周期,所以占空比=CCR/AAR //这是在初始化时写入脉宽,但这种方式写入后要改得改初始化很麻烦 //还有一种更灵活的方式我们在main中调用库函数直接修改脉宽 //修改CCR1比较值,调节不同的占空比.TIM_SetCompare1(TIMx,值-1);

2024-11-25 00:21:16 1045

原创 数组名与&数组名

/发现用%c打印数组首元素,理论上&str[0][0]与str完全等价,但这里str[0][0]可以正确打印,而*str不行。//str[0][0]与**str打印结果相同,说明str在这里是表示整个数组的地址,而不是数组首地址。printf("str为%p,%s\n",&str[0][0],&str[0][0]);printf("str为%p,%c\n",&str[0][0],str[0][0]);printf("str为%p,%c\n",&str[0][0],str[0][0]);

2024-01-22 11:23:01 376 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部