
1. 在使用STM32F103C8T6的时候,使用的是串口通讯,波特率9600,在读取数据的时候使用的是DMA数据读取加串口空闲中断的方式,使用MAX485接口的芯片,每隔200毫秒发送一次数据,在仿真测试的时候,如果发送一次数据后100毫秒返回一次数据,如果数据长度短了可以,但是如果数据长度长了,就会在DMA读取数据的时候,读取不完全,如果将返回间隔设置为20毫秒或50毫秒就没问题,这其实反应了一个问题,就是在回信息的时候,发送时间太长,可能与下次接收时间重合,因为485是半双工通讯,所以要考虑发送时间、接收时间、发送延时、接收延时,如果冲突了,就会导致接收数据异常。 2. 有没有一个完整的DMA配置的步骤,比如第一步怎么做,第二步怎么做? |
串口DMA + 空闲中断收发 ?
F103RCT6芯片对AFIO->MAPR寄存器写入时出错
使用STM32捕获PWM时同时捕获2个通道时会出现捕获的频率值不准确的问题
WS2812B怎么显示任意字符 / 图案?
STM32F103RCT6 定位孔 镂空,会影响使用吗?
HAL库1.8.4在做破坏性测试的时候出现g_state永远为busy的情况导致串口通信发送卡死
L9663驱动开发
用rt_thread 环境编写,DAP-LINK 下载烧录,每一次空芯片下载之后就无法二次下载。求解
stm32cubemx F103芯片tim3 encoder模式pc6和pc7引脚,自动生成代码缺少gpio映射。
stm32的同一个定时器,不同的通道,可以不同时的输出pwm波形吗
那是不是这样,每次接收中断来了,就把数据存起来,当产生空闲中断的时候,发送一个信号量通知任务处理接收的数据
我感觉LL 库和HAL 库好坑啊,我以前一直用的标准库,现在突然使用这两个了感觉好麻烦
嗯。我一般是这样做的。我也不习惯用HAL库,还是用标准库,如果实在没有,就自己改HAL库的方式。
现在公司用的HAL库,我也没办法,先这么用吧,能用了再说改的事儿
嗯,可以,我看还有一种韦东山老师讲的循环的方式,就是接收数据后,保存在一个数组里,解析一个字节指针后移一个,直到解析完,循环调用的方式