历史上的今天
返回首页

历史上的今天

今天是:2025年01月17日(星期五)

正在发生

2021年01月17日 | STM32F0xx_USART收发配置详细过程

2021-01-17 来源:eefocus

前言

串口对于处理器来说算是一种标配,也是在软件开发中必不可少的,那就是使用串口来调试信息(打印出相应的信息)。STM32F0系列的芯片,串口根据型号不同,数量也不同,从1个到8个不等。


今天主要总结串口简单且常用的功能,发送字符和中断接收字符。今天提供的串口发送功能将在后面的各个模块总结中都需要使用到,主要用于验证和测试各项功能的正确性。

 

下载

ST标准外设库和参考手册、数据手册等都可以在ST官网下载,你也可以到我的360云盘下载。关于F0系列芯片的参考手册有多个版本(针对F0不同芯片),但有一个通用版本,就是“STM32F0x128参考手册V8(英文)2015-07”建议参考该手册,以后如果你换用一种型号芯片也方便了解。

 

今天的软件工程下载地址(360云盘):

https://yunpan.cn/cS5TeTVUWdc7V  访问密码 9b8c

 

STM32F0xx的资料可以在我360云盘下载:

https://yunpan.cn/cS2PVuHn6X2Bj  访问密码 8c37

 

准备工作

①新建源程序文件

一个工程项目在增加模块功能的时候,一般都需要新增加模块源程序的文件。今天提供的工程由于增加USART模块,因此针对昨天(上一篇文章)的软件工程需要增加模块USART的文件(usart.c 和 usart.h)。


新建了源程序文件,还要添加到工程中进行编译才行。还有需要添加我们使用到的标准外设库文件到工程,我已经将文件新建,并添加到软件工程中,如下图:

注意:

文件所在位置最好对应目录,方便管理。比如:usart.c放在bsp文件下,添加在工程中Bsp组下面。

 

源代码详情

①RCC时钟

该函数位于bsp.c文件下面;

我个人习惯第一步配置时钟,ST官方提供的例程也是把配置时钟放在前面。关于RCC时钟的配置比较重要,有好几次我就是由于没有配置相应RCC时钟,让我找了很久的问题。

 

②USART引脚配置

该函数位于usart.c文件下面;

这里的配置就是对串口收发引脚进行配置(具体参数说明请看上一篇文章)。

注意:

上面红色框里面的配置是重点,必须对应配置才行。这里第三个参数“GPIO_AF_1”需要和你使用的外设对应。

 

③USART配置

该函数位于usart.c文件下面;

这里是串口相关参数进行配置,详情请看中文注释。具体每一个参数的意思,可以参看昨天方式,go to definition...

注意:

上面红色框处,如果要使用中断(我们工程是接收),必须对应配置才行。

 

④NVIC配置

该函数位于bsp.c文件下面;

要使用中断,必须配置NVIC,这点也不能忘记。

 

⑤串口中断接收函数

该函数位于stm32f0xx_it.c文件下面;

中断接收到一个字符,就发送出去(可以通过电脑串口发送字符,STM32F0接收到该字符又发送给电脑)。

 

说明

STM32F0的芯片软件兼容性很好,可以适用于F0其他很多型号的芯片(具体请看手册、或者亲自测试)。


以上实例总结仅供参考,若有不对之处,敬请谅解。


推荐阅读

史海拾趣

Alpha Wire公司的发展小趣事

Alpha Wire公司是一家在电子行业中知名的制造商,专注于生产高性能电线、电缆和线束。虽然我无法提供准确的发展故事,但我可以向你介绍一些关于Alpha Wire公司的背景和其在行业中的重要性。

  1. 公司成立:Alpha Wire公司成立于1922年,总部位于美国新泽西州。创始人是一位名叫韦尔纳·布雷德的工程师,他创立了Alpha Wire公司,旨在为不同领域的电子设备提供高质量的电线和电缆。

  2. 技术创新:Alpha Wire公司在其发展历程中一直致力于技术创新和产品质量的提升。公司不断投资于研发,并采用最新的材料和生产工艺,以确保其产品在性能和可靠性方面处于行业领先地位。

  3. 产品线扩展:随着时间的推移,Alpha Wire公司不断扩展其产品线,以满足不断变化的市场需求。除了标准的电线和电缆产品外,公司还开发了各种特种电线和线束,如耐高温、耐化学腐蚀、防火等特性的产品,以满足不同行业和应用的需求。

  4. 全球市场拓展:Alpha Wire公司在其发展过程中不断拓展其市场份额,通过建立全球分销网络和合作伙伴关系,将其产品销往世界各地。公司不仅在北美市场占据重要地位,还在欧洲、亚洲和其他地区建立了业务和生产基地,以更好地服务全球客户。

  5. 质量和可靠性:作为一家具有悠久历史的公司,Alpha Wire始终将质量和可靠性视为其产品的核心竞争力。公司严格遵循国际标准和质量管理体系,对原材料进行严格筛选和检验,并采用先进的生产工艺和严格的质量控制程序,以确保产品的稳定性和一致性。

以上是关于Alpha Wire公司的一些基本信息,虽然我无法提供具体的发展故事,但希望这些信息能够帮助你了解该公司在电子行业中的重要性和影响力。

Hei Inc Optoelectronic Division公司的发展小趣事
无触点控制电路减少了机械触点的使用,避免了因触点磨损、氧化或接触不良导致的故障,从而提高了设备的整体可靠性和稳定性。
Hitano Enterprise Corp公司的发展小趣事
根据实际应用环境的不同,需要考虑温度、湿度、振动等因素对控制电路的影响,并采取相应的防护措施。
灿科盟(Ckmtw)公司的发展小趣事

面对国内外市场变化及成本增长的压力,灿科盟在2012年决定在江西省九江市设立新的生产基地。这一基地主要负责产品的生产组装,有效降低了生产成本,提高了交货速度。同时,公司也加强了与当地供应商的合作,确保原材料的稳定供应。

Global Components & Controls公司的发展小趣事
在保证性能和质量的前提下,合理控制元件成本,以提高产品的市场竞争力。
Aerotronics Marketing Inc公司的发展小趣事

Aerotronics Marketing Inc公司在市场定位上独具慧眼,准确抓住了电子行业中无人机市场的增长趋势。公司制定了一系列精准的营销策略,包括线上线下推广、行业展会展示、合作伙伴计划等,有效提升了品牌知名度和市场占有率。同时,公司还注重客户关系管理,通过提供优质的售后服务和技术支持,赢得了客户的信任和忠诚。

问答坊 | AI 解惑

基于TC1的16位PWM输出程序

/******************************************** * TC1产生16位双路PWM * * 实验内容:由TC1产生两路独立的16位PWM输出 * * 实验环境:本站M16学习板 * * 日 期:2007年08月16日 * * 作 者 ...…

查看全部问答>

单身男女找缘份

看看你的缘份是谁,预定你后面的楼位,不要定从复了啊。 我先来定108号了。 不过要定位子先要发点东西 来啊。 …

查看全部问答>

USB转并口CH341的WINDOWS驱动程序

USB转并口CH341的WINDOWS驱动程序…

查看全部问答>

桥式整流器

如何选桥式整流器   大于1A   600Vrrm的贴片封装…

查看全部问答>

【人生感悟转】做FPGA的出路在哪里?

已经而立之年,对30以后该以怎样的一个状态生活,也比以前思考的多些。 很多人都说,技术员(工程师)30以后要正确向领导(技术型领导)或者创业方面转,而不能继续去做技术。因为论精力,比不上新毕业的学生、论时间我们也没有他们多。面对技术更 ...…

查看全部问答>

创意改变生活,不知大家是否有同感?

这两天看到咱论坛zcgzanne 的帖子:https://bbs.eeworld.com.cn/thread-94882-1-3.html 感觉一个小小的想法,就可以将身边行将废弃的东西,发挥到自己应该发挥的地方; 再看西门的帖子:https://bbs.eeworld.com.cn/thread-95011-1-1.html 稍稍设 ...…

查看全部问答>

请问一下eboot与os有直接的关系么

比如用64/128M的flash是不是要用其指定的eboot,如果不指定的话,os是否会跑飞?…

查看全部问答>

关于虚拟磁盘

怎么隐射到另1个文件,不是ISO的 谢谢答复 熟悉的请发消息给我,有个项目用,费用有1点…

查看全部问答>

夏老师书中的一个语句疑惑

always@(posedge reset)   @(posedge fetch) ctl_cycle; 这个该怎么理解。Verilog经典教程里面。书第86页,PDF91页…

查看全部问答>