单片机串行通信发射机
无需注册登录,支付后按照提示操作即可获取该资料.
我所做的单片机串行通信发射机主要在实验室完成,参考有关的书籍和资料,个人完成电路的设计、焊接、检查、调试,再根据自己的硬件和通信协议用汇编语言编写发射和显示程序,然后加电调试,最终达到准确无误的发射和显示。在这过程中需要选择适当的元件,合理的电路图扎实的焊接技术,基本的故障排除和纠正能力,会使用基本的仪器对硬件进行调试,会熟练的运用汇编语言编写程序,会用相关的软件对自己的程序进行翻译,并烧进芯片中,要与对方接收机统一通信协议,要耐心的反复检查、修改和调试,直到达到预期目的。
单片机串行通信发射机采用串行工作方式,发射并显示两位数字信息,既显示00-99,使数据能够在不同地方传递。硬件部分主要分两大块,由AT89C51和多个按键组成的控制模块,包括时钟电路、控制信号电路,时钟采用6MHZ晶振和30pF的电容来组成内部时钟方式,控制信号用手动开关来控制,P1口来控制,P2、P3口产生信号并通过共阳极数码管来显示,软件采用汇编语言来编写,发射程序在通信协议一致的情况下完成数据的发射,同时显示程序对发射的数据加以显示。
毕业设计的目的是了解基本电路设计的流程,丰富自己的知识和理论,巩固所学的知识,提高自己的动手能力和实验能力,从而具备一定的设计能力。
我做得的毕业设计注重于对单片机串行发射的理论的理解,明白发射机的工作原理,以便以后单片机领域的开发和研制打下基础,提高自己的设计能力,培养创新能力,丰富自己的知识理论,做到理论和实际结合。本课题的重要意义还在于能在进一步层次了解单片机的工作原理,内部结构和工作状态。理解单片机的接口技术,中断技术,存储方式,时钟方式和控制方式,这样才能更好的利用单片机来做有效的设计。
2 硬件
2.1 硬件的基本组成:
单片机89C51、6M晶震、30pF电容、22uf/10V电容、1K电阻、共阳极数码显示管、按键。
2.2 电路图
(见附录A)
2.3 硬件介绍
2.3.1 单片机概述
单片机也被称作“单片微型计算机”、“微控制器”、“嵌入式微控制器”。单片机一词最初是源于“Single Chip Microcomputer”,简称SCM。随着SCM在技术上、体系结构上不断扩展其控制功能,单片机已不能用“单片微型计算机”来表达其内涵。国际上逐渐采用“MCU”(Micro Controller Unit)来代替,形成了单片机界公认的、最终统一的名词。为了与国际接轨,以后应将中文“单片机”一词和“MCU”唯一对应解释。在国内因为“单片机”一词已约定俗成,故而可继续沿用。
2.3.1.1 单片机的发展历史
如果将8位单片机的推出作为起点,那么单片机的发展历史大致可以分为以下几个阶段:
第一阶段(1976—1978):单片机的探索阶段。以Intel公司的MCS-48为代表。MCS-48的推出是在工控领域的探索,参与这一探索的公司还有Motorola、Zilog等。都取得了满意的效果。这就是SCM的诞生年代,“单片机”一词即由此而来。
第二阶段(1978—1982):单片机的完善阶段。Intel公司在MCS-48基础上推出了完善的、典型的单片机系列MCS-51。它在以下几个方面奠定了典型的通用总线型单片机体系结构。
1.完善的外部总线。MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有多机通信功能的串行通信接口。(优秀毕业设计网:www.2bysj.cn)
2.CPU外围功能单元的集中管理模式。
3.体现工控特性的地址空间及位操作方式。
4.指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。
第三阶段(1982—1990):8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。Intel公司推出的MCS-96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。
第四阶段(1990—):微控制器的全面发展阶段。随着单片机在各个领域全面、深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。
参考文献
[1] Micrel Inc. QwikRadio TM UHF ASK Transmitter[A] 2001.8
[2] Micrel Inc. QwikRadio TM Low Power UHF Receiver[A]2001.8
[3] 薛晓书.单片微机原理及接口技术[M].西安石油大学 2002.3(优秀毕业设计网:www.2bysj.cn)
[4] 黄智伟 朱卫华.单片机与嵌入式系统应用[M].南华大学.2005.3
[5] 付浩 AT89C51单片机高速串行输出口设计[A]淮阴师范学院 2004.10
附录B
部分发射程序:
org 0000h
sjmp start
org 0030h
start:mov 30h,#00h
mov 31h,#00h
mov a,30h
mov dptr,#ddss
movc A,@a+dptr
cpl a
mov p0,a
mov a,31h
movc a,@a+dptr
cpl a
mov p2,a
main:jb p1.0,m0
lcall dely0
jb p1.0,m0
lcall dely1
lcall z0
m0:jb p1.1,m1
lcall dely0
jb p1.1,m1
lcall dely1
lcall z1
m1:jb p1.2,m2
lcall dely0
jb p1.2,m2
lcall dely1
lcall dely1
lcall z2