前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >嵌入式-串口通信

嵌入式-串口通信

原创
作者头像
会洗碗的CV工程师
发布2024-02-11 16:52:47
2980
发布2024-02-11 16:52:47
举报
文章被收录于专栏:LongJava学习资料LongJava学习资料

1. 实验目的

1.波特率设置为38400。

2.串口显示信息:”这是学号xx的串口中断接收回显实验“。

2. 实验原理

USART 只需两根信号线即可完成双向通信,对硬件要求低,使得很多模块都预留USART 接口来实现与其他模块或者控制器进行数据传输,比如 GSM 模块,WIFI 模块、蓝牙模块等等。在硬件设计时,注意还需要一根“共地线”。

我们经常使用 USART 来实现控制器与电脑之间的数据传输。这使得我们调试程序非常方便,比如我们可以把一些变量的值、函数的返回值、寄存器标志位等等通过 USART 发送到串口调试助手,这样我们可以非常清楚程序的运行状态,当我们正式发布程序时再把这些调试信息去除即可。

我们不仅仅可以将数据发送到串口调试助手,我们还可以在串口调试助手发送数据给控制器,控制器程序根据接收到的数据进行下一步工作。

首先,我们来编写一个程序实现开发板与电脑通信,在开发板上电时通过 USART 发送一串字符串给电脑,然后开发板进入中断接收等待状态,如果电脑有发送数据过来,开发板就会产生中断,我们在中断服务函数接收数据,并马上把数据返回发送给电脑。

串口通信(Serial Communications)是一种按位(bit)发送和接收字节的通信方式。尽管它比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。因此,它能够实现远距离通信,如长度可达1200米,而并行通信如IEEE488定义的标准,设备线总长不得超过20米,且任意两个设备间的长度不得超过2米。

串口通信的数据是逐位传输的,发送方发送的每一位都具有固定的时间间隔,这就要求接收方也要按照发送方同样的时间间隔来接收每一位。不仅如此,接收方还必须能够确定一个信息组的开始和结束。串口通信的传输线主要由地线、发送和接收线组成,同时也可以选择性地包括用于握手的线路,但这些线路并不是必须的。

串口按电气标准及协议来划分,包括RS-232-C、RS-422、RS485等。大多数计算机(不包括笔记本电脑)包含两个基于RS-232的串口,同时它也是仪器仪表设备通用的通信协议,很多GPIB兼容的设备也带有RS-232口。

总的来说,串口通信是一种简单但有效的通信方式,尤其适用于需要长距离传输或需要同时使用多个设备的情况。

3. 主要仪器设备

GEC-STM32F429开发板和keil 5软件

4. 实验内容及步骤

1,首先用keil软件打开实验项目,确保可编译之后。

2,开发板使用usb连接线连接上电脑

3,然后使用点击load加载到开发板上。

4,修改代码main函数

5. 实验结果与分析

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com