历史上的今天

今天是:2024年11月03日(星期日)

2021年11月03日 | STM32的DMA串口直通

发布者:行者无疆1978 来源: eefocus关键字:STM32  DMA 手机看文章 扫描二维码
随时随地手机看文章

搞这个,起因呢,公司产品里ZigBee模块固件版本不对,一大批产品需要二次升级。

需要升级的ZigBee模块是直接与stm32相连的,没有引出升级口,所以得搞个串口直通程序,通过232转MCU再转ZigBee,来进行升级。


一开始直接中断互通,结果呢,通倒是可以通,一升级固件就不行了,大概是因为数据量较大吧。


所以用了DMA,之前也没用过DMA,就慢慢学慢慢模仿着改呗。


这里要涉及到一个点,DMA的外设到外设,经常写的是,DMA只有外设到内存、内存到外设、内存到内存三种模式。


实际上,DMA是可以外设直接到外设的,而且用法非常非常简单,直接设置成外设到内存或内存到外设模式,然后把内存直接改成外设的地址,就可以了。


下面是我的程序,单片机是STM32F407,usart3和usart6 互通。


https://download.csdn.net/download/qq_36192233/11983754


说是互通,其实只有一路是DMA外设到外设。


一方面,只有下载一向有大量数据;一方面,usart3返回usart6,DMA外设到外设行不通。


这一点卡了我很久,一路我没多久就调好了,但返回的那一路我懵了几天。


我就搞不懂,凭啥数据进的来回不去,明明是几乎一模一样的配置。


我以为是配置问题,各种在网上找DMA配置的程序,然后对比参照着改配置,无果。


最后才发现,这一路就是通不了的。

在这里插入图片描述

注意图片下那一行,简单地说,所有的用DMA1的外设,都搞不通,人家DMA1外设端口压根不在总线矩阵


所以,用外设到外设之前,必须得先考虑一下这一点,不行的话,还是老老实实配两次DMA加好中断吧。


特别是stm32F4系列,据说f1系列都是可以的

关键字:STM32  DMA 引用地址:STM32的DMA串口直通

上一篇:stm32实用篇6:HAL库 DS18B20 驱动
下一篇:STM32直接存储器访问DMA

推荐阅读

        集微网消息(文/Lee)环旭电子于2018年10月30日以电话会议的形式于16:30-17:30举行了投资者交流活动。来自中信证券、华泰证券、野村证券等86家投资机构的投资者向环旭电子咨询问题,由总经理魏镇炎以及其他环旭电子工作人员进行了回复。        关于贸易战方面,环旭电子表示,目前来看贸易摩擦对公司的影响并不是太大,公司直接...
10月30日,2019国际服务机器人及特种机器人峰会在北京开幕,峰会上,从中国机械工业联合会执行副会长、中国机器人产业联盟执行理事长宋晓刚处获悉,中国正在研究制定面向2035年的机器人产业发展规划,近期,在工信部支持下,相关部门已在西南、东北、珠三角、长三角进行了将近两个月的密集调研,这一机器人发展规划的一个最重要的内容就是总结“十三五”...
近日,北京君正接受机构调研时表示,目前北京矽成的在售产品中,DDR3贡献业绩最大,其他有DDR、DDR2、DDR4等,DDR4的产品在不断研发和导入。北京矽成专注于汽车和工业市场,围绕汽车市场不断丰富产品线,有很大的成长空间。消费市场目前也有所布局,但是不是重点。未来公司也会借助北京矽成的现有优势,逐步展开消费市场的拓展,但不会用北京矽成的现有平...
近日,吉利正式发布了“2025战略”。在发布会上,吉利不仅推出了“九大龙湾行动”,力求实现在2025年智能汽车市场占有率全国第一,投入1500亿元进行自动驾驶技术全栈自研并达到L4级别,还计划在未来5年推出25款智能汽车,助力2025年总销量达到365万台这一宏大目标。吉利的“2025战略”比起上半年理想发布的“2025战略”,无疑更具有侵略性,在理想只大概地...

史海拾趣

问答坊 | AI 解惑

自制USBISP下载线

E.1 问题的提出 笔者在多年的AVR教学和开发应用实践过程中,一直使用本书中推荐(见第4章的第3节)的兼容STK200/STK300的ISP下载电缆。该下载电缆支持所有使用ISP技术的AVR芯片,同时也支持ATMEL公司51系列兼容芯片AT89S51、AT89S52、AT89S53、89S ...…

查看全部问答∨

跳槽时绝对不能用的理由

许多跳槽者参加应聘面试时,都会被招聘者问及离开原来职位的原因。若是由于上班路途太远、专业不对口、随迁搬家等人人都可以理解的因素,说起来无顾忌,如果是以下四种因素,就要慎之又慎了,弄不好,就会失去了应聘机会。   1、收入低没劲干 ...…

查看全部问答∨

[分享]运放的失调电流与失调电压

运放的失调电流与失调电压会对运放的零点影响,国庆看了几天的资料...我会整理出来,放在这里给大家看. 先来介绍下失调电流与电压 如果运放两个输入端上的电压均为0V,则输出端电压也应该等于0V。但事实上,输出端总有一些电压,该电压称为失调电压 ...…

查看全部问答∨

关于MLC的4bit ECC/EDC算法,能否进来指点下

由于硬件不支持MLC的4bit ECC/EDC 所以需要软件来实现 兄弟们觉得这个可行性如何? 软件实现的话,性能要打多大的折扣? 关于MLC用到的4bit ECC/EDC 的算法,兄弟们能给个资料或者什么的吗? 贴个链接也行   感谢…

查看全部问答∨

为什么不能访问全局变量

evc中,我在对话框中定义了全局变量HANDLE hComm;但编译是出现如下错误 MSR.cpp MSRDlg.cpp Generating Code... Linking... MSRDlg.obj : error LNK2005: "void * hComm" (?hComm@@3PAXA) already defined in MSR.obj ARMV4IDbg/MSR.exe ...…

查看全部问答∨

有一点困惑 希望得到解答(很焦急)

   我是大四的学生 马上就要毕业了   电子信息工程的   我现在在学习51单片机 因为我觉得很好上手      但是我不想一直都做单片机(觉得很没前途)  以后想工作了再往嵌入式方面转&nb ...…

查看全部问答∨

开发环境兼容问题

问高手一个问题:手上有个项目,别人想跟我合作,开发交通管理用的移动终端,移动终端定期与同步服务器同步数据,下面这种环境配置可以吗?移动终端:操作系统用windows ce(4.2?5.0?那个版本可以呢?要能支持中文),应用系统开发工具用vs.net( ...…

查看全部问答∨

2812的存储空间分配

2812的存储空间分配 : 2812 的片内存储器共128K  分高64K 和底64K   分别映射到24X和240X的程序空间和数据空间  但2812还有128K 的FLASH 和2812 的片内存储器共128K这句话矛盾了  请高手 ...…

查看全部问答∨

现在的DSP能不能实现绝对意义上的软件无线电(即SDR)

不一定是实现高频的数字通信,就是一般的中波/短波/调频接收机, 我说的绝对意义就是:天线->A/D->DSP->功放 或许现在的软件无线电实现中波接收机瓶颈并不在DSP,而是在A/D的转换速度…

查看全部问答∨

【问TI】DM365绑定eth0问题

各位专家好,我在用dm365做项目,内核是linux-2.6.18的,需要用到bonding驱动,做有线和wifi双网卡绑定,bonding和ifenslave都是内核自带的,当我用ifenslave绑定eth0时报错如下: # ifconfig bond0 192.168.1.128 up# ifenslave bond0 eth0 emac ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved