0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何利用串口发送一个“Hello World”

撞上电子 2023-07-31 17:50 次阅读

第一节 硬件解读

大家的开发板到手之后,可以看见,只有一个USB口,那个口就是串口,开发板A和开发板B公用一个串口,通过按键切换。

我们以开发板A为例,原理图如下:

b82d49d4-2f87-11ee-bbcf-dac502259ad0.png

开发板芯片上面的PA2_TX和PA3_RX分别是USART_Tx和USART_Rx,注意:不是PA9和PA10,PA2_TX和PA3_RX连接到开发板DAPLINK电路部分的CH443K,如下图:

b85a4204-2f87-11ee-bbcf-dac502259ad0.png 

通过查看CH443K芯片的引脚可以得到,SEL引脚的高低电平,可以让CH443K芯片在1脚4脚连接或者3脚4脚连接中选择。CH443K芯片引脚说明如下:

b879040a-2f87-11ee-bbcf-dac502259ad0.png

当CH443K芯片的SEL为高电平时,其芯片COM和CH1引脚导通。PA9/Tx和PA10/Rx和A板的串口导通。如下图:

b85a4204-2f87-11ee-bbcf-dac502259ad0.png

那么,PA9/Tx和PA10/Rx连接在哪?当然是DAPLINK板的MCU上面啦,如下图:

b8c65494-2f87-11ee-bbcf-dac502259ad0.png

连接到DAPLINK板的MCU之后,这个MCU通过内部程序(不需要我们写,比赛的时候已经写好了)转到唯一的USB口上,也就是我们的串口上。

不知道大家有没有明白,如果还是不明白,请大家通过微信公众号联系我们管理员,向他反馈,以便我们更新教程的时候,再写的仔细一些。


第二节CuebMX的配置

第一步:选择PA2的引脚的USART2_Tx功能,如下图:

b8f7211e-2f87-11ee-bbcf-dac502259ad0.png

第二步:选择PA3引脚的USART_RX功能,如下图:

b914c782-2f87-11ee-bbcf-dac502259ad0.png

第三步:发现USART相关的引脚是黄色的,不是绿色的,这是为什么呢?注意:黄色是异常提醒,绿色是正常的。

b94adfc0-2f87-11ee-bbcf-dac502259ad0.png

第四步:如下图配置USART2。注意:4代表的是异步全双工通信;5代表波特率,这里波特率是115200,比赛基本上都是9600。

b9668860-2f87-11ee-bbcf-dac502259ad0.png

第五步:生成工程。

第三节MDK代码

第一步:如下图,在MDK中添加如下代码:

b9835756-2f87-11ee-bbcf-dac502259ad0.png

第二步:配置好下载器之后,编译代码,下载即可。

第三步:打开串口调试助手。如下图:

b9a8de04-2f87-11ee-bbcf-dac502259ad0.png

第四章 实验现象

注意:

1,下载程序的时候,请选择A开发板。

2,请选择正确的串口号,不一定是例程中的COM3。

3,请选择波特率为115200。

4,串口接收区请选择字符接收。

现象:串口不断发送Hello World。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    455

    文章

    50774

    浏览量

    423433
  • 串口
    +关注

    关注

    14

    文章

    1551

    浏览量

    76485
  • 开发板
    +关注

    关注

    25

    文章

    5041

    浏览量

    97422
收藏 人收藏

    评论

    相关推荐

    如何在i2c中将hello world发送到LCD屏幕?

    有谁知道如何在 i2c 中告诉这个以将 hello world 发送到 LCD 屏幕?当我查找我的 4BIT 引脚时,我可以很好地做到这点,但是当使用 i2c 时,我似乎在任何地方都
    发表于 07-11 06:10

    esp32运行make flash烧写hello world遇到的疑问求解

    串口驱动安装正常,连接正常 在demo目录里hello world程序下,运行make all,编译正常, 然后运行 make flash 出现
    发表于 06-26 06:25

    使用make flash命令烧录Hello_world程式失败了,为什么?

    请问我使用 make flash 命令要烧录 Hello_world 程式失败了 看起来像是COM3 Port有连上,但找不到开发板上芯片,无法写入 状况如下e3.JPG (119.44 KiB
    发表于 06-26 06:10

    ESP8266笔记-03.ESP8266 RTOS的Hello world

    下原链接# Esp8266学习之旅① 搭建开发环境,开始“hellow world串口打印。 SPIMODE 的选择 好多人问我这个
    发表于 05-30 11:51

    鸿蒙OpenHarmony【轻量系统 编写“Hello World”程序】 (基于Hi3861开发板)

    下方将通过修改源码的方式展示如何编写简单程序,输出“Hello world”。请在下载的源码目录中进行下述操作。
    的头像 发表于 05-16 18:15 989次阅读
    鸿蒙OpenHarmony【轻量系统 编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3861开发板)

    鸿蒙OpenHarmony【小型系统 编写“Hello World”程序】 (基于Hi3516开发板)

    展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。
    的头像 发表于 05-10 16:26 706次阅读
    鸿蒙OpenHarmony【小型系统 编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3516开发板)

    鸿蒙OpenHarmony【标准系统 编写“Hello World”程序】(基于RK3568开发板)

    下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。
    的头像 发表于 05-09 17:58 879次阅读
    鸿蒙OpenHarmony【标准系统 编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】(基于RK3568开发板)

    鸿蒙OpenHarmony【标准系统编写“Hello World”程序】 (基于RK3568开发板)

    编写“Hello World”程序 下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello W
    的头像 发表于 04-24 17:32 794次阅读
    鸿蒙OpenHarmony【标准系统编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于RK3568开发板)

    鸿蒙OpenHarmony【小型系统编写“Hello World”程序】 (基于Hi3516开发板)

    下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。
    的头像 发表于 04-22 21:55 358次阅读
    鸿蒙OpenHarmony【小型系统编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3516开发板)

    鸿蒙OpenHarmony【轻量系统编写“Hello World”程序】 (基于Hi3861开发板)

    下方将通过修改源码的方式展示如何编写简单程序,输出“Hello world”。请在下载的源码目录中进行下述操作。
    的头像 发表于 04-21 21:44 329次阅读
    鸿蒙OpenHarmony【轻量系统编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3861开发板)

    STM32F401使用USART6时不正常,发送HELLO WORLD为乱码怎么解决?

    各位大神: 我用STM32F401 进行串口通信,UASRT1跟UASRT2使用正常,使用USART6时不正常,发送HELLO WORLD为乱码怎么破? 代码如下: main
    发表于 03-22 06:18

    用于EK-RA8D1 MIPI LCD显示器的GUIX Hello World

    电子发烧友网站提供《用于EK-RA8D1 MIPI LCD显示器的GUIX Hello World.pdf》资料免费下载
    发表于 02-20 09:48 0次下载
    用于EK-RA8D1 MIPI LCD显示器的GUIX <b class='flag-5'>Hello</b> <b class='flag-5'>World</b>

    修改蜂鸟E203 v2内核源码后,hello world报错是哪里出了问题?

    与coremark例程无法通过,但dhrystone可以正常跑通并通过串口打印出跑分,在下面附上出错信息,请各位指点下哪里出了问题。 hello world错误信息,
    发表于 01-10 06:12

    dma和串口直接发送的区别

    ,我们先来介绍下DMA和串口直接发送的原理和工作方式。 DMA是种高速数据传输技术,它允许外设直接与内存进行数据交换,而不需要CPU的介入。有了DMA技术,CPU在进行数据传输时可
    的头像 发表于 01-07 17:43 2893次阅读

    USB虚拟串口串口1可以同时发送

    可以同时发送,USB虚拟串口和物理串口1都可以作为数据传输的通道,可以同时操作和发送数据。 USB虚拟串口
    的头像 发表于 01-04 11:26 1553次阅读