基于LPC1114查询方式的UART发送与接收

本文介绍了如何使用LPC1114单片机通过UART进行异步串行通信,重点是波特率设置和查询方式的数据发送与接收。通过配置波特率、线控制寄存器以及编写发送和接收函数,实现了单片机间的双向通信。在实际应用中,需要注意先发送数据才能成功接收。
摘要由CSDN通过智能技术生成

     串口是单片机与其他功能模块(如蓝牙)或者另一个单片机进行通信的模块,串行通信是指数据一位一位地按顺序传送,适用于远距离通信,通信线路简单,只需要一对数据线就可以实现双向通信,而串行通信又分为同步和异步,这里介绍通用异步收发器(UART)的数据接收与发送。

      使用UART时,通信双方只需配置相同的波特率,就能在同一时钟下使用RXD和TXD两根信号线(当然通信双方需要共地)就可以完成通信。一个收一个发,可以实现双向通信功能。电脑台式机DB9接口有9根线,9线的串口一般用来开发调制解调器控制器很方便,但是与电脑通信,2根就够了。但是需要RS232转换器(如MAX232)完成电平转换,因为一般单片机是TTL电平,而PC机COM口是EIA电平,两个电平不一样,无法通信,因此要进行电平转换,但对通信数据没有影响。

 下面分享使用LPC1114来完成UART发送与接收的代码(查询方式)

1、前面提到,串口通信时,需要通信双方配置同一波特率才能完成数据交互,因此对于UART初始化来说,最重要的工作就是设置其波特率。设置波特率按如下公式:

其中PCLK为UART分频后的时钟,例如对48M主时钟4分频后PCLK=12M;

U0DLM和U0DLL 分别为除数锁存器的高八位和第八位;

DIVADDVAL和MULVAL在小数分频寄存器的前八位配置;

另外很重要的一点是需要配置好线控制寄存器LCR(这些寄存器的配置说明见下面链接的手册&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值