at89c51串口通讯教程

at89c51串口通讯教程

ID:13756344

大小:348.50 KB

页数:42页

时间:2018-07-24

at89c51串口通讯教程_第1页
at89c51串口通讯教程_第2页
at89c51串口通讯教程_第3页
at89c51串口通讯教程_第4页
at89c51串口通讯教程_第5页
资源描述:

《at89c51串口通讯教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、AT89C51串口编程前言本文档是为单片机初学者写的有关串口通讯编程的说明文档。使用的单片机硬件是最通用的AT89C51单片机,编程语言为c语言。本文档不是系统的介绍单片机知识的教程,而是为了使您尽快掌握串口编程方法的技术说明。本文档前几部分大量内容摘自平凡老师的单片机教程,此教程是单片机入门的良好教材,但由于那本教程是由汇编语言描述的,对于时间不充足的同学来说,学习汇编会浪费一些时间,所以我还是整理了我们要了解的内容写到了本文档中。对于时间比较充分,也有兴趣学习汇编语言的同学可以先阅读平凡老师的“单片机教程”,然后从本文档第六部分看起。该教程网址:http://ww

2、w.21icsearch.com/pmcu/dpjjx/ndpjjx2.htm我也已经下载了此教程,存在本实验室电脑中。单片机的基本认识一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)。在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如A/D,D/A等。天!电脑中的CPU一块就要卖上千块钱,这么多东西做在一起

3、,还不得买个天价!再说这块芯片也得非常大了。不,价格并不高,从几元人民币到几十元人民币,体积也不大,一般用40脚封装,当然功能多一些单片机也有引脚比较多的,如68引脚,功能少的只有10多个或20多个引脚,有的甚至只8只引脚。为什么会这样呢?功能有强弱,另外这种芯片的生产量很大,技术也很成熟,51系列的单片机已经做了十几年,所以价格就低了。既然如此,单片机的功能肯定不强,干吗要学它呢?话不能这样说,实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用P4?应用的关键是看是否够用,是否有很好的性能价格比。实现一个发光二极管的闪烁

4、体会对单片机的c语言编程买回来一块c51单片机,要想使用它首先要做必要的连线。我们实验室通常会给我们提供已经接好线的板子,所以我们不必自己去连线,这里需要说明的一点是,一块单片机要工作起来首先需要复位,所谓复位就是在单片机的RST引脚持续的加上两个机器周期的高电平,使单片机回到工作的状态。(机器周期在串口波特率的计算中介绍)我做实验时使用的板子是一块较复杂的板子的一部分,那块板子的复位方式是其他器件的程序给单片机复位,可是我做实验时那个器件不需要工作,所以,单片机一直不能复位。如果你遇到这种情况,请按任何一本书上介绍的加电复位选择合适的电容和电阻,按书上的连线图焊接好

5、,如果你用的是我以前用过的板子,这块板子已经接好了复位电路,无须多考虑。请打开一本单片机的书,找到单片机的引脚图。我们用的板子在p1.0脚接有一个发光二极管,当p1.0为高电压时,二极管点亮,为低电压时,二极管熄灭。我们现在想让小灯每隔0.5s闪烁一次,实际上就是要灯亮0.5s,再灭0.5s,也就是说要P10不断地输出高和低电平。怎样实现这个要求呢?我们首先给出程序,然后对照程序分析。实验1//程序开始#include//c51单片机编程特有的头文件#defineuintunsignedint#defineucharunsignedcharsbitP

6、10=P1^0;//sbit是单片机c程序新的关键字,用于定义位变量voidDelay(uinti)//延时程序,i是时间参数{uintj;for(;i>0;i--)for(j=0;j<125;j++){;}}voidmain(){for(;;){P10=0;//单片机内部给p10脚加低电平,关闭小灯Delay(500);//延时0.5sP10=1;//单片机内部给p10脚加高电平,点亮小灯Delay(500);//延时0.5S}}在以上程序中,我们可以看出,p10=1这条语句的含义就是p10加高电压,这个高电压不是1v,而是5v。p10=0则是p10加低电压。为什么

7、是p10=1是给p10加5v电压而不是1v,我们不用管。现在从主函数看起,主函数内部是个for循环,此循环是让程序不停的在循环体内部转圈。循环体中,首先让灯暗,然后调用延时函数delay,此函数的作用是延时0.5s,然后点亮小灯,然后又是延时,延时完了进入下一次的循环……这样,程序就每隔0.5s就给p10加一次电压,加的电压高低更替,并且永远循环下去。其结果是让小灯不停的闪烁。Delay函数纯粹是用软件的运行来消耗时间以达到延时的目的,至于为什么参数是500时,延时为0.5s,以后再谈。写好了程序,下一步我们的任务是把程序烧写到单片机的存储器中去,但

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。