
STM32G474, I2C设备地址,总出现多余地址0x20,是什么原因?
STM32G431CBU6 驱动STDRIVE101,自己配置的PWM互补输出,死区时间为500ns,为什么STDRIVE101的报警灯会亮,CP接10K接地了,scref接的+5V
关于STM32G474 双BANK的测试问题
STM32G473CBUx的模拟地
最近在做单极倍频SPWM
为什么STM32G431的串口用不了2.5M的波特率
上电连接USB显示DFU模式
STM32G491RE上电出现DFU模式
STM32G431的3.3V引脚对地电阻变小
STM32G473RC timer8的CCDS bit, Capture/Compare DMA selection.
第一、中断程序是用户写的,你不在中断服务程序里 长篇大作即可避免,只在中断服务程序里
设置特定标志,在主循环里基于标志位状态做相应处理。
当然,这个并非绝对的。要看具体需求,有时就是需要基于中断事件一气呵成地将事情处理完毕,
此时只能将代码尽量简练些。 还有就是,如果系统中断多,合理安排中断优先级也非常重要。
第二、避免,只能尽力避免。丢包可能软硬件方面的原因。接收方保证接收的优先级或及时性,比如调高接收中断的优先级,或采用DMA接收同时也保证相关DMA的优先级。硬件上尽量保证线路的稳定可靠。
第三个问题,UIART协议就是起始位加上一个字节数据,然后停止位。如果觉得该协议不满足需求,可以
看看别的协议,比方CAN,I2C,SPI等等。
应该可以吧。有通讯协议,发多长都不是问题。问题是一次发太多,受到干扰,就得重发。每次重发的太多,会稳定?
中断的处理,尽可能是建立标志,在外部执行处理。中断处理中执行的代码太多,很容易导致中断嵌套,影响主程序。