上一页 1 ··· 52 53 54 55 56 57 58 59 60 ··· 67 下一页
摘要: 条件编译1 1 #if (A == 10) 2 3 #else 4 5 #endif 条件编译2 1 #if define A 2 3 #endif 1 #if !define A 2 3 #endif 条件编译3 1 #ifdef A 2 #endif 1 #ifndef A 2 #endif 阅读全文
posted @ 2021-05-08 10:40 我爱茜茜公主 阅读(68) 评论(0) 推荐(0)
摘要: 1 static void uart_isr(struct rt_serial_device *serial) 2 { 3 struct stm32_uart *uart = (struct stm32_uart *) serial->parent.user_data; 4 5 RT_ASSERT( 阅读全文
posted @ 2021-05-07 14:22 我爱茜茜公主 阅读(777) 评论(0) 推荐(0)
摘要: 停止位的目的是“接收方检测到下一个字节的起始位的下降沿”能校准上一个字节接收带入的误差,如果不设计停止位,当这个接收方与发送方之前的误差超过了一个bit的耗时,会造成丢失数据的现象 参考地址:https://blog.csdn.net/weixin_43319854/article/details/ 阅读全文
posted @ 2021-05-07 11:18 我爱茜茜公主 阅读(3340) 评论(0) 推荐(0)
摘要: 数组下标1 int idx=0; 2 3 idx++; 4 5 idx %= BUF_SIZE; 求余运算符“%”,二元运算符,具有左结合性。参与运算的量均为整型。求余运算的结果等于两个数相除后的余数 阅读全文
posted @ 2021-05-07 10:43 我爱茜茜公主 阅读(255) 评论(0) 推荐(0)
摘要: 参考地址:https://blog.csdn.net/kuzuiu001/article/details/90701219 在STM32的函数库中,这两个函数实现的功能其实是一样的,都是清除对应的标志位,但是标志位和中断位的含义不一样,不是所有的标志位都可以产生中断。查看源代码如下:#define 阅读全文
posted @ 2021-05-07 10:18 我爱茜茜公主 阅读(1193) 评论(0) 推荐(0)
摘要: 参考地址:http://www.51hei.com/bbs/dpj-39303-1.html 1 typedef union 2 { 3 __u32 dwval; // 这里是对寄存器整体赋值修改 4 struct 5 { 6 __u32 io_map_sel : 1 ; // default: 0 阅读全文
posted @ 2021-05-07 09:44 我爱茜茜公主 阅读(291) 评论(0) 推荐(0)
摘要: 参考文档:https://chuna2.787528.xyz/xidongs/p/5655440.html 从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要个各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放, 阅读全文
posted @ 2021-05-07 09:11 我爱茜茜公主 阅读(172) 评论(0) 推荐(0)
摘要: 参考文档:https://blog.csdn.net/weixin_42868654/article/details/88558109 简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code + RO Data + RW Data 程序运行的时候,芯片内部RAM使用的空间为: RW Dat 阅读全文
posted @ 2021-05-06 17:38 我爱茜茜公主 阅读(169) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2021-05-06 17:21 我爱茜茜公主 阅读(75) 评论(0) 推荐(0)
摘要: C语言中使用静态函数的好处(1)静态函数会被自动分配在一个一直使用的存储区,直到退出程序,避免了调用函数的压栈出栈,速度快很多。(2)static指函数的作用域仅局限于本文件。不用担心自己定义的函数是否会与其他文件的函数同名 阅读全文
posted @ 2021-05-06 15:57 我爱茜茜公主 阅读(579) 评论(0) 推荐(0)
上一页 1 ··· 52 53 54 55 56 57 58 59 60 ··· 67 下一页