单片机与接口技术课程设计报告
- 格式:doc
- 大小:283.50 KB
- 文档页数:14
《单片机应用设计报告》系别电子信息与电气工程系专业自动化班级 09 级 (1) 班姓名王杰王典老师储忠完成时间 2012年5月18日单片机原理及接口技术课程设计报告摘要:单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
MCS-51单片机是使用极为广泛的一款8位单片机,在此次实训中所用的单片机是美国Atmel公司生产的以8031为内核的AT89S52单片机。
实训分别以构建单片机最小系统版、74HC138流水灯、8255交通灯、8253方波、6N137光耦控制继电器等几个实验关键词:AT89S52 74HC138 8255A 8253 6N137 交通灯目录单片机原理及接口技术课程设计报告 (1)实验一构建单片机最小系统和实验环境熟悉 (3)1.1单片机的工作原理 (3)1.1.1单片机最小系统图 (3)1.1.2运算器简介 (4)1.1.3控制器简介 (5)1.1.4实验解析与总结 (7)实验二跑马灯实验及74HC138译码器 (7)2.1实验内容 (7)2.1.1实验原理 (8)2.1.2实验原理图 (8)2.1.3实验程序流程图 (9)2.1.4实验程序代码 (9)2.1.5完成后的效果图 (10)2.2实验总结 (10)实验三8255控制交通灯实验 (11)3.1实验内容 (11)3.1.3实验原理 (11)3.1.2实验原理电路图 (12)3.1.3程序流程图 (13)3.1.4实验程序代码 (13)3.1.5系统实现图 (15)3.2 8255A寻址原理 (15)3.3实验总结 (16)实验四8253方波实验 (17)4.1实验内容 (17)4.1.1实验原理图 (17)4.1.2实验原理电路图 (17)4.1.3程序流程图 (18)4.1.4程序流程代码 (19)4.1.4系统仿真 (20)4.2实验总结 (21)实训总结 (21)附录 (22)1 实验源程序 (22)2仿真系统电路原理图 (27)3硬件实物照片 (27)实验一构建单片机最小系统和实验环境熟悉1.1单片机的工作原理1.1.1单片机最小系统图单片机最小系统主要有外部晶振电路,系统复位电路以及供电电源组成。
AT89C52单片机原理与接口技术课程设计一、课程设计背景及目的AT89C52单片机是一种8位低功耗高性能CMOS Flash微控制器,被广泛应用于工控、仪器仪表等领域。
本课程设计旨在通过使用AT89C52单片机,系统地讲解单片机电路的组成原理、指令系统、应用接口,培养学生的软硬件设计能力,以实现一个完整的工程设计。
二、实验要求本次实验设有以下要求:1.设计一个基于AT89C52单片机的温度检测与报警系统;2.系统应能通过温度传感器获得环境温度,当温度超过设定阈值后进行报警;3.设计实时温度显示功能;4.熟悉AT89C52的功能、特点、指令系统、输入输出口等,学会使用Keil C51编程;5.能够熟练使用Oscilloscope,Verilog等EDA工具设计单片机电路原理图和PCB。
三、实验所需硬件与软件硬件:1.AT89C52单片机;2.DS18B20数字温度传感器;3.MAX232芯片;4.LED指示灯、按键开关、蜂鸣器、电阻电容等组件;5.电源、Oscilloscope组件。
软件1.Keil C51;2.Proteus;3.Altium Designer。
四、实验流程1. 单片机接口设计1.将DS18B20数字温度传感器中的DQ引脚连接至单片机P1.0口;2.将MAX232芯片中的T2OUT和R2IN引脚分别连接至单片机P3.1与P3.0口。
2. 温度检测功能设计1.编写程序,通过单片机P1.0口将DS18B20温度传感器所需的初始化代码发送给其,然后实现温度读取功能;2.对所读取的温度进行比较,当温度高于阈值时使用单片机P3.2口控制蜂鸣器发出警报,同时向P3.4口输出高电平使LED指示灯闪烁;3.当温度恢复正常时,将P3.2和P3.4口输出低电平,关闭警报。
3. 温度显示功能设计1.配置单片机P2.0口为8位数码管共阴极数码管的位选控制信号,P2.1~P2.7口为8位数码管的段选控制信号;2.编写数字转移代码,将读取到的温度进行转换成8位二进制码;3.编写8位数码管显示程序,将温度以数码形式实时输出。
单片机课程设计报告篮球计时计分器姓名:×××学号:×××××专业班级:××××指导老师:×××所在学院:××××××××××2007年6月30日1 引言篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确的问题。
此装置利用单片机AT89C51完成了计时和计分的功能。
该设计将介绍系统硬件与软件的设计过程,采用该装置可根据实际情况进行比分修改和时间的准确显示,具有低功耗,可靠性,安全性以及低成本等特点。
1.1背景知识介绍单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。
例如,80C51系列单片机已有十多年的生命期,如今仍保持着上升的趋势,就充分证明了这一点。
单片机以其一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。
并且已经深入到工业生产的各个环节以及人民生活的各层次中,如车间流水线控制、自动化系统等、智能型家用电器等。
而美国ATMEL公司开发生产了新型的8位单片机——AT89系列单片机。
他不但具有一般MCS-51单片机的所有特性,而且还拥有一些独特的优点,此次设计中所用到的AT89C51就是其中典型的代表。
单片机与接口课程设计一、课程目标知识目标:1. 让学生理解单片机的原理和结构,掌握其基本工作方式;2. 让学生掌握单片机与接口电路的连接方法,了解不同接口的功能和应用;3. 使学生了解并掌握单片机程序设计的基本方法,能编写简单的接口控制程序。
技能目标:1. 培养学生动手实践能力,能够独立完成单片机与接口电路的连接;2. 培养学生具备初步的程序调试能力,能够分析并解决简单的程序问题;3. 提高学生的团队协作能力,能够在小组合作中共同完成课程设计任务。
情感态度价值观目标:1. 培养学生对单片机与接口技术学习的兴趣,激发学生的求知欲和探索精神;2. 培养学生严谨的科学态度,注重实践操作的安全性和准确性;3. 引导学生关注单片机技术在现实生活中的应用,提高学生的创新意识和实践能力。
分析课程性质、学生特点和教学要求,本课程目标注重理论与实践相结合,以学生动手实践为主,培养学生对单片机与接口技术的应用能力。
通过本课程的学习,使学生能够将所学知识应用于实际问题的解决,为后续相关课程打下坚实基础。
二、教学内容1. 单片机原理与结构:介绍单片机的基本组成、工作原理,重点讲解CPU、存储器、输入输出接口等部分的功能和相互关系。
教材章节:第一章 单片机概述。
2. 单片机接口技术:讲解并演示常用的接口电路,如并行接口、串行接口、定时器/计数器接口等,分析各接口的特点和应用场景。
教材章节:第二章 单片机接口技术。
3. 程序设计基础:教授单片机程序设计的基本语法、流程控制和编程技巧,使学生能够编写简单的接口控制程序。
教材章节:第三章 单片机程序设计。
4. 实践操作:安排学生进行单片机与接口电路的连接、程序下载与调试,巩固所学知识,提高动手能力。
教材章节:第四章 实践操作。
5. 课程设计与案例分析:组织学生进行小组合作,完成课程设计任务,分析并解决实际问题,提高学生的综合应用能力。
教材章节:第五章 课程设计与案例分析。
教学内容安排和进度:本课程共计10课时,其中理论教学4课时,实践操作4课时,课程设计与分析2课时。
《单片机原理与接口技术》课程设计报告设计题目:简易数字电压表设计专业班级:电信1202 学号:2012001452学生姓名:庞宏平同组人:万培石一雄指导教师:武娟萍太原理工大学课程设计任务书注:课程设计完成后,学生提交的归档文件应按,封面—任务书—说明书—图纸的顺指导教师签名:日期:2015.6简易数字电压表设计目录1.引言 (4)1.1设计任务 (4)1.2 设计要求 (5)2.硬件电路设计 (5)2.1 系统的硬件构成及功能 (5)2.2 AT89S51单片机及其引脚说明 (6)2.3 ADC0808引脚及功能说明 (7)2.4 ADC0808的外部引脚特征 (8)2.5 ADC0808的内部结构及工作流程 (9)3.LCD显示系统以及74LS373 (10)3.1 LCD显示系统设计 (10)3.2 74LS373引脚图及功能 (11)3.3 总体电路设计 (13)4.程序设计 (14)4.1 程序设计总方案 (14)4.2 系统子程序设计 (15)5 .软件测试及仿真 (16)5.1 软件调试 (16)5.2 显示结果及误差分析 (17)5.3 附加功能 (18)结论 (19)附录程序代码 (20)第1章引言本次课程设计利用单片机技术来实现一台简易数字电压表,具有性能可靠、电路简单、成本低等特点。
1.1数字电压表概述电压表应用十分广泛,但大部分是模拟电压表,而由于其特性,反应速度慢,读数麻烦并且误差较大,所以为适应不断快速的高速信号领域,已经广泛使用数字电压表。
本实验设计是基于51单片机开发平台实现的一种数字电压表系统。
该设计采用AT89S51单片机为核心,以ADC0809为模数转换数据采样,实现被测电压的采样。
1.2此次设计任务1.2.1设计任务设计制作一个简易数字电压表,该直流电压表能测直流电压目标:基于MCS—51单片机,对设计硬件电路和软件程序应用的设计,使用发光二极管来显示所要测试模拟电压的数字电压值。
单片机课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理和结构,理解其工作流程。
2. 使学生了解并熟练运用单片机的编程语言,如C语言或汇编语言。
3. 帮助学生掌握单片机外围电路的设计与搭建,使其能独立完成简单的电路系统。
技能目标:1. 培养学生运用单片机解决实际问题的能力,提高创新思维和动手实践能力。
2. 培养学生具备查阅资料、分析问题、设计方案、调试程序等综合技能。
情感态度价值观目标:1. 培养学生对单片机课程的兴趣,激发学习热情,形成自主学习、合作学习的良好习惯。
2. 培养学生具备团队协作精神,学会与他人分享、交流、合作,提高沟通能力。
3. 培养学生关注科技发展,了解单片机在现实生活中的应用,增强社会责任感和创新意识。
课程性质分析:本课程为单片机课程设计,旨在让学生在掌握理论知识的基础上,通过实际操作,提高解决实际问题的能力。
学生特点分析:学生已具备一定的电子技术基础和编程能力,对单片机有一定了解,但实践经验不足,需要通过本课程加强实践操作和综合运用。
教学要求:1. 理论与实践相结合,注重培养学生的动手能力。
2. 引导学生主动思考,发现问题,解决问题。
3. 创设实际情境,提高学生的学习兴趣和参与度。
4. 注重培养学生的团队协作能力和沟通能力。
二、教学内容1. 单片机原理及结构:介绍单片机的组成、工作原理,重点讲解CPU、存储器、输入输出接口等部分。
参考教材章节:第一章 单片机概述2. 单片机编程语言:学习C语言和汇编语言的基础知识,掌握编程技巧,能独立编写简单的单片机程序。
参考教材章节:第二章 单片机编程语言3. 单片机外围电路设计:讲解并实践常用外围电路的设计与搭建,如LED 灯、蜂鸣器、数码管等。
参考教材章节:第三章 单片机外围电路设计4. 单片机程序下载与调试:学习使用编程器、仿真器等工具,掌握程序下载、调试方法。
参考教材章节:第四章 单片机程序下载与调试5. 实践项目:设计并实现几个实际项目,如温度控制器、智能小车、智能家居系统等,锻炼学生解决实际问题的能力。
单片机课程设计报告指导老师:任家富学生:钟文旭学号:200906050415一、目的与意义《单片微机原理及应用》是一门技术性、应用性很强的学科,实验课教学是它的一个极其重要的环节。
不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验课教学。
如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节,学习与应用脱节的局面。
任随书本上单片微机技术介绍得多么重要、多么实用、多么好用,同学们仍然会感到那只是空中楼阁,离自己十分遥远,或者会因此对它失去兴趣,或者会感到它高深莫测无从下手,这些情况都会令课堂教学的效果大打折扣。
《单片微机课程设计》的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行单片机应用系统的开发设计工作打下一定的基础。
二、硬件电路图1、主板2、四位数码管3、八位LED流水灯4、蜂鸣器5、串口三、程序流程图五、实现的功能及现象1、键盘扫描输入当程序运行时,自动检测是否有按键按下,是哪个按键按下,并且通过返回值,在四位数码管上显示出按下键所对应的数字、字母或执行相应的功能。
2、四位数码管显示通过四位数码管显示相应的按键值、提示语或者执行相关功能。
3、八位流水灯程序运行时,当按下“B”功能键,八位流水灯依次循环点亮熄灭。
4、秒表程序运行时,当按下“C”功能键,数码管清零,从零开始逐秒增加。
5、串口通信程序运行时,当按下“F”功能键,数码管显示“232C”,提示进行串口输入,当从串口助手中输入控制字符时,八位LED灯得到对应的结果。
例如:当输入“00”时,八位灯全亮;当输入“AA”时,八位灯间隔亮。
郑州轻工业学院软件学院单片机与接口技术课程设计总结报告设计题目:电子万年历学生:系别:专业:班级:学号:指导教师:2021年12月16日设计题目:电子万年历设计任务与要求:1、显示年月日时分秒及星期信息2、具有可调整日期和时间功能3、增加闰年计算功能方案比拟:方案一:系统分为主控制器模块、显示模块、按键开关模块,主控制模块采用AT89C52单片机为控制中心,显示模块采用普通的共阴LED数码管,键输入采用中断实现功能调整,计时使用AT89C52单片机自带的定时器功能,实现对时间、日期的操作,通过按键盘开关实现对时间、日期的调整。
方案二:系统分为主控模块、时钟电路模块、按键扫描模块,LCD显示模块,电源电路、复位电路、晶振电路等模块。
主控模块采用AT89C52单片机,按键模块用四个按键,用于调整时间,显示模块采用LCD1602,时钟电路模块采用DS1302时钟芯片实现对时间、日期的操作。
两个方案工作原理大致相同,只有显示模块和时钟电路不同。
LED数码管价格适中,对于数字显示效果较好,而且使用单片机的端口也较少; LCD1602液晶显示屏,显示功能强大,可以显示大量文字、图形,显示多样性,清晰可见,价格相对LED数码管来说要昂贵些,但是基于本设计显示的东西较多,假设采用LED数码管的话,所需数码管较多,而且不利于控制,因此选择LCD1602作为显示模块。
DS1302是一款高性能的实时时钟芯片,以计时准确、接口简单、使用方便、工作电压范围宽和低功耗等优点,得到广泛的应用,实时时钟有秒、分、时、星期、日、月和年,月小于31天时可以自动调整,并具有闰年补偿功能,而且在掉电时能够在外部纽扣电池的供电下继续工作。
单片机有定时器的功能,但时间误差较大,且需要编写时钟程序,因此采用DS1302作为时钟电路。
比照以上方案,结合设计技术指标与要求我们选择了方案二进行设计。
逻辑总框图:该电子万年历的总体设计框图如图(1)所示。
单片机课程设计实验报告设计题目:基于单片机的多功能综合应用系统的设计专业:电子信息工程班级:姓名:指导老师:目录第一章设计说明1.1 设计目的 (3)1.2 设计内容及要求 (3)第二章硬件电路仿真实现2.1 硬件结构分析 (5)2.2基本功能仿真电图 (6)2.3扩展功能仿真电路图 (10)2.4 实物电路图 (15)第三章软件设计实现3.1软件程序内容 (16)3.2模块分析 (16)3.3 程序流程图 (17)第四章系统测试4.1 软件调试 (19)4.2硬件调试 (19)第五章心得体会 (20)第六章参考文献 (21)附录 (21)第一章设计说明1.1 设计目的单片机在许多领域使用十分广泛,如智能仪器仪表、实时工控、通讯设备、导航系统、家用电器等。
各科任老师们经常说“学好单片机,工作就不成问题了。
”可见学好单片意义之重大。
单片机作为一门基础学科,既是对前期学习C语言的综合运用,也是理论与实践相结合的一大体现。
本次课程设计通过基础部分,拓展功能以及整体电路的实现能很好地锻炼我们的动手及编程能力。
1.2 设计内容及要求内容:1.设计并实现具有复位功能的单片机小系统。
2.利用单片机进行灯光的场景开关控制、循环点亮控制、花样变化控制及速度变化控制(如:左右循环、扩散收缩式移动、流星雨、舞台灯光综合效果、名曲名句跟随显示等。
至少应做两项:前两项选一并有速度变化控制功能,后三项选一或自创特色花样)。
3. 炫彩音乐显示(依据3秒以上某名曲名句,模拟高、中、低音三分频,彩色LED随音频变化而起伏显示的效果,进一步地,LED 亮度跟随音乐响度闪烁)。
4.利用单片机进行灯光的色彩连续变化效果控制。
5.利用单片机进行灯光的三色联动定时控制(以交通灯为例)。
(说明:3、4中二选一,1、2、5必选)6. 配合2至5项中功能,实现液晶屏输出功能或状态信息。
7. 以调节5或4项中的时间为例实现基于4X4键盘的输入功能。
郑州轻工业学院本科单片机与接口技术课程设计总结报告设计题目:定时器控制交通灯(带故障报警)学生姓名:赵忠良王彦峰王永亮方庆刚系别:计算机与通信工程学院专业:通信工程班级:通信工程08-1班学号:200807040159指导教师:陈晓雷副教授2011年1月7日郑州轻工业学院课程设计任务书题目定时器控制交通灯(带故障报警) 专业班级通信工程08-1班姓名学号赵忠良 59号主要内容、基本要求、主要参考资料等:1. 课程设计目的(1) 加强对所学理论知识的理解,提高综合应用、分析能力;(2) 掌握MCS51单片机开发系统的使用;(3) 学习与掌握程序设计方法及硬件电路的设计还有联调仿真最终成所选择课题的设计;(4) 利用简单的应用系统,培养应用系统的开发能力。
2. 课程设计要求(1)完成LED灯的显示、按键识别、电铃发出响声等,并完成模拟交通灯的功能;(2)从源程序、软件模拟、调试方面完成软件系统;(3)利用开发系统完成系统的总体调试、程序烧写,实现应用系统功能,并能对系统运行中的问题进行分析。
3. 参考资料(1)单片机典型系统设计实例精讲彭为,黄科,雷道仲编著电子工业出版社出版发行 2006.5(3,4);(2)单片机原理及应用李建忠编著西安电子科技大学出版社;(3)AT89系列单片机原理与接口技术王幸之,钟爱琴等编著北京航空航天大学出版社出版发行 2004;(4)51单片机编程基础与开发实例详解岂兴明,唐杰等编著人民邮电出版社出版发行。
完成期限:2011-1-7指导教师签名:陈晓雷课程负责人签名:陈晓雷2011年 01月 3日目录第一章设计内容与要求 (4)第二章设计原理 (4)1.单片机概述 (4)2.STC89C52芯片简介 (5)3.定时器/计数器 (7)4.设计思路 (8)第三章程序流程图 (8)第四章源程序清单 (9)第五章硬件电路图及仿真结果 (12)第六章课程设计体会 (13)第七章参考资料 (14)第一章设计内容与要求1. 设计题目:定时器控制交通灯(带故障报警)2. 课程设计目的(1) 加强对所学理论知识的理解,提高综合应用、分析能力;(2) 掌握MCS51单片机开发系统的使用;(3) 学习与掌握程序设计方法及硬件电路的设计还有联调仿真最终成所选择课题的设计;(4) 利用简单的应用系统,培养应用系统的开发能力。
3. 课程设计要求(1)完成LED灯的显示、按键识别、电铃发出响声等,并完成模拟交通灯的功能;(2)从源程序、软件模拟、调试方面完成软件系统;(3)利用开发系统完成系统的总体调试、程序烧写,实现应用系统功能,并能对系统运行中的问题进行分析。
第二章设计原理1.单片机概述单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。
单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。
2.STC89C52芯片简介STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。
该器件采用ATMEL 搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
STC89C52具体介绍如下:①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
④可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7 P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7 单片机总控制电路如下图4—1:3.定时器/计数器定时器/计数器工作方式寄存器(TMOD),字节地址89H,不可进行位寻址。
定时器/计数器工作方式寄存器(TMOD)的8位分为两组,高4位控制T1,低4位控制T0。
TMOD每一位的功能如下。
GATE:门控位。
GATE=0,仅由运行控制位TRX(X=0,1)=1来启动定时器/计数器运行;GATE=1,由运行控制位TRX(X=0,1)=1和外部中断引脚上的高电平共同来启动定时器/计数器运行。
C/T:定时器模式和计数器模式选择位。
C/T=0,为定时器模式;C/T=1,为计数器模式。
M1、M0:工作方式选择位。
M1、M0的4中编码对应4种工作方式。
定时器/计数器的4种工作方式下的逻辑结构如表所示。
4.设计思路首先了解实际交通灯的变化情况及规律,假设一个十字路口如上图所示,为东南西北走向。
初始状态1东西绿灯通车,南北红灯亮。
经过一段时间后,转状态2,东西绿灯灭,黄灯闪几下,南北还是红灯。
再转状态3,南北绿灯通车,东西红灯亮,过一段时间后转状态4,南北绿灯灭,闪几下黄灯,东西还是为红灯亮,一段时间后,又循环至状态1。
第三章程序流程图第四章源程序清单#include <reg52.h>#define uint unsigned int#define uchar unsigned charsbit RED_A = P1^0;sbit YELLOW_A = P1^1;sbit GREEN_A = P1^2;sbit RED_B = P1^3;sbit YELLOW_B = P1^4;sbit GREEN_B = P1^5;sbit K2 = P3^5;sbit BEEP = P2^3;uchar Time_Count = 0, Flash_Count = 0, Operation_Type = 1; void T0_INT() interrupt 1{TH0 = -195;TL0 = -80;switch(Operation_Type){case 1:RED_A=1;YELLOW_A=1;GREEN_A=0;RED_B=0;YELLOW_B=1;GREEN_B=1;if(++Time_Count != 100) return;Time_Count=0;Operation_Type = 2;break;case 2:if(++Time_Count != 8) return;Time_Count=0;YELLOW_A=!YELLOW_A;GREEN_A=1;if(++Flash_Count != 10) return;Flash_Count=0;Operation_Type = 3;break;case 3:RED_A=0;YELLOW_A=1;GREEN_A=1;RED_B=1;YELLOW_B=1;GREEN_B=0;if(++Time_Count != 100) return;Time_Count=0;Operation_Type = 4;break;case 4:if(++Time_Count != 8) return;Time_Count=0;YELLOW_B=!YELLOW_B;GREEN_B=1;if(++Flash_Count !=10)return;Flash_Count=0;Operation_Type = 1;break;}}uchar code SONG_TONE[]={212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126, 129,169,190,119,119,126,159,142,159,0};uchar code SONG_LONG[]={9,3,12,12,12,24,9,3,12,12,12,24,9,3,12,12,12,12,12,9,3,12,12,12,24,0 };void DelayMS(uint ms){uchar t;while(ms--){for(t=0;t<240;t++);}}void PlayMusic(){uint i =0,j,k;while(SONG_LONG[i]!=0||SONG_TONE[i]!=0){for(j=0;j<SONG_LONG[i]*20;j++){BEEP = ~BEEP;for(k=0;k<SONG_TONE[i]/3;k++);}DelayMS(10);i++;}}void main(){while(1){TMOD = 0x01;IE = 0x82;TR0 = 1;if(K2==0)PlayMusic();};}第五章硬件电路图及仿真结果第六章课程设计体会回顾起此次单片机课程设计,我仍感慨颇多,学到了很多的东西。
同时不仅巩固了以前所学过的知识,而且还学到了很多在书本上所没有学到过的知识。
在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。
一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。
对于单片机设计,其硬件电路是比较简单的,主要是解决程序设计中的问题,而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。
因此可以说单片机的设计是软件和硬件的结合,二者是密不可分的。
通过这次课程设计我发现单片机原理应用行很强,只有老师的讲解不行,只看也不中,只有自己动手去做才会发现自己确实有太多的不足,许多的原理,程序看似简单,真正去做才知道知识并没有自己想象的那样扎实。