
嵌入式
菜袅1号
不积跬步无以至千里
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
字节对齐问题:以指针方式uint32分包uint8_t数组
1、在windows系统用QT平台拆包uint8_t数组,没有出现字节对齐问题该方法把数据类型类比结构体,强制把uint8_t *指针转成uint32_t *,再用*得到32位数据,此过程需要考虑大小端模式,此处不做讨论。2、在某M0+平台,也用类似方法分包数组此时由于平台不一样,存在字节对齐的问题,字节不对齐访问,就会出现错误,如下:此处的buffer、circle_1pro都为uint8_t类型数组,数组在用强制转换时,均存在非法访问的错误,比如p...原创 2021-02-23 17:40:55 · 1664 阅读 · 0 评论 -
74HC595驱动8*8点阵屏
1原创 2020-05-19 10:00:03 · 11508 阅读 · 0 评论 -
Keil存储区的调试记录
1,const修饰的变量存储在RO-data区,初始化的全局变量在RW-data区;KEIL版本:5.27;平台:STM322,在main.c文件中定义如下如上,arry[100],temp[100],string[]为常量,在RO-data区;temp1为初始化的全局变量在RW-data区3,只是在main.c中定义了以上变量,不做任何使用,编译不会分配任何空间4,若在main.c中调用任何变量则该文件中的同类型的变量都会被编译并分配空间(即调用一个co...原创 2020-05-11 13:24:44 · 1142 阅读 · 0 评论 -
STM32串口空闲中断
以stm32f030x8为例1、空闲中断是接收数据后出现一个byte的高电平(空闲)状态,就会触发空闲中断.并不是空闲就会一直中断,准确的说应该是上升沿(停止位)后一个byte,如果一直是低电平是不会触发空闲中断的(会触发break中断)。2、寄存器描述...原创 2020-05-11 11:03:27 · 2109 阅读 · 0 评论 -
STM32公用中断源时的中断分配
以STM32l0xx为例多外部中断共用中断源时,要通过判断中断请求状态来分配中断stm32l0xx的寄存器如下单个中断时处理如下多个中断时处理如下通过__HAL_GPIO_EXTI_GET_IT()函数来分辨中断请求,并请中断和回调函数,无需使用系统的中断函数HAL_GPIO_EXTI_IRQHandler();stm32f1系列如下使用通过状态查询来响应中断...原创 2020-05-11 11:15:17 · 736 阅读 · 0 评论