自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux驱动开发之USB鼠标驱动学习思路

a. 在入口函数init注册usb_driver驱动,出口函数exit卸载usb_driver驱动;①输入子系统,上报事件,把数据编程具体的含义,让人所知道的,如:按下鼠标左键,显示L;c和d点代码:中断是fill-urb中的:usbmouse_as_key_irq函数。d. 当USB主机控制器收到USB设备的数据,会在urb的一个函数irq产生中断;①输入子系统,完成①分配input_dev结构体,②设置产生按键类事件,③注册。提示:看懂文章的前提是会输入子系统、USB总线驱动框架。

2023-08-12 20:34:24 247

原创 STM32的EXTI详解+常见问题汇总

从功能框图、实验具体注意细节到常见问题汇总....

2023-07-29 10:46:51 232

原创 USART通讯协议详解

介绍了USART的协议层、物理层、有关STM32串口的功能介绍、还有USART常见问题汇总

2023-07-18 19:23:34 1661 1

原创 SPI通讯协议详解+面试问题汇总

从物理层、协议层、架构方面介绍SPI协议,并且总结了常见的面试问题...

2023-07-17 22:12:37 2147 1

原创 IIC通讯协议详解+常见问题汇总

IIC的详解包括:物理层、协议层、STM32有关IIC的配置、软件编程;IIC常见高频问题汇总

2023-07-13 17:39:59 949 2

原创 CAN协议详解+常见问题汇总,吐血整理!!!

CAN的详解包括:物理层、协议层、STM32有关CAN的配置、软件编程;CAN的常见问题是汇总了网上经常反馈遇到的高频问题

2023-07-12 20:51:44 5879 1

原创 数据结构与算法:链表中倒数第k个节点

10s明白如何解答该题

2023-07-05 10:33:29 42 1

原创 FreeRTOS,如何理解互斥量?

介绍了互斥量的应用场景、作用,解释了优先级反转和优先级继承

2023-06-30 12:29:52 102 1

原创 FreeRTOS,快速认识队列

FreeRTOS,快速认识队列

2023-06-29 15:50:01 48 1

原创 C语言,快速认识柔性数组

让你快速了解柔性数组

2023-06-28 11:08:00 55 1

原创 FreeRTOS,轻松快速学会创建动态任务

FreeRTOS,速度教会你如何创建动态任务

2023-06-26 16:40:10 79 1

原创 C语言,#define定义宏和函数的对比

对比了 #define宏定义 和 函数 的优点缺点,如代码长度、执行速度、参数类型.....

2023-06-23 10:45:46 221 1

原创 C语言,#include “” 和 #include <>的区别及具体讲解

1. #include “”(针对用户创建的头文件),查找策略是:现在该源文件所在目录下查找,如果头文件找不到,编译器就会在标准位置查找头文件,即自己安装这个软甲的目录下去查找;2. #include <>(针对库文件,已经封装好的函数),查找策略是:直接去标准位置查找头文件,即自己安装这个软甲的目录下去查找,找不到就提示编译错误;答:可以,只不过这样的话查找效率很低,因为要先去源文件目录查找再去标准位置查找,并且这样也分辨不出哪个是用户定义的头文件,哪个是封装好的头文件。答:区别在于查找的策略。

2023-06-22 10:14:36 2436 1

原创 C语言--最快时间了解预处理

C语言预处理阶段包含翻译环境和运行环境;翻译环境又包含预编译、编译、汇编......

2023-06-21 10:20:01 27

原创 C语言文件操作--被错误使用的feof,一分钟正确认识它

在文件读取过程中,不能用feof函数的返回值来判断文件是否结束,而是当文件读取结束的时候,判断是读取失败结束的,还是遇到文件尾结束的。2. NULL,使用fgets(文件结构体指针),获取文件中的字符串,如果这个字符串返回NULL,说明读取文件结束。1. EOF,使用fgetc(文件结构体指针),获取文件中的一个字符,如果这个字符等于EOF,说明读取文件结束;分为两步骤解决:一、先判断是否结束;1. 使用ferror,表明是读取失败才结束的;2. 使用feof,表示读取的文件末尾才结束的。

2023-06-20 14:35:20 211

原创 C语言,文件操作,有关scanf和printf的总结

scanf/printf、sscanf/sprintf、fscanf/fprintf的区别

2023-06-19 11:18:04 48

原创 C语言-动态内存分配常见陷阱汇总,你了解几个?

C语言,动态开辟内存常见陷阱错误,你知道几个?

2023-06-17 17:20:36 50 1

原创 (C语言)快速认识malloc、calloc、realloc

C语言,快速认识malloc、calloc、realloc的用法和注意点

2023-06-16 10:39:04 143 1

原创 C语言结构体内存对齐,一分钟学会(热门考点)

结构体内存对齐(热门考点)结构体内存对齐(热门考点)

2023-06-15 10:11:36 30 1

原创 C语言,最短时间认识strcpy与memcpy的区别与用处

因为strcpy遇到\0就结束,那么arr1中第一个整型1,在内存中存储(小端存储):01 00 00 00 ,所以一开始是把01放入arr2,然后遇到00,0=\0,所以就拷贝结束了。该函数是从source的位置复制num个字节到destination,遇到\0也不好使,memcpy只认num。代码经过执行,arr2的值是多少?以上就可以把arr1的值全部拷贝到arr2。strcpy:只能拷贝字符串,

2023-06-14 10:49:32 86 1

原创 2. 有关strlen函数的用法及注意点

一、strlen(),括号里面的类型是const char* str--常量char* 指针变量,从首元素的地址开始计数,遇到 '\0' 就结束计数,且计数值不包括\0;答案虽然是74,但是其实是随机值,因为如果是创建字符数组的话,不像字符串默认最后有个\0,字符数组最后没有\0,所以会继续往后计数,遇到随机值等于0才结束。二、(很多人都忽略的点)strlen()函数的返回值是一个无符号的值,所以遇到如下这题,答案是打印:hehe。

2023-06-13 09:58:41 239 1

原创 1. 什么是回调函数?(以最短时间让你了解回调函数功能)

实现方法是:在调用Calc后,执行void Calc(int (*p) (int, int))这个函数里面的代码,那么在这个函数名中,*p代表指向调用函数的地址,int (*p)代表Add那么返回值是int,int (*p) (int, int)代表Add里面两个要加的数是int型,在对printf("%d", p(x, y))打印时,就把从键盘输入的x,y值代入Add中进行计算,然后获得return x+y的返回值。以上是个举例,那么如果想要乘,main函数里面就换成Calc(Mul)。

2023-06-08 10:24:16 44 1

空空如也

空空如也

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

TA关注的人

提示
确定要删除当前文章?
取消 删除