-
盛思瑞CO2传感器读数据错误,百思不解。
这是CRC函数:uint8_tsensirion_i2c_generate_crc(constuint8_t*in,uint16_tcount){uint16_tcurrent_byte;uint8_tcrc=CRC8_INIT;uint8_tcrc_bit;/*calculates8-Bitchecksumwithgivenpolynomial*/for(current_byte=0;current_byte<count;++current_byte){crc^=(in[current_byte]);for(crc_bit=8;crc_bit>0;--crc_bit){if(crc&0x80)crc=(crc1=0x14?Orcheckdatasheetforcorrectwriteaddress)iic_Wait_Ack();iic_SendData(0x36);//Commandbyte3iic_Wait_Ack();iic_SendData(0x15);//Argumentbyte1iic_Wait_Ack();iic_SendData(0x00);//Argumentbyte2iic_Wait_Ack();iic_SendData(0x11);//Argumentbyte3iic_Wait_Ack();iic_SendData(0xf3);//Argumentbyte3iic_Wait_Ack();iic_Stop();delay_100us(100);出现的错误现象是:iic_SendData(0xf3);就会通讯失败,注意0xF3是CRC计算值,但是如果任意发一个CRC字节,不是计算的0xf3结果,任意一个。比如:0xfd,或者0x31,这时虽然下面的读数据失败,但是通讯并没有死亡。再后面的读productid指令还能读到结果。但是如果发的是函数计算的0xf3作为CRC字节发送,通讯就死亡。后面读productid也失败了。为什么发的是正确的CRC反而导致通讯死亡呢?
2025-09-17 7 -
使用jlink仿真报错
请教下各位老师、大佬这种问题一般会是啥原因导致的,或是提供下定位问题的思路?拜谢!!!开发环境:MDKV5.36仿真器:jlink芯片:AT32F403ARCT7问题:debug仿真时经常出现程序运行中断问题,且每次程序停止时显示在芯片驱动库的“usart_reset"函数。jlink报错信息:*JLinkInfo:T-bitofXPSRis0butshouldbe1.Changedto1.***JLinkError:CPUisnothalted
2025-06-25 7 -
关于N32G031K8Q7-1编带款烧录不成功问题
N32G031K8Q7-1编带款烧录不成功问题。板子的芯片能连接成功,能整个芯片擦除,就是不能烧录。提示couldnotstartCPUcore
2025-06-23 4 -
LKS32MC034DOF6Q8在KEIL5编译烧录,JLINK无法烧录
本帖最后由gvkjml于2025-6-1913:11编辑使用的是凌欧官方开发版,程序是官方开源程序。
2025-06-19 15

问答