stm32 怎么判断串口dma中有没有数据
答案:2 悬赏:70
解决时间 2021-02-26 18:39
- 提问者网友:刪除丶後
- 2021-02-26 09:52
stm32 怎么判断串口dma中有没有数据
最佳答案
- 二级知识专家网友:短发女王川岛琦
- 2021-02-26 10:08
DMA接收数据只采用查询用此函数还可以。 但同时开了DMA中断的~~~~~~~ 不管什么时候,都是接收完整个数据包之后才对该包进行处理,是吧? 函数DMA_GetCurrDataCounte()只得到当前收到了多少个数据,而不知道接收数据完成没有的 STM32要是有串口接收超时功能就好了。 问:如何利用STM32的资源自己做个类似超时的功能?加上DMA作为类似的接收FIFO.
全部回答
- 1楼网友:一身浪痞味
- 2021-02-26 10:46
亲,您用dma都没有看说明的么?dma传输数据的时候会占用系统总线,这时候cpu除了能够做运算之外什么事情都干不了,只有等dma完成数据传输之后,才会把系统数据总线交给cpu,所以你接收数据的时候程序看起来好像就是停止运行的,当你接收完成之后,dma释放了数据总线,这时候cpu才又开始执行程序具体内容建议你还是看一下datasheet吧
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯