RS232通信系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《单片机原理及应用》课程设计报告
专业计算机科学与技术(物联
网)
学生姓名
班级B计125
学号
指导教师陈逸飞
完成日期2014年 6 月30 日
信息工程学院
题目: RS232通信系统设计
一、设计目的
本课程设计是学习完“单片机原理及应用”课程后进行的一次全面的综合训练,通过课程设计,更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强学生的动手能力。
二、设计内容
1)概述
《单片机原理及应用课程设计》是单片机系统教学模式改革的一种尝试,以理论和实践相融合的教学平台,以教师为主导,学生为主体的教学模试,以单片机系统硬件和软件设计为基础,并以简单单片机系统设计和制作为学习目的。
在这样的指导思想下我们根据课程设计的要求设计了单片机小系统的硬件和软件。
本教材适用于单片机原理及应用课程,和单片机系统原理与嵌入式系统课程的实践性教材。
单片机原理及应用课程设计根据教学实践的需要实现MCS51 单片机系统原理与接口,并在单片机系统最小系统硬件上预留了自主开发实验课题的空间。
最小系统的扩展可根据课程设计要求仅需少量连线就可进行,为了减轻学生课程设计的工作量,设计了最小系统板,同时也提供了一些课程设计需要的接口,即锻炼学生的动手能力。
又为学生们提供了软硬件调试手段。
RS232通信系统设计是基于RS-232C单片机双机通讯系统,利用51单片机实现两个单片机之间的通讯。
通信的结果用数码管进行显示,数码管采用查表方式显示。
在通信过程中,使用通信协议进行通信。
2)设计原理
标准型89系列单片机是与MCSS_51系列单片机兼容的。
在内部含有4KB 或8KB可重复编程的FLASH存储器,可进行1000次擦写操作。
全静态工作为
0-33Hz,有3级程序存储器加密锁定,内含有128-256字节的RAM、32条可编程的I/O端口、2-3个16位定时器/计数器,6-8级中断,此外有通用串行接口、低电压空闲模式及掉电模式。
AT89C51相当于将8051中的4KB ROM换成相应数量的Flash存储器。
在自动化测量和控制系统中,各台仪表之间需要不断进行各种信息交换和传输,这种信息的交换和传输是通过仪表的通信接口,按照一定的协议进行的。
通
设计源代码
#include<reg52.h>
#define uchar unsigned char
/串行口中断服务函数/
void trs() interrupt 4 using 1 {
uchar Dat1;
EA=0;
if(TI==0) { //接收中断
RI=0;Dat1=SBUF; //清除中断标志,接收数据
p1=Dat1;SBUF=Dat1; //数据从P1口显示,同时回送给PC }
else T1=0;
EA=1;
}
/主函数/
void main(){
SVON=0x50; //设置串行口工作方式
TMOD=0x20; //将T1设为工作方式2
TH1=TL1=0xf3;PCON=0x80; //f=12MHz时,BD=4800
TR1=1; //启动T1
ES=1;EA=1; //开中断
while(1); //等待串行口中断
}
4)运行结果分析
运行c文件,生成hex文件,ISIS仿真测试
输入1输出
输入A输出显示
输入a,输出显示
LED显示方式有动态显示和静态显示两种方式。
本系统采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。
CPU向字段输出口送出字
型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于
COM端。
也就是说我们可以采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。
在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。
5)设计小结
这一周的单片机课程设计让我收获颇多。
我刚拿到该题目时,真的是一头雾水,硬件电路不知如何下手,更何谈解决程序那块,因为我们所学的都是单片机方面的理论知识,应用到实践中去还比较少,单片机的专业知识也不是很扎实。
之后去图书馆查阅资料,去网上搜索相关知识,并请教班上的学霸,终于成功运行。
一开始我选择了一个比较难的程序,经过多次修改之后,画程序图时还是出现各种错误,无法继续进行下去,后来我选了一个很简单基础程序,终于成功了。
之前没有进行过单片机课程设计,不该选那么难的,应该循序渐进,慢慢学习。
我觉得做单片机课程设计是十分有意义的,而且是十分必要的。
在已度过的大学时间里,我们大多数接触的是专业课。
我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。
通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。
创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。
并且学习到了学习一门学科不能好高骛远,应当徐徐图之。
更明白了要实践必须更加牢固的掌握基础知识,所以平时的理论学习显得尤为重要,如果基础不牢固,更加无法进行实践。
6)参考文献
[1]计算机操作系统(第3版),汤小丹,西安电子科技大学出版社,2007年7月
[2]C语言程序设计,孟庆昌,人民邮电出版社,2006年4月
[3陈堂敏.刘焕平主编.单片机原理与应用.北京:北京理工大学出版社,2007.
[4沈美明.温动蝉编著.IBM-PC汇编语言程序设计.北京:清华大学出版
社,1994.
[5]张仰森等编.微型计算机常用软硬件技术速查手册.北京:北京希望电脑公司,1994.
[6]江修汗等编.计算机控制原理与应用.西安:西安电子科技大学出版
社,1999.。