版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 机电一体化强化训练单片机系统设计说明书两个单片机之间的全双工通信院(系) 机械工程学院 专业/方向 机械电子工程 班 级 机械电子工程班 学生姓名 指导老师 姚超友 2013年7月10日华南理工大学广州学院单片机系统设计任务书兹发给 10 机电工程 班学生 设计任务书,内容如下:1. 设计题目: 两个单片机之间的全双工通信 2. 应完成的项目: 课程设计任务书 (1) 查找相关资料,确定设计方案; (2) 用altium designer 绘制微机最小系统配置原理图和相关项 目的接口原理图,并对其进行封装; (3) 用keil uvision编写有关项目的程序,用proteus进行调试; (
2、4) 按照相关项目内容要求,上机进行联调; (5) 编写课程设计报告。 3. 参考资料及其说明:(1)李全利,单片机原理及应用,北京:清华大学出版社,2006年.(2)朱定华.单片机原理及接口技术m北京:电子工业出版社,2001,4.(3)姚超友, 光机电一体化强化训练实训教材单片机篇, 广州:华南理工大学出版社,2012年. (4)王幸之,钟爱琴,王雷,王闪.at89系列单片机原理与接口技术m.北京航空航天大学出版社,2004,5 (5)顶明亮、唐前辉编著.51单片机应用设计与仿真:基于keil与proteus.北京:北京航空航天大学出版社,2009年.4. 本设计任务书于 2013年6月2
3、8日发出,应于 2013年7月12日前完成,然后进行答辩。 专业教研室、研究所负责人 审核 年 月 日 指导教师 签发 年 月 日设计评语:设计总评成绩: 设计答辩负责人签字: 年 月 日目录摘 要 51.1前言61.2 设备简介61.3系统功能6第二章 设计方案的选择 72.1微处理器的选择72.2单片机串口及其四种工作方式72.3系统组成7第三章 原理图设计与分析 83.1总体设计电路图:83.2电源电路83.3晶振电路93.4数码管显示电路93.5.键盘电路10第四章 pcb板制作 114.1.布局要求114.2.布线要求124.3.布铜要求12第五章 制版和焊接 135.1制版过程13
4、5.2钻孔和焊接13第六章 程序设计 146.1程序:14第七章 调试与仿真 177.1仿真效果图:17第八章 小结与体会 188.1小结188.2体会18参考文献 19附录 20摘 要单片机自20世纪70年代以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机具有体积小、重量轻、价格低廉、环境要求不高、功能强大、灵活性好、易于开发等特点。在我国单片机已经广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51 单片机是个单片机中最为典型和最有代表性的一种。单片机系统的发展过程中,程序设计语音的选择尤为重要。c51是一种编
5、译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能,而且可以直接实现对硬件的控制。本设计以是以mcs51系列8位单片机为代表实现两个单片机之间的全双工通信。单片机的实现过程是在keil软件下用c语言进行编程,然后在prouteus仿真软件中设计了44矩阵式键盘作为输入确认和发送。单片机相互之间能将检测到的按键信号转换成数字量,呈现在led显示电路上。该系统灵活性强、可靠性高、将会有更广阔的开发前景。通过学习和查找相关资料,我们掌握了单片机全双工通信基本原理的理论知识,学会使用keil、alutium desiner软件,利用mcs51系列单片机具有性价比高。稳定可靠、通用性强、
6、体积小、价格低等优点,成功运行两个单片机之间的通信。关键词:mcs51系列单片机;显示电路;通信绪 论第一章 绪论1.1前言单片机自诞生以来,以其体积小、面向控制、高性价比等优点,在工业领域扮演着重要角色。在实际应用中,经常需要多个单片机之间协调工作,即多机通讯。mcs-51系列单片机的串行口工作模式2和模式3可实现多机通信。这种多机系统结构简单,应用广泛,但它只能实现由主机呼叫分机,然后实现主机与分机之间的全双工串行通信。我们在监控系统中要求既有主机与分机主动通信,又有分机与主机主动通信,这种结构的多机系统就无法满足要求。 多机协同工作已是单片机发展的一个重要趋势,目前单片机多机通信的主要方
7、式仍然是主从式多机通信系统。 单片机多机通信的目的是实现分布式处理系统,单片机多机通信的方式有很多种,应用前景广阔,非常具有研究意义。mcs-51单片机的应用开发主要有电路设计和程序设计两个难点。由于可编程芯片被广泛采用,接口电路设计的工作被大大简化。本设计的单片机全双工通信利用proteus软件仿真,利用keil软件做程序设计,结合两个软件运行。队员各自分工,完成电路的设计、检查、调试,再根据自己的硬件和通信协议用汇编语言编写发送和接收程序,然后在keil上建立项目,保存运行调试,最终准确无误的生成16进制文件。下一步,在proteus仿真软件上画出电路,完成之后在89s52芯片上各自加载程
8、序,然后运行。在这过程中需要选择适当的元件,合理的电路图,基本的故障排除和纠正能力,会使用基本的仪器对硬件进行调试,会熟练的运用c语言编写程序,会用相关的软件对自己的程序进行翻译,并烧进芯片中,要耐心反复检查、修改和调试,直到达到预期目的。1.2 设备简介 at89s52是一种低功耗、高性能cmos 8位微控制器,具有8k在系统可编程flash存储器,具有多机通信的功能,可以很好完成基本的数据通信的功能。借助proteus等仿真软件强大的仿真功能,可以从工程的角度直接能够看到仿真程序的运行电路工作的结果。因此弥补试验和实际单片机之间数据通信的脱节环节,因而具有一定的研究意义。晶振和电容来组成内
9、部时钟方式,复位电路用上电自动复位。复位端rst引脚高电平时8051单片机处于复位状态,低电平时单片机处于正常工作状态。上电时,电容器瞬态还未充上电,其两端无点差为,因此rst引脚和vcc引脚电位相同,即为高电平,8051单片机复位。当电容器两端充满电荷,电容器达到稳态,两端电位差为vcc,是rst引脚电位为0,因而使8051单片机处于正常工作状态。1.3系统功能1) 实现两台单片机之间的全双工通信。2) 每一方都可以发送09的数字在本机显示,同时发送给对方显示。第二章 设计方案的选择2.1 微处理器的选择本系统对微处理器要求不是太高,速度不要求太高,但代码较长,因此要求微处理器应有较大的程序
10、存储空间,通信的发送缓冲区与接收缓冲区均从ram中分配,为了能传送更多的数据,要求要有较大的ram,此外,处理器还应有一个全双工的串行口。综合考虑以上各种因素,选用mcs-51系列的单片机at89s52。at89s52是一种低功率高性能的cmos8位微处理器,具有8k在系统可编程flash存储器。at89s52具有以下标准功能:8k字节flash,236字节ram,32位i/o口线,2个数据指针,三个16位定时器/计数器,2级中断结构,全双工串行口,片内晶振及时钟电路2.2 单片机串口及其四种工作方式at89s52单片机内部含有一个可编程全双工串行通信接口,该接口电路不仅能同时进行数据的发送和
11、接收,也可以作为一个同步移位寄存器使用。串行口的发送过程由一条写发送缓冲器的指令把数据(字符)写入串行口的发送缓冲器sbuf中,再由硬件电路中在字符的始末端加上起始位(低电平)、停止位(高电平)及其他控制位(如奇偶位等),然后在移位脉冲shift的控制下,低位在前,高位在后,从txd端一位位地向外发送。方式0:同步移位寄存器方式,其波特率是固定为振荡频率fose的1/2。在这种工作方式下,发送和接收串行数据都通过rxd进行,从txd输出移位脉冲,控制外部的移位寄存器移位。方式1:10位数据的异步通信口。其中一位起始位“0”,八位数据位(先低位后高位)和一位停止位“1”,波特率可变,根据定时器1
12、的溢出率计算。方式2:11位数据的异步通信口,一位起始位,八位数据位,一位控制位和一位停止位。波特率为振荡频率的1/64或1/32。方式3::11位数据的异步通信口,一位起始位,八位数据位,一位控制位和一位停止位。波特率可变,根据定时器1的溢出率计算。单片机的串行通信传输方式有三种:单工制式、半双工制式和全双工制式。2.3系统组成at89s52txdrxdat89s52rxdtxd数码管显示数码管显示图1 总体框图第三章 原理图设计与分析 3.1总体设计电路图:图23.2电源电路本设计所需电源为直流五伏电压源,采用usb接口提供电源,1个六脚电源开关,一个1k的限流电阻,1个发光二极管,构成回
13、路实现电压源。电路如图3所示: 图33.3晶振电路一般的晶振振荡电路都是在一个反相放大器的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等于负载电容,这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路。电路如图4所示:图43.4数码管显示电路根据任务要求,使用2个共阳led数码管,通过8个1k电阻与三个8550pnp型号的三极管来驱动数码管的工作,并利用芯片at89c52其中的三个i/o口进行对数码管的片选信号。电路如图5所示:图53.5.键盘电路在本系统中,主机的数据和控制信号通过串口或键盘输入,为节省单片机i/o口,简化硬件线
14、路,采用4*4矩阵式键盘1。键盘共设有16个键,其中包括数字键和功能键。如图所示,由at89s52的p1.0-p1.7八条行线构成。如图6:图6第四章 pcb板制作在原理图设计时,当调用元器件时,如果需要用到一些现存库中没有的元件,要对原理图设计软件包中的库做些补充,添加一些新的元件。以使原理图上的所有元件都能在库中找到。绘制完原理图需要对各个元件进行封装,一般器件封装库内都有相应的封装,没有适当的封装时应当自己进行封装图设计,并将该封装图设计调入封装库中,以便自己对元器件封装时可以用到。在原理图文件中,要将所有元器件导入pcb图中,点击在【设计】【update pcbdocument pcb
15、1.pcbdoc】可对所设计的电路图进行检查与导入,不通过检查的话根据提示进行修改,例如没有接好线,封装不当,引脚定义设定不正确等,直到没有显示错误报警即可。4.1.布局要求板子尺寸:100x150单面覆铜板。首先在mechanical层绘制出100x150的矩形框,再对原理图生成网络表后,就可以在pcb编辑环境下进行pcb图的设计与编辑了,在pcb环境下导入网络表,这时在pcb设计界面内将出现所有器件的封装图,将所有的元件拖入布线区进行手动布局调整。pcb布局如图7:图74.2.布线要求在所有器件布局好之后,设定好连线宽度与布线规则,一般使用自动布线命令全部指令进行自动布线即可,自动布线之后
16、再进行手工的修改调整。1. 布线区域:单面版,只在底层完成,即在bottom overlay层进行布线;2. 安全距离:焊盘与焊盘之间、焊盘与线条之间的距离,设定为0.3mm;3. 走线方向:垂直与水平,这两个方向的更换要用45度的过渡,这个过渡的长度不需要很大,但是要有,否则可能出现信号掉失现等现象;4. 走线宽度:一般信号线0.3mm、电源线0.35mm。4.3.布铜要求布铜要求就是将布铜区域定义为机械层的区域,不同的层为顶层与底层。pcb布铜如图6所示: 图8第五章 制版和焊接5.1 制版过程制作完pcb板后,我们把它交给老师打印,第一次打印的时候采用的是普通的a4纸,透光性不够,无法完
17、成曝光。第二次采用硫酸纸打印,透光效果比较理想。接下来我们到1楼的实验室制板。制版的过程分为曝光,显影,腐蚀。曝光的时候把打印出来的电路图和打磨后的板子,根据电路的区域大小相贴在一起,在操作过程中不要过于用力压板子,以防纸上的电路图被划掉。然后进行抽真空,曝光时间定为300s。曝光后进行显隐,将曝光过的板子放在显影液里,刚开始的时候显影液的浓度太低,迟迟不能将板子上的电路图显影出来,后来加大了浓度,显影速度加快,每隔两三秒就要拿上来观察,防止显影过度。最后是腐蚀,将板子放到箱子里,使得腐蚀液在板子上流动,在此过程中药实时观察腐蚀进度,否则很有可能会过腐蚀,把该有的线路也腐蚀掉。腐蚀后,用清水清
18、洗板子。 5.2 钻孔和焊接5.2.1 钻孔板子腐蚀清洗后,可以开始使用卫星钻机进行钻孔;在钻孔的时候,要注意焊盘的位置和大小,对准后才开始钻孔,钻的时候速度要平稳,不能过快,否则可能会将焊盘刮掉,为后面的焊接工作造成困难。我们在焊接的过程中,就是因为一开始还不够熟练,不小心将部分焊盘刮掉了。5.2.2 焊接 焊接的过程中应该注意,先焊小的,体积小的,矮点的,比如电阻,无机电容,晶振等,接着才是高点的,大点的,比如led,在接下来就是更大的,比如数码管,usb接口等。焊接完成后,还要进行检测工作,使用万用表等工具检测是否有短路,断路等情况的出现。由于我们的板子在腐蚀的时候腐蚀得不够彻底,所以在
19、最后的检测阶段,我们用小刀将没有腐蚀完的线路划开,使得电路不短路。第六章 程序设计6.1程序:/*数码管显示位选表*/uchar w_dat8=0xc0,0xc0,0xc0;/输入的数据uchar xianshi10=0xc0,0xc0,0xc0;/显示缓存/*函数功能:xms延时函数*/void delay(uint xms) /1ms延时函数int a,b;for(a=xms;a0;a-)for(b=110;b0;b-);/*扫描显示函数*/void saomiao()/ 送数据到数码管扫描 p0 =xianshi0;wei1=0; delay(5);wei1=1;p0 =xianshi1
20、;wei2=0; delay(5);wei2=1; p0 =xianshi2;wei3=0; delay(5);wei3=1;/*发送函数*/void sendchar(uchar c)/发送一个字符 ti=0; sbuf=c; while(ti=0); ti=0; /*扫描接收函数*/while(1)keynum=keyscan();/扫描键盘输入if(keynum!=0xff) /if(xuhao8)/if(keynum=15)sendchar(w_dat0);sendchar(w_dat1);sendchar(w_dat2);sendchar(0x0d);else if(keynum=1
21、4)xianshi0=w_dat0;xianshi1=w_dat1;xianshi2=w_dat2;elsew_dat0=w_dat1;/存储输入的数据w_dat1=w_dat2;w_dat2=ledcodekeynum; for(i=0;i8;i+)/更新显示内容 /temp=rbuffi; /temp=temp-0x30; /xianshii=ledcodei;saomiao();/ 扫描/*初始化函数*/#include / 加载51头文件#define uchar unsigned char /宏定义#define uint unsigned intmain() uchar i;sco
22、n=0x50;/串口的工作方式1,允许接收,波特率可变的10位异步通讯接口方式pcon=0x00;/smod=0,波特率不加倍tmod=0x21;/波特率发生器t1的工作方式为2,自动填装初值th1=0xfd; /0xfd 11.0592tl1=0xfd;/波特率为9600时,t1的初 值0xfdtr1=1;/开启定时器1ti=0;/发送标志位清零ri=0;/接收标志位清零es=1;ea=1;for(i=0;i8;i+)/初始化显示0rbuffi=0x30;第七章 调试与仿真程序编译好之后,下载到硬件上,数码管显示不正常,通过检查,发现pcb板制作的时候,有些信号线导通不良,或者是焊接时焊盘脱
23、落造成虚焊的原因。所以最后我们决定,使用proteus仿真软件进行程序仿真。proteus isis是英国labcenter公司开发的电路分析与实物仿真软件。它运行于windows操作系统上,可以仿真、分析(spice)各种模拟器件和集成电路,该软件是一款集单片机和spice分析于一身的仿真软件,功能极其强大。该软件的特点是:具有强大的原理图绘制并能提供软件调试功能, 支持主流单片机系统的仿真, 实现了单片机仿真和spice电路仿真相结合。7.1仿真效果图: 使用proteus软件,把keil生成的hex.文件加载到单片机里,进行仿真,仿真效果图如图所示:图9 第八章 小结与体会8.1小结在做
24、本次课程设计的过程中,我感触最深的当属查阅大量的设计资料了,无论是课本上的还是网上的都浏览了不少相关的程序,从中也借鉴了别人的思想,开阔了自己的思路。做单片机课程设计,对设计者对软硬件的理解和掌握的要求都比较高。在设计程序之前,设计者必学对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常德,但
25、我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题。8.2体会回顾这四周以来自己从接到题目到编写出程序、画出电路原理图,自己真的收获不少。无论是软件的使用还是对单片机内部资源的了解,自己的认识都加深了很多。真希望能有多点的时间来把设计深入下去,把原理图做成实实在在的电路板,并在板子上实现设计的功能,另外,这次课程设计让我感到了团队合作的重要性。在团队中,我们互帮互助,对整个课程设计来说,这是至关重要的,缺少每一个人都会对我们的设计产生影响。还有要感谢指导老师在我们遇到困难时,给予我们的建议与鼓励!xxsx为期四周的课程实习结束了,和以往的实习经验相比,这一次最大的收获在于我
26、真正用心体会了整个过程,用心思考很多问题,也收获很多的感悟。刚开始知道题目时我开始迷茫了,因为这是我最弱的部分,甚至可以说不知道该从何处入手。所以我选用最简单的方法上网查询。我开始在网站上找相关的资料,但是因为基础太差,即使在网站上找到很多的相关知识,对于很多的概念还不是很清楚,我把相关的器件功能都仔细看了,然后对照电路图研究其工作过程,也向周围的同学询问相关知识,但是尽管这样我还是没能够将这些知识很好的串连起来(最后是在同组同学的讲解下才理清楚的)。而同组的同学都比我强,在我开始串连这些星星点点的知识点儿时他们却能够掌握整个实验的原理并开始设计了。虽然和他们相比我有很多不会的地方,但是即使在
27、旁边看着他们设计,听他们讨论,偶尔也加入一起讨论,即使出不了很大的力但是我却可以通过和他们讨论发现自己的不足,这也是一和好的学习机会,至少在讨论的时候我可以知道自己什么地方不懂,然后通过和组员的交流来加深对某一块知识点的理解。这样的学习方式的好处在于我们可以以一种我们都能理解的方式来互相学习。yaya 参考文献1李全利, 单片机原理及应用, 北京:清华大学出版社, 2006年. 2姚超友, 光机电一体化强化训练实训教材单片机篇, 广州:华南理工大学出版社,2012年. 3王幸之,钟爱琴,王雷,王闪.at89系列单片机原理与接口技术m.北京航空航天大学出版社,2004,5. 4朱定华.单片机原理
28、及接口技术m北京:电子工业出版社,2001,4.5顶明亮、唐前辉编著.51单片机应用设计与仿真:基于keil与proteus.北京:北京航空航天大学出版社,2009年.附录附件一 程序:#include / 加载51头文件#define uchar unsigned char /宏定义#define uint unsigned intsfr porte = 0x90;/p0=0x80,p1=0x90,p2=0xa0,p3=0xb0.数据端口 uchar rbuff12;/串口接收缓存uchar rcount=0;uchar w_dat8=0xc0,0xc0,0xc0;/输入的数据uchar x
29、ianshi10=0xc0,0xc0,0xc0;/显示缓存uchar keynum;uchar keyscan();/键盘检测程序unsigned char code ledcode=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;/数码管编码sbit wei1 = p24;/sbit wei2 = p25;/sbit wei3 = p26;/void delay(uint xms) /1ms延时函数int a,b;for(a=xms;a0;a-)for(b=110;b0;b-);
30、 void sendchar(uchar c)/发送一个字符 ti=0; sbuf=c; while(ti=0); ti=0; void saomiao()/ 送数据到数码管扫描 p0 =xianshi0;wei1=0; delay(5);wei1=1;p0 =xianshi1;wei2=0; delay(5);wei2=1; p0 =xianshi2;wei3=0; delay(5);wei3=1;uchar keyscan()/键盘检测程序 uchar num=0xff; uchar temp;porte=0xfe; /第一行扫描temp=porte;temp=temp&0xf0;whil
31、e(temp!=0xf0)delay(5);temp=porte;temp=temp&0xf0;while(temp!=0xf0)temp=porte;switch(temp) case 0xee:num=1; break; case 0xde:num=2;break; case 0xbe:num=3;break; case 0x7e:num=10;break;while(temp!=0xf0)temp=porte;temp=temp&0xf0;porte=0xfd;/第2行扫描temp=porte;temp=temp&0xf0;while(temp!=0xf0)delay(5);temp=p
32、orte;temp=temp&0xf0;while(temp!=0xf0)temp=porte;switch(temp) case 0xed:num=4;break; case 0xdd:num=5;break; case 0xbd:num=6;break; case 0x7d:num=11;break;while(temp!=0xf0)temp=porte;temp=temp&0xf0;porte=0xfb;/第3行扫描temp=porte;temp=temp&0xf0;while(temp!=0xf0)delay(5);temp=porte;temp=temp&0xf0;while(temp!=0xf0)temp=porte;switch(temp) case 0xeb:num=7;break;case 0xdb:num=9;break;case 0xbb:num=9;/ open=1;break;case 0x7b:num=12; break;while(temp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 糖尿病药物联合用药
- 确保安全驾驶常规的关键要点
- 徐涛课件教学课件
- 3.1.1亚铁盐和铁盐课件高一上学期化学鲁科版(2019)必修第一册
- DB1304T 481-2024芝麻轻简化栽培技术规程
- 初中七年级家长会教案
- 级中 国美食说课稿
- 壶口瀑布说课稿
- 海洋与生命说课稿
- 格林巴利综合征治疗指南
- NB/T 10739-2021井工煤矿辅助运输安全管理规范
- GB/T 29822-2013钨铼热电偶丝及分度表
- GA/T 74-2017安全防范系统通用图形符号
- GA/T 1968-2021法医学死亡原因分类及其鉴定指南
- GA 1551.6-2021石油石化系统治安反恐防范要求第6部分:石油天然气管道企业
- 第六章方针目标管理
- 企业设备设施清单(样本)
- 光伏电站项目招标文件范文
- 应急预案与应急能力建设
- 廻转窑挥发法生产氧化锌作业指导书
- 城市排水工程-课件
评论
0/150
提交评论