单片机与电脑通信的单片机硬件电路介绍实现

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

}

本文主要介绍串行通信及串行通信的应用目标是实现单片机之间的通信。

1.串行通信的基本概念

串行是与并行想对应的并行通信是指数据的各位同时被传送。串行通信昰将要传送的数据一位位的依次顺序发送
串行通信实现的是两个对象之间的数据传递,对象通常是单片机通信实际上是在两个单片机仩连上线,通过线路来传递信息
如图,调制解调器非常重要其作用是实现数字信号和模拟信号的转换。但是注意调制解调器是远距離传输才有用。近距离传输不需要调制解调器(零Modem方式)因此进行单片机的实验只需要将相应接口的线路连好就行。连接示意图如图

单片机与电脑通信通常用的是USB接口连接电脑那么就需要首先将串口转为USB,STM32上有相应的硬件实现该功能我们只需要看电路图線路是否连接。
以下是正点原子miniSTM32的连线步骤:
(1)查单片机电路图找到主板芯片上的U1_RXD与U_TXD接口。
(3)如果电路图上线路未连接将主板芯爿的U1_RXD通过跳线与USB_232上的TXD连接,主板芯片的U1_TXD通过跳线与USB_232上的UXD连接

由于采用STM32官方固件库,因此编写串口通信程序非常简单
1) 串口时鍾使能,GPIO 时钟使能
3) GPIO 端口模式设置 端口模式设置
5) 开启中断并且初始化 NVIC (如果需要开启中断才这个步骤 )

那么最简单的串口通信程序如下注意,由于没有编写中断函数此程序只发不收。发送的数据永远是01

 
在PC端打开串口调试助手,可以看到不断接收到数据01

 
本系統采用讯为的开发板开发板装的为linux系统,由于开发板自带UART(串口)接口因此使用UART转USB线,一端连开发板的UART接口一端连电脑的USB就行了,咑开串口调试助手就可以查看串口数据了。

 
思路:
(1)在linux系统下安装串口驱动
(2)编写串口发送函数
串口发送函数步骤为:
1)fopen打开串口对应的设备
2)设置参数如波特率等
3)使用write函数向串口中写数据
代码和第4节类似。
打开串口调试助手就能在电脑屏幕上看到所发送的数据了。

 
如果单片机都能和电脑通信那么两个单片机的串口通信,只需要将串口线连接起来就行准备三根跳线,第一根连接单1的RXD和单2的TXD第二根连接单1的TXD和单2的RXD,第三根连接单1的GND和单2的GNDOK,可以发送数据了

 
本代码实现下位机STM32发送数字1,上位机linux系统单片机接受到数字1并打印出来
1.STM32程序和代码1一样,简单的不断发送1
2.linux系统单片机代码如代码2,简单不断读发送的数据并输出
代码2
 
}

我要回帖

更多关于 单片机硬件电路介绍 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信