
1. 在使用STM32F103C8T6的时候,使用的是串口通讯,波特率9600,在读取数据的时候使用的是DMA数据读取加串口空闲中断的方式,使用MAX485接口的芯片,每隔200毫秒发送一次数据,在仿真测试的时候,如果发送一次数据后100毫秒返回一次数据,如果数据长度短了可以,但是如果数据长度长了,就会在DMA读取数据的时候,读取不完全,如果将返回间隔设置为20毫秒或50毫秒就没问题,这其实反应了一个问题,就是在回信息的时候,发送时间太长,可能与下次接收时间重合,因为485是半双工通讯,所以要考虑发送时间、接收时间、发送延时、接收延时,如果冲突了,就会导致接收数据异常。 2. 有没有一个完整的DMA配置的步骤,比如第一步怎么做,第二步怎么做? |
STM32F103长时间运行,串口发送失败
STM32G474 BOOST电路双环PID的用法
foc2.0函数SVPWM_3ShuntCalcDutyCycles看不明白
stm32f103c8t6:没有对flash进行任何操作,flash的内容发生变化了。具体是哪些原因?如何调试排查原因。
STM32F103C8T6 TIM1 CH2输入捕获触发DMA的问题
STM32会存在单个IO口坏掉的情况吗?
STM32F103RET6 FLASH擦除失败问题
6.28周六签到打卡
请问有stm32f103驱动无刷电机的学习资料吗,找了很久都没有找到
stm32编码器模式计数问题
那是不是这样,每次接收中断来了,就把数据存起来,当产生空闲中断的时候,发送一个信号量通知任务处理接收的数据
我感觉LL 库和HAL 库好坑啊,我以前一直用的标准库,现在突然使用这两个了感觉好麻烦
嗯。我一般是这样做的。我也不习惯用HAL库,还是用标准库,如果实在没有,就自己改HAL库的方式。
现在公司用的HAL库,我也没办法,先这么用吧,能用了再说改的事儿
嗯,可以,我看还有一种韦东山老师讲的循环的方式,就是接收数据后,保存在一个数组里,解析一个字节指针后移一个,直到解析完,循环调用的方式