-
APM32F107串口中断接收丢包
APM32F107在串口同时发送和接收的情况下串口接收丢字节,具体表现为偶发进入串口接收中断了,但是USART_FLAG_RXBNE标志位没有触发,导致读不到这个字节进而丢字节,通过计数发现进入中断的次数与实际应该收到的字节数一致。1、发送是阻塞式发送的,没有用发送中断,排除进入的是发送中断的可能。2、出现这种情况时打断点看了,其他的溢出及错误标志位并没有置位,也打印检查了,没有置位。3、排查代码了没有在其他地方主动调用USART_RxDatad读取。4、串口中断优先级已调至最高。5、只接收不发送不会丢字节,挂一晚上都不丢,只要一发送接收就会丢。发送代码:voidUart1_Send(charbuf){uint16_tdata_9th=buf;dog_feed_count_clean();//循环清除喂狗变量,超过DOG_PROTECT_TIME_100MS不清除则认为主循环异常,并停止喂狗。if(g_rParameters.sPort[0].ucParity==UART_CHK_MARK){data_9th|=(1
2025-04-24 63 -
HC32F460时钟模式错误出现串口乱码
使用了HC32F460PETB单片机,在批量生产中个别产品出现串口乱码情况,经排查是硬件电路设计为外部8M有源晶振,代码中en_clk_xtal_mode配置的是CLKXtalModeOsc=1u,后将代码配置修改为CLKXtalModeExtclk=1u后串口打印正常,有大神能帮忙解释下原理吗?为什么这个地方配置错误,产品会出现问题,之前小批量生产的时候没有出现乱码现象。
2024-04-28 21 -
GD32F303 使用KEIL仿真,JLINK连不上什么原因?
GD32F303使用KEIL仿真,JLINK连不上什么原因?需要怎么设置?
2024-01-24 65 -
GD32E30x uart0 波特率1200时,出现乱码。
udiv=(uclk+baudval/2U)/baudval;intdiv=udiv&0x0000fff0U;fradiv=udiv&0x0000000fU;}USART_BAUD(usart_periph)=((USART_BAUD_FRADIV|USART_BAUD_INTDIV)&(intdiv|fradiv));跟中代码发现走的上面的过程uclk=180000000,intdiv=?fradiv=?1.intdiv=456,fradiv=82.intdiv=65440,fradiv=8
2023-08-19 52 -
MM32F0144用MM32-Link为什么一直无法识别
RTMM32-Link是正常连接的SWDevice一直提示:NOCortex-MSWDeviceFound
2022-12-16 30 -
N32G45X芯片的SysTick是固定900吗 ?
N32G45X芯片的SysTick是固定9000吗?系统嘀嗒校准值固定为9000,当系统嘀嗒时钟设定为9MHz(HCLK/8的最大值),产生1ms时间基准。就是说系统时钟频率一定的情况下,它产生的时间基准是固定的吗?
2022-12-12 13 -
华大hc32f460 timer0怎么配置可以使用串口超时中断
使用串口超时中断时,对应的timer0计数时钟怎么选择??
2022-10-06 22 -
GD32F450 ADC稳定度问题
本帖最后由liufreedom2008于2022-8-2409:31编辑请问GD32F450ADC在不采样模式下会跳动几个LSB.输入信号:
2022-08-23 19 -
程序跑飞,不能调试是什么原因?
MCU的系统时钟从默认的8MHz改为48MHz后,程序跑飞,不能调试是什么原因?
2022-05-31 23 -
PIC有类似于stm32的滴答时钟配置吗?
如题所述
2021-11-11 13