记录2019年中遇到的问题和解决的方法

1.

问题:由于公司使用的串口屏(就是UI是已经做好的,通过串口协议显示特定内容),在MCU发送结构体数据的时候总是出现问题,字节数目不对,虽然知道怎么计算结构体的大小,但是以前不知道有什么用。现在发现终于字节对齐的作用了。

解决方法:

1 #pragma pack(1)               //一个字节对齐
2 struct D{
3     char  b;
4     short a;
5     char  c;
6 };
7 #pragma pack()                //取消字节对齐

2.

问题:由于是NXP公司的芯片(逻辑1为5v)和ST公司的芯片(逻辑1为3.3V)进行串口通讯,需要转换电平,串口设置的波特率在demo板上是可以使用的,但是个你信程序后不知道为什么不能使用了,电路如下所示

解决方法:更换波特率的计算方式。

3 .

stm32 debug时一直卡死在systeminit中,因为没有勾选microlib

 

 

3.千万别在函数里调用参数指针的某个成员的地址,谁用谁傻逼

typedef strcut
{
    uint8_t num;
    uint16_t cnt;
}type_t;

void test(type_t *para)
{
    uint8_t temp = 0;
    memcpy(&temp, &para->num,sizeof(uint8_t ));
}

 

 

posted @ 2019-05-22 16:43  纯洁de小学生  阅读(235)  评论(0编辑  收藏  举报