单片机课程设计

  • 格式:doc
  • 大小:168.50 KB
  • 文档页数:22

第一章单片机1.1单片机的背景单片机系统被定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

实际上单片机系统是计算机的一种应用形式,是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物,具有软件代码小、高度自动化、响应速度快等特点。

因此它是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

特别适合于要求实时的和多任务的系统。

如今单片机系统的应用越来越广泛,那么单片机系统应用缘何能在近年来的信息技术应用中脱颖而出,成为众多商家角逐的对象。

其实原因很简单,因为这里面蕴藏着巨大的市场,巨大的商业利益,单就电视应用而言,目前全球有2亿多有线电视用户,中国也有8000多万户,而且每年还在以600万的速度递增。

如今,在这块领域里,还没有一家公司有成熟的产品,也没有标准的操作系统,更没有一个可以主导市场的垄断者。

在这种局势下,虽然竞争将异常剧烈,但突围的可能性也较大,只要能够培养出自己的技术能力和市场开拓能力,是有可能取得巨大成功的。

1.2单片机的发展单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。

单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。

因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

单片机经过1、2、3、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。

其发展趋势不外乎以下几个方面:(1)、多功能单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。

比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器---看家狗)、高速I/O口及计数器的捕获/比较逻辑等。

有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。

例如,有的芯片以51内核为核心,集成了USB控制器、SMART CARD 接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。

(2)、高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。

由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。

使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。

(3)、低电压和低功耗单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。

由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到uA级。

这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。

(4)、低价格单片机应用面广,使用数量大,带来的直接好处就是成本的降低。

目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。

1.3单片机的应用(1)家用电器领域用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。

(2)办公自动化领域单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。

(3)商业应用领域商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。

与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。

(4)工业自动化在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。

(5)智能仪表与集成智能传感器目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。

将单片机和传感器相结合,可以构成新一代的智能传感器。

它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。

(6)现代交通与航空航天领域通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。

这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要。

1.4ATC89S51特点目前,我国生产很多型号的单片机,在此,我们采用型号为ATC89S51的单片机。

因为: ATC89S51是一个低电压,高性能CMOS 8位单片机,片内含4k bytes 的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89S51提供了高性价比的解决方案。

ATC89S51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,ATC89S51可以按照常规方法进行编程,也可以在线编程。

其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

第二章整体设计方案方案:采用AT89S51单片机来实现系统的控制。

此系统硬件简洁,将复杂的硬件功能用软件实现,因此系统控制灵活,能很好地满足本题的基本要求和扩展要求简洁、灵活、可扩展性好,能完全达到设计要求,故采用这种方案。

2.1单片机的选择2.1.1 确定技术指标在开始设计前,必需明确应用系统的功能和技术要求,综合考虑系统的先进性、可靠性、可维护性、成本及经济效益等。

再参考国内外同类产品的资料,提出合理可行的技术指标,以达到最高的性价比。

2.1.2 机型选择机型选择的出发点及依据,可根据市场情况,选择成熟、稳定、货源充足的机型产品。

同时还应根据应用系统的要求考虑所选的单片机应具有很高的性价比。

另一方面为提高经济效率,缩短研制周期,最好选用最熟悉的机种和器件。

采用性能优良的单片机开发工具也很能加快系统的研制过程。

2.1.3 器件选择应用系统除单片机以外,系统通常还有传感器、模拟电路、输入输出设备。

这些部件的选择应符合系统的精度、速度和可靠性等方面的要求。

2.1.4 软、硬件功能的划分系统的软件与硬件的设计是紧密联系在一起的,在某场合硬件和软件具有一定的互换性。

为了降低成本、简化硬件结构,某些功能可由软件来完成。

若为了提高工作速度、精度、减少软件的工作量、提高可靠性,也可以采用硬件来完成。

总之,硬件、软件两者是相辅相成的,可根据实际应用情况来合理选择。

第三章模块电路设计与比较3.1延时模块T1: MOV R2,#200T2: MOV R3,#0F8HDJNZ R3,$RET3.2按键防抖动及按键音模块SETB P2.2JB P2.2,BEGIN2ACALL DL10MSJB P2.2,BEGIN2LC: JNB P2.2,LCACALL DL10MSJNB P2.2,LC ;按键判定,当P2.2=0时跳转至ATAAJMP PAS1BEGIN2: MOV A,#00H3.3中途跳转(用于超长指令跳转)模块PAS: MOV P0,#0FFHLJMP START3.4启动模块GO: MOV P1,#0FFHSETB P2.3BEGIN: JB P2.3,BEGIN ;启动ACALL DL10MSJB P2.3,BEGINLA: JNB P2.3,LAACALL DL10MSJNB P2.3,LAAJMP A TART第四章程序设计的基本方法当给定一个题目,进行程序设计时,一般应按以下几个步骤进行:分析题目,确定算法,程序结构的设计,编写源程序,汇编和调试。

4.1 分析题目分析题目就是明确题目的任务,弄清所给顶的原始数据和应得到的结果,以及运算精度和速度的要求等。

分析题目是整个程序设计的重点。

若任务比较简单,其原始数据和目的要求等比较清楚,就容易确定设计方法。

而对于比较复杂的课题,必须作全面深入的分析,才能为以后的工作打下基础。

4.2 确定方法确定方法就是选择解决问题的方法。

例如,对于单纯的数值计算问题,汇编语言指令本身只能进行加、减、乘、除….等基本运算,但是实际问题可能是计算某个函数之后才解方程。

在这种情况下,确定算法就是设法用基本运算方法来解决其它的复杂问题。

往往算法不是唯一的。

不同的方法在占用存储单元数,计算精度,编程工作量等方面是有差别的,这就需要进行比较和选择。

4.3 程序结构的设计程序结构的设计是算法转化为程序的准备阶段。

如果算法比较简单,这一不可以省掉,直接按算法编写程序。

如果比较复杂,同需要进行程序结构的设计。

程序结构的设计一般采用流程图法。

流程图是有规定的图形符号配合文字说明来表示算法或处理总是的步骤。

客观存在具有直观.易懂的特点,是程序结构设计的有力工具。

4.4 流程图的绘制有一个由粗到细的过程,需要反复修改,求得完善。

程序的基本结构是有顺序结构,分支结构和子程序结构等四类。

当程序较大时,应根据功能将整个程序分类若干模块。

4.5 编写源程序程序结构设计完成之后,下一步是编写程序。

在编程之前要规划好寄存器和存储器的使用。

对于程序区,表格,数据缓冲区,档志单元等作好系统安排。

编程根据程序流程图来进行,所编写的源程序要力求简单明了,层次清晰,运行时间短,占用存储空间小。

4.6 汇编和调试对于编好的程序,要进行汇编和调试。

汇编是将源程序变为可执行的目的程序。

在汇编过程中,可能发现源程序的某些错误,需作修改。

汇编完成后还要通过调试来检查所编程序是否正常运行。

调试方法一般是输入给定的数据,使程序运行,检查程序运行结果是否正确。

调试工作可以先部分(或模块)而后总体。

在调试过程中一般总会发生不正常情况,而要反复修改程序,直到获得正确的结果为止。

第五章程序框图及电路图5.1操作方法(方框图)图:程序框图5.2电路原理图A:原理图D:键盘接口电路设计E:电源电路设计F:显示模块G:数码管驱动模块结束语我在这一次单片机最小系统的设计过程中,很是受益匪浅。

通过对自己在大学时间里所学的知识的回顾,并充分发挥对所学知识的理解和对毕业设计的思考及书面表达能力,最终完成了。