单片机课程设计报告[]

合集下载

单片机课程设计 报告

单片机课程设计 报告

《单片机应用设计报告》系别电子信息与电气工程系专业自动化班级 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单片机最小系统图单片机最小系统主要有外部晶振电路,系统复位电路以及供电电源组成。

stm32单片机课程设计报告

stm32单片机课程设计报告

stm32单片机课程设计报告设计背景:一个学生对单片机的好奇心,也激起了我对它进行探索研究的兴趣。

为此,在上完单片机课程以后,同时开始我们的实践活动。

经过几天的努力我们的第一次作品终于出炉了。

通过这次活动使我受益匪浅!由于本人水平有限,书写不当之处还请老师指正,谢谢!设计要求:采用小规模集成电路设计单片机最大特点就是电路简洁、可靠性高和价格低廉.利用51系列的中断结构和硬件看门狗定时器来完成最后的任务,因此,我们只需对各部分加以说明,重点介绍其设计思想即可,如下图所示:(1)定时/计数器采用小规模集成电路设计单片机最大特点就是电路简洁、可靠性高和价格低廉.利用51系列的中断结构和硬件看门狗定时器来完成最后的任务,因此,我们只需对各部分加以说明,重点介绍其设计思想即可,如下图所示:(2)程序存储器部分(3)片内数据存储器部分(4)外围扩展接口部分图2—1程序存储器部分图2-3片内数据存储器部分图2-4外围扩展接口部分1.程序存储器部分片内程序存储器共分四个部分:控制寄存器、数据存储器、程序状态存储器和特殊功能寄存器等。

在这些地方我主要讲解如何用中断控制其工作。

当定时器发生溢出或非法操作,将会产生一个中断请求信号。

由定时/计数器产生的该中断请求信号在中断服务程序中被送到定时/计数器。

定时/计数器将响应中断而执行相应的中断服务子程序,并返回响应中断信号。

利用中断处理实现定时/计数器中断请求:在程序存储器片段存放定时/计数器对象,并使其成为可重入的,从而为每一位提供固定宽度的中断服务。

当中断产生时,片内寄存器的内容随着中断服务程序的调用而改变,寄存器值改变了,那么中断服务子程序中被修改的位的状态也跟着变化;如果该中断请求得到了满足,则可由该寄存器恢复原先的值;否则,仍然保持原先的状态。

而且,该中断请求不会因其他原因而丢失,下次再启动程序时,该中断请求又会被激活。

中断服务程序被装入一个中断向量表( IDT),由中断屏蔽位来确定中断源的类型,以便查询有关寄存器的状态。

单片机 课程设计报告(完成版)

单片机  课程设计报告(完成版)

单片机课程设计报告
题目:音乐门铃
院系:电气信息工程系专业:通信工程
组长:吴楠学号: 20100606019
组员 1 :刘静静学号: 20100606017
组员 2 :张琳娜学号: 20100606018
组员 3 :李元学号: 20100606020
组员 4 :黄智鑫学号: 20100606049
组员 5 :学号:
组员 6 :学号:
指导教师:李宁
2011年01月06日
电气信息工程系课程设计总结报告
PCB原理图
电气信息工程系
单片机课程设计元器件清单指导教师:李宁课题名称:音乐门铃
参考文献:
[1]徐爱钧.单片机原理实用教程[M].北京:电子工业出版社,2009:267-285.
[2]刘焕平.单片机原理及应用[M].北京:北京邮电大学出版社,2008:246-260.
[3]刘南平.单片机实训与开发教程[M].北京:科学出版社,2008:199-209.
[4]吴金戌.8051单片机实践与应用[M].北京:清华大学出版社,2002:242-253.
[5]刘海成.单片机及应用系统设计原理与实践[M].北京:北京航空航天大学出版社,2009:273-281.
[6]杨振江.单片机应用于实践指导[M].西安:西安电子科技大学出版社,2010:378-380.。

单片机课程设计报告代码

单片机课程设计报告代码

单片机课程设计报告代码摘要:一、单片机课程设计报告简介1.单片机概述2.课程设计报告的目的与意义3.报告内容概述二、单片机基础知识回顾1.单片机的定义与历史2.单片机的基本结构3.单片机的工作原理三、单片机应用领域1.工业控制2.通信设备3.消费电子4.汽车电子5.其他领域四、单片机课程设计报告实例分析1.实例一:基于单片机的智能家居系统设计2.实例二:单片机控制的智能交通灯系统设计3.实例三:单片机在智能医疗设备中的应用设计五、单片机课程设计报告撰写建议1.明确设计目标与要求2.详细的设计过程与思路3.合理的硬件与软件设计4.系统测试与优化5.结论与展望正文:一、单片机课程设计报告简介单片机课程设计报告是学生在学习单片机知识后,将理论应用于实际的一个综合性实践环节。

通过对单片机的了解与掌握,学生可以设计出各种具有一定功能的智能系统。

本报告将对单片机课程设计报告进行简要介绍,包括报告的目的、意义以及内容概述。

二、单片机基础知识回顾在开始设计报告之前,我们需要先回顾一下单片机的基础知识,以便更好地理解单片机的工作原理和应用领域。

单片机是一种集成电路,集成了CPU、存储器、外设接口等多种功能于一体,可编程实现各种控制功能。

它具有体积小、成本低、功耗低、功能强大等特点,被广泛应用于各个领域。

1.单片机的定义与历史单片机(Microcontroller Unit, MCU)是一种集成了CPU、存储器、外设接口等多种功能于一体的微型计算机。

自1971年Intel公司推出第一款单片机4004以来,单片机得到了迅速发展,其性能、功能和应用领域不断扩展。

2.单片机的基本结构单片机主要由CPU、存储器、外设接口和时钟电路等部分组成。

CPU是单片机的核心部分,负责程序的执行;存储器用于存储程序和数据;外设接口用于与外部设备进行通信;时钟电路为单片机提供工作节拍。

3.单片机的工作原理单片机根据预先编写好的程序,在时钟信号的作用下,对输入信号进行处理,并产生相应的输出信号,从而实现对各种外部设备的控制。

单片机课程设计报告

单片机课程设计报告

中州大学工程技术学院单片机课程设计说明书课题名称秒表专业机械制造与自动化学生XX 马振杨班级机制一班学号7指导教师沈娣丽完成日期2013年9月25日目录摘要 (1)一.系统设计要求 (2)二.设计思路分析 (2)三.秒表电路原理图设计 (2)3.1系统总电路图 (2)3.2时钟电路设计 (3)3.3 输入模块电路设计 (3)3.4显示模块电路设计 (3)四.系统硬件电路设计 (3)4.1秒表显示模块 (4)4. 2控制器模块单片机的选择 (4)4. 3键盘的选择 (5)五.简易秒表软件系统设计 (6)5.1定时模块 (6)5.2 主程序流程图 (8)六.系统的调试 (8)七.心得体会 (11)八.参考文献 (12)摘要单片机在日用电子产品中的应用日益广泛,单片机控制秒表是基于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低、平安性高使用方便等优点。

秒表是人们日常生活中常常需要用到的一种工具。

本文采用AT89S51单片机从硬件和软件两方面介绍了一款简易的秒表设计过,并对硬件原理图和程序流程图作了简洁的描述。

关键字:单片机AT89C51,LED,秒表,计数器引言:随着单片机技术的不断开展,单片机在日用电子产品中的应用越来越广泛,而本文设计并制作了一款基于AT89C51的3位数码管显示的秒表,其电路简单,软硬件构造模块化,易于实现。

产品和技术革新的日新月异都让人非常惊讶。

在电子科学技术高速开展的今天,高科技产品越来越多的应用在我们的日常生活中,给我们的生活带来了非常大的方便,每时每秒我们都能感受到产品的更新换代。

像平常我们工作所用的电脑、手机和生活所用的电视机,收音机,Mp3等等,这些高科技产品给我们带来了极大的方便,但这要归功于科学技术的高速开展。

一、设计要求⑴硬件设计:根据任务要求,完成单片机最小系统及其扩展设计。

⑵软件设计:根据硬件设计完成显示功能要求,完成控制软件的编写与调试;⑶功能要求:用S1启动秒表和停顿秒表,S2键将秒表归零,按一下S1,即开场定时,在数码管上每秒加1,加到60,归零。

51单片机课程设计报告

51单片机课程设计报告

51单片机课程设计报告一、课程目标知识目标:1. 理解51单片机的硬件结构、工作原理及其功能特点;2. 学会使用51单片机的指令系统进行程序设计;3. 掌握51单片机与外围电路的接口技术,能实现简单的硬件控制功能;4. 了解51单片机在嵌入式系统中的应用及发展趋势。

技能目标:1. 能够运用C语言编写51单片机的程序,实现基础控制功能;2. 能够运用仿真软件对51单片机程序进行调试,分析并解决简单问题;3. 能够设计简单的51单片机硬件系统,进行电路连接和功能测试;4. 培养学生的动手能力、创新能力和团队协作能力。

情感态度价值观目标:1. 培养学生对电子技术的兴趣,激发学习热情;2. 培养学生严谨、务实的科学态度,提高自主学习能力;3. 培养学生关注社会发展,了解科技在生活中的应用,增强社会责任感;4. 培养学生团队合作精神,尊重他人意见,善于沟通交流。

课程性质:本课程为实践性较强的电子技术课程,以51单片机为核心,结合硬件和软件,培养学生的实际操作能力和创新能力。

学生特点:学生具备一定的电子技术基础知识,对单片机有一定了解,但实践经验不足。

教学要求:结合学生特点,注重理论与实践相结合,强调动手实践,提高学生的实际操作能力和解决问题的能力。

通过课程学习,使学生能够独立完成简单的51单片机控制系统设计。

二、教学内容根据课程目标,教学内容分为以下几个部分:1. 51单片机硬件结构及原理- 熟悉51单片机的内部结构、引脚功能;- 掌握51单片机的工作原理及性能特点。

2. 51单片机指令系统与编程- 学习51单片机的指令集,理解各指令的功能和使用方法;- 掌握C语言在51单片机编程中的应用。

3. 51单片机外围接口技术- 学习51单片机与常见外围电路(如LED、LCD、键盘等)的接口技术;- 掌握外围设备的控制原理及编程方法。

4. 仿真软件的使用- 学习使用Keil、Proteus等仿真软件进行51单片机程序设计和调试;- 掌握仿真软件的操作方法,提高程序调试效率。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告指导老师:任家富学生:钟文旭学号:200906050415一、目的与意义《单片微机原理及应用》是一门技术性、应用性很强的学科,实验课教学是它的一个极其重要的环节。

不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验课教学。

如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节,学习与应用脱节的局面。

任随书本上单片微机技术介绍得多么重要、多么实用、多么好用,同学们仍然会感到那只是空中楼阁,离自己十分遥远,或者会因此对它失去兴趣,或者会感到它高深莫测无从下手,这些情况都会令课堂教学的效果大打折扣。

《单片微机课程设计》的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行单片机应用系统的开发设计工作打下一定的基础。

二、硬件电路图1、主板2、四位数码管3、八位LED流水灯4、蜂鸣器5、串口三、程序流程图五、实现的功能及现象1、键盘扫描输入当程序运行时,自动检测是否有按键按下,是哪个按键按下,并且通过返回值,在四位数码管上显示出按下键所对应的数字、字母或执行相应的功能。

2、四位数码管显示通过四位数码管显示相应的按键值、提示语或者执行相关功能。

3、八位流水灯程序运行时,当按下“B”功能键,八位流水灯依次循环点亮熄灭。

4、秒表程序运行时,当按下“C”功能键,数码管清零,从零开始逐秒增加。

5、串口通信程序运行时,当按下“F”功能键,数码管显示“232C”,提示进行串口输入,当从串口助手中输入控制字符时,八位LED灯得到对应的结果。

例如:当输入“00”时,八位灯全亮;当输入“AA”时,八位灯间隔亮。

单片机万年历课程设计报告

单片机万年历课程设计报告

单片机万年历课程设计报告一、课程设计目标本课程设计旨在帮助学生掌握单片机应用基础知识,学习并完成万年历电路的设计和代码编写。

通过这个实践,学生将会深入理解单片机在实际生活中的应用,同时提升自己的程序设计和解决问题的能力。

二、课程设计内容1. 万年历电路的原理和设计本次课程设计要求学生完成一个万年历电路的设计,包括硬件电路和程序设计。

在电路设计中,学生需要考虑到显示器、时钟模块、日期模块和温湿度传感器等部分的连接和调试。

在程序设计方面,学生需要实现万年历的功能,包括显示当前日期和时间、自动确定闰年、节假日提示等。

2. 单片机基本原理和应用实践在万年历电路设计之前,本课程将会对单片机基本原理进行介绍,包括单片机内部结构、芯片选型和I/O口控制等。

另外,还将介绍单片机在各种应用场景中的应用实践,如遥控、电脑控制、机器人和智能家居等。

3. 问题解决和困难克服在学生完成万年历电路设计的过程中,难免会遇到各种问题和困难。

本课程将对学生进行相关的实用技巧和方法讲解,帮助他们解决问题和克服难关。

三、课程设计流程1. 单片机基础知识介绍(2学时)讲解单片机内部结构及其原理,并介绍单片机应用实践2. 万年历电路设计(12学时)对万年历的硬件和软件进行介绍,包括连接显示器和外设、编写程序等3. 问题解决(2学时)介绍学生应对问题的技巧和方法,并帮助他们克服电路设计中的问题和难点四、课程设计评价标准1. 设计成果设计成果的好坏是课程设计的重要衡量标准之一,包括电路的设计完整性、软件功能实现等方面。

2. 实践能力课程设计是一种实践性强的学习形式,学生需要通过实践来掌握知识,因此他们的实践能力成为衡量标准之一。

3. 团队合作在课程设计的过程中,学生要协同工作,完成一个大型的项目,因此团队合作能力是衡量标准之一。

4. 学习的态度学习态度是衡量标准之一,包括学生在课程设计中的主动性、积极性和责任感等方面。

五、总结通过这个万年历课程设计,学生不仅学会了单片机应用的基础知识,还掌握了实际项目开发的方法和技巧。

STC12C5A60S2单片机课程设计报告

STC12C5A60S2单片机课程设计报告

一、课程设计基本情况介绍课程设计的基本目的与任务本课程设计旨在驾驭本专业学生理论指导实践能力以及电子产品工程设计与开发能力。

本实践课所要达到的主要目的是:1、通过本次课程设计,是对学生综合能力的检,提高学生综合运用专业知识,强化单片机应用系统设计与防震能力。

2、本次课程设计是在生产实习所完成的“单片机核心板+电子钟模块+MP3模块+RFID模块+无线传输模块+GPS模块+脉搏传感模块”的基础上设计该硬件系统的工作程序。

课程设计的基本内容1、在生产实习设计单片机硬件系统的基础上,设计相应的应用软件系统。

2、在LCD1602上显示学号程序设计。

3、基于DS1302的实时时钟软件设计。

4、基于DS18B20的温度测量软件设计。

5、基于TL1838A的红外遥控解码软件设计。

6、设计应用软件系统框图和流程图,完成所设计软件的调试。

课程设计的教学要求1、通过资料查阅及学习了解单片机应用系统的软件设计方法及单片机编程、软硬件联机调试技巧。

2、独立设计并编写下列应用程序:(1)LCD1602学号显示程序;(2)DS1302实时时钟程序;(3)DS18B20温度测量程序;(4)TL1838A红外遥控解码程序;3、独立完成所设计程序与硬件系统的联机仿真。

二、整机系统框图(硬件、软件)该设计方案是以STC12C5A60S2单片机为核心,采用LCD液晶屏幕显示模块、实时时钟模块、温度测量模块、红外遥控解码等模块所构建的系统,能在LCD1602液晶屏上显示当前的日期(年、月、日)、时间(时、分、秒)数据、当前环境温度值和红外遥控解码值。

用户可通过遥控器或单片机核心板上的按键来进行日期和时间的设置。

本系统设计大部分功能由软件来实现,电路简单明了,系统稳定性也得到大大提高。

1、总体硬件设计框架图:2、总体软件设计框架图图为电子时钟程序设计流程图。

图电子时钟程序设计流程图 2、温度测量模块温度测量程序主要包括主程序,读出温度子程序,温度转换子程序,计算温度子程序,显示数据子程序等。

单片机电子时钟课程设计报告

单片机电子时钟课程设计报告

单片机电子时钟课程设计报告一、设计目的。

本课程设计旨在通过单片机技术的应用,设计并制作一个简单的电子时钟。

通过这一设计,学生将能够掌握单片机的基本原理和应用,培养学生的动手能力和创新意识,提高学生的实际操作能力。

二、设计原理。

本电子时钟采用单片机作为控制核心,通过晶振产生的时钟信号来实现时间的计时和显示。

利用数码管来显示小时和分钟,通过按键来调整时间。

同时,通过蜂鸣器发出报时信号,实现基本的闹钟功能。

三、设计方案。

1. 硬件设计。

(1)单片机选择,本设计选用常见的51单片机作为控制核心,具有成本低、易于编程的特点。

(2)时钟电路,采用晶振作为时钟信号源,通过单片机的定时器来实现时间的计时。

(3)显示模块,采用数码管来显示小时和分钟,通过数码管的扫描显示来实现时间的动态显示。

(4)按键输入,设计按键来调整时间,包括调整小时和分钟。

(5)报时功能,通过蜂鸣器来实现基本的报时功能,可以设置闹钟时间。

2. 软件设计。

(1)时钟控制,通过单片机的定时器来实现时间的计时和更新。

(2)显示控制,设计数码管的扫描显示程序,实现时间的动态显示。

(3)按键处理,设计按键扫描程序,实现对时间的调整。

(4)报时功能,设计蜂鸣器的报时程序,实现基本的闹钟功能。

四、设计实现。

1. 硬件实现。

根据上述设计方案,完成了电子时钟的硬件连接和布线,保证各个模块之间的正常通讯和工作。

2. 软件实现。

编写了单片机的程序,实现了时钟的计时、显示和控制功能,保证了电子时钟的正常运行。

五、实验结果。

经过调试,电子时钟能够准确显示当前的时间,并能够通过按键调整时间和设置闹钟功能,报时功能也能够正常工作。

六、总结与展望。

通过本课程设计,学生掌握了单片机的基本原理和应用,培养了动手能力和创新意识。

在今后的学习和工作中,学生将能够更好地应用单片机技术,设计和制作更加复杂的电子产品。

同时,也为学生今后的科研和创新工作奠定了良好的基础。

单片机课程设计报告

单片机课程设计报告

单片机课程设计实验报告设计题目:基于单片机的多功能综合应用系统的设计专业:电子信息工程班级:姓名:指导老师:目录第一章设计说明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键盘的输入功能。

单片机课程实验报告

单片机课程实验报告

《单片机原理及应用》课程设计报告课题:单片机多功能系统设计班级电子1071班学号 1071205236学生姓名张亮亮专业电子信息工程系别电子与电气工程学院指导教师朱霞,付丽辉淮阴工学院电子信息工程系20010年9月目录一. 设计目的及意义。

(2) 二.设计过程。

(2) 三.硬件电路总体设计。

(3) 3.1 系统硬件总框图。

(3)3.2 系统设计原理3、2、1 系统处理器。

(3)3、2、2 LED流水灯。

(4)3、2、3 扬声器模块。

(5)3、2、4数码管。

(6) 四.硬件Proteus仿真图。

(7) 五.软件流程框图。

(8) 六.程序清单及注释。

(9) 七.软件调试。

(13) 八.心得体会。

(14) 九.参考文献。

(15)一、设计目的及的意义《单片机原理及应用》课程设计是一项重要的实践性教育环节,是学生在校期间必须接受的一项工程训练。

在课程设计过程中,在教师指导和同学帮助下,应用工程的方法,通过一个简单课题的设计练习,可使学生初步体验单片机应用系统的设计过程、设计要求、完成的工作内容和具体的设计方法,了解必须提交的各项工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。

通过课程设计,能加强我们多项能力的培养:(1)独立工作能力和创造力;(2)综合运用专业及基础知识,解决实际工程技术问题的能力;(3)查阅图书资料、产品手册和各种工具书的能力;(4)工程绘图的能力;(5)编写技术报告和编写技术资料的能力。

二、设计过程(1)认真研究设计任务书,明确设计要求、条件、内容和步骤;复习课程有关内容,熟悉有关单元电路的设计方法和步骤;搜集、分析、消化相关资料、软件等;掌握微型计算机应用系统软件设计方法;准备好设计需要的图书、资料和工具;拟定设计计划等;(2)系统总体及功能设计,制定总体方案及元器件的选择;(3)硬件设计,完成硬件结构图设计、系统电路图设计和绘制及电路模块的连接;(4)软件设计,完成软件流程图的设计、程序设计与调试;(5)系统程序调试;(6)设计工作总结;(7)写出设计报告。

单片机原理及应用课程设计报告

单片机原理及应用课程设计报告
培养实践能力和创新思维
课程设计为学生提供了一个实践平台,学生可以在实践中锻炼动手能力,培养解决实际问题的能力,同时通过创新思 维,设计出具有特色的单片机应用系统。
促进理论与实践相结合
单片机原理及应用课程设计将理论知识与实践操作相结合,使学生能够更好地理解单片机的实际应用场 景,加深对理论知识的理解。
时间安排
共计8周,每周5天, 每天8小时。
04
单片机应用实践
单片机外围电路设计
电源电路
为单片机提供稳定的电源,确 保单片机正常工作。
时钟电路
为单片机提供稳定的时钟信号 ,保证程序正常运行。
复位电路
在单片机出现异常时,能够实 现自动复位或手动复位。
输入输出接口
实现单片机与外部设备的通信 和控制。
单片机程序编写与调试
单片机的编程语言和开发环境
单片机的编程语言主要有汇编语言和C语言。汇编语言是一种低级语言,直接控制硬件操作,但编程 难度较大;C语言是一种高级语言,具有可读性强、易于编程和维护等优点。
单片机的开发环境是指用于编写、编译、调试和烧录程序的软件环境。常用的单片机开发环境有Keil 、IAR、SDCC等。这些开发环境都支持汇编语言和C语言编程,提供了丰富的库函数和调试工具,方 便开发者进行单片机应用开发。
• 解决方案
检查数码管的位选信号和段选信号是否正确连接。
对未来学习和实践的建议与展望
深入学习
进一步研究单片机的内部结构和工作原理,掌握 更多高级功能和应用。
实践应用
将所学知识应用到实际项目中,提高解决实际问 题的能力。
持续学习
关注单片机技术的最新发展动态,保持学习的持 续性。
THANKS
感谢观看

单片机课程设计报告-数字温度计

单片机课程设计报告-数字温度计

单片机课程设计报告-数字温度计单片机是一种集成了微处理器核心、存储器、外围接口和定时器等功能模块的微型计算机。

在现代电子科技领域中,单片机被广泛应用于各种嵌入式系统中。

本课程设计主要针对单片机的应用实践,通过设计一个数字温度计来锻炼学生的单片机编程能力,同时加深对数字温度计的原理及应用的理解。

二、设计目标本课程设计旨在使学生掌握以下内容:1. 掌握单片机的基本原理和编程方法;2. 了解数字温度计的原理和应用;3. 熟悉温度传感器的使用和数据处理方法;4. 能够利用单片机开发出一个简单的数字温度计。

三、设计内容本课程设计主要包括以下内容:1. 单片机原理和编程基础;2. 数字温度计的原理和应用介绍;3. 温度传感器的选型及使用方法;4. 单片机数字温度计的设计和实现。

四、设计步骤1. 单片机原理和编程基础学生首先将学习单片机的基本原理和编程方法,包括单片机的体系结构、存储器组成、I/O口的使用、定时器的应用等内容。

2. 数字温度计的原理和应用介绍学生将了解数字温度计的基本原理和应用场景,包括数字温度计的工作原理、常见的数字温度计种类、数字温度计的应用领域等。

3. 温度传感器的选型及使用方法学生将学习温度传感器的选型原则,了解各种温度传感器的特点及使用方法,包括模拟温度传感器和数字温度传感器。

4. 单片机数字温度计的设计和实现学生将利用所学的单片机编程知识和温度传感器的使用方法,设计并实现一个简单的数字温度计。

学生需要考虑温度测量精度、显示方式、数据处理方法等问题。

五、教学方法本课程设计采用理论教学与实践相结合的教学方式,通过理论课堂讲解和实际操作演示相结合,加深学生对单片机和数字温度计知识的理解和掌握。

同时,鼓励学生合作学习,共同解决实际问题,提高实战能力。

六、教学评估学生将根据设计的数字温度计的实际测量情况、数据处理方法以及最终的效果进行评估,教师将根据学生的设计方案和实际操作情况进行评分。

同时,学生对单片机编程的理解和掌握水平也将作为评估的重要内容。

单片机课程设计报告--高云

单片机课程设计报告--高云

临沂师范学院信息学院07级电子信息科学与技术高云 200707840111一、实验目的:1.掌握在8031系统中扩展8279键盘显示接口的方法。

2.掌握8279的工作原理和编程方法。

3.进一步掌握中断处理程序的编程方法。

二、实验设备:CPU挂箱、8031CPU模块三、实验内容:利用8279键盘显示接口电路和实验箱上提供的6个数码显示,做成一个电子钟。

四、实验原理:利用8279可实现对键盘/显示器的自动扫描,以减轻CPU的负担,且具有显示稳定、程序简单、不会出现误动作等特点。

本实验利用8279实现显示扫描自动化。

8279操作命令字较多,根据需要来灵活使用,通过本实验可初步熟悉其使用方法。

电子钟做成如下格式:HHMMSS 由左向右分别为时、分、秒的十位、个位。

五、实验原理图:六、程序框图:七、实验程序NAME SHIZHONGPORT EQU 0CFE8HBUF EQU 23H ;存放计数值SBF EQU 22H ;存放秒值MBF EQU 21H ;存放分值HBF EQU 20H ;存放时值CSEG AT 0000HLJMP STARTCSEG AT 401BHLJMP CLOCKCSEG AT 4100HSTART: MOV R0,#40H ;40H-45H是显示缓冲区,依次存放 MOV A,#00H ;时高位、时低位,分高位、分低位, MOV @R0,A ;以及秒高位、秒底位INC R0MOV @R0,AINC R0MOV @R0,AINC R0MOV @R0,AMOV @R0,AINC R0MOV @R0,AMOV TMOD,#10H ;定时器1初始化为方式1MOV TH1,#3CH ;置时间常数,延时0.1秒MOV TL1,#0B0HMOV BUF,#00HMOV SBF,#55H ;置显示时间初值MOV MBF,#58HMOV HBF,#23HSETB ET1SETB EASETB TR1 ;计时开始DS1: MOV R0,#45H ;置显示缓冲区首址MOV R2,#5H ;置扫描初值,点亮最左边的LED6 DS2: MOV DPTR,#PORT+1MOV A,R2ORL A,#80HMOVX @DPTR,AMOV DPTR,#PORTMOV A,@R0 ;得到的段显码输出到段数据口 ACALL TABLEMOVX @DPTR,AMOV R3,#0FFH ;延时一小段时间DEL: NOPDJNZ R3,DELDEC R0 ;显示缓冲字节加一CLR CDEC R2MOV A,R2 ;最末一位是否显示完毕?,如无则 INC AJNZ DS2 ;继续往下显示MOV R0,#45HMOV A,SBF ;把秒值分别放于44H,45H中ACALL GETMOV A,MBF ;把分值分别放入42H,43H中MOV A,HBF ;把时值分别放入40H,41H中ACALL GETSJMP DS1 ;转DS1从头显示起TABLE: INC A ;取与数字对应的段码MOVC A,@A+PCRETDB 3FH,06H,5BH,4FH,66H,6DH,7DH, 07H, 7FH,6FHGET: MOV R1,A ;把从时或分或秒字节中取来的值高ANL A,#0FH ;位屏蔽掉,并送入缓冲区MOV @R0,ADEC R0MOV A,R1 ;把从时或分或秒字节中取来的值低SWAP A ;位屏蔽掉,并送入缓冲区ANL A,#0FHMOV @R0,ADEC R0 ;R0指针下移一位RETCLOCK: MOV TL1,#0B0H ;置时间常数MOV TH1,#3CHPUSH PSWPUSH ACCINC BUF ;计数加一MOV A,BUF ;计到10否?没有则转到QUIT退出中断 CJNE A,#0AH,QUITMOV BUF,#00H ;置初值MOV A,SBFINC A ;秒值加一,经十进制调整后放入DA A ;秒字节MOV SBF,ACJNE A,#60H,QUIT ;计到60否?没有则转到QUIT退中断 MOV SBF,#00H ;是,秒字节清零MOV A,MBFINC A ;分值加一,经十进制调整后放入DA A ;分字节MOV MBF,ACJNE A,#60H,QUIT ;分值为60否?不是则退出中断MOV MBF,#00H ;是,清零MOV A,HBFINC A ;时值加一,经十进制调整后放入DA A ;时字节MOV HBF,ACJNE A,#24H,QUIT ;时值为24否?不是则退出中断MOV HBF,#00H ;是,清零QUIT: POP ACCPOP PSWRETI ;中断返回END八、实验步骤:本试验不必接线。

单片机课程设计报告(五人表决器)

单片机课程设计报告(五人表决器)

目录一、方案设计 (2)二、硬件电路设计 (2)三、软件设计说明 (6)四、程序清单 (7)五、制作调试说明 (12)六、操作使用说明 (13)七、总结 (13)单片机课程设计一、方案设计1、设计题目:5人表决器2、设计要求:1)、可供5—7个人进行表决,每个人有一个“同意”和一个“反对”按键,故一个人需要两个按键,表决时两个键先按下的一个有效,同时按下则表示无效,每次表决每个按键只能是第一次按下的有效,多按无效,用单片机设计表决器是硬件电路与软件设计相结合的一种设计,因此在硬件电路只能实现按键的按下与释放,不能智能的实现检测按键被按下几次,则可用软件设计来实现其功能。

2)会议主持人可利用按键控制表决的开始与结束,点亮黄灯用于显示表决开始,熄灭黄灯表示结束,并将表决结果用红灯与绿灯显示。

当不相等时,“同意”多于“反对”点亮绿灯,“同意”少于“反对”点亮红灯。

3)在实现上述功能的基础上增加“同意”数和“反对”数的显示。

二、硬件电路设计1、硬件设计思路:此次设计的题目是5人表决器,分析得设计的硬件电路选用P1口与P2口作为同意与反对按键的输入端。

又表决的开始与结束是由主持人来控制的,因此需要两个按键来表示表决的开始与结束,因此可采用外部中断0与外部中断1来控制表决的开始于结束。

故设计总共需要按键12个。

设计要求中需要四盏灯,分变为一个黄灯,一个绿灯和二个红灯,三盏灯用于输出显示,因此也可以征用单片机的I/O口,由于P1口与P2口作为同意与反对按键的输入端且P0口当做输出端口时可以不用接上拉电阻,因此可将三个显示灯接在P0口用于显示表决的结果。

还有一盏红灯用来做电源指示灯。

2、元器件参数确定:设计要求中需要三盏灯(黄灯,绿灯和红灯)用于输出显示,选用P0口的3个端口与显示灯相连接用于输出,由于输出端口输出的高电平一般为5V,而发光二极管允许的最大电流为5mA,因此需要用到限流电阻,发光二极管可降2V的电压,则限流电阻上的压降为3V,那么限流电阻的最小阻值为R=3V/5mA=600欧姆,由于输出的高电平不是5V,故用510欧姆的限流电阻。

单片机课程设计报告

单片机课程设计报告

摘要单片机课程设计主要是让我们增进对c51单片机的感性认识,加深对理论方面的理解。

了解软硬件之间的有关知识,并掌握软硬件的设计过程、方法及实现,为以后的设计和实现应用系统打下良好基础。

本次课程设计主要完成跑马灯及闪烁灯的实验设计。

首先通过Protel 99 SE 或proteus ISIS 画好原理图,然后将绘制好的原理图在PCB 面板上制线,通过导入Keil C 的设计好的汇编语言程序,完成模拟和仿真,最后将所模拟的程序导入已做好的AT89C51芯片上完成功能演示整个过程。

最终根据要求完成所有步骤,实现了预期演示跑马灯、流水灯、闪烁灯任务。

关键词:单片机、软件、硬件、跑马灯、流水灯、闪烁灯、印制板图、程序、数码管 AbstractSCM curriculum design is mainly let us enhance perceptions of the C51microcontroller, to deepen theoretical understanding. Understanding of relevant knowledge between hardware and software, and master the design process ofhardware and software, and the method of realization, and lay a good foundation for the design and implementation of application system. The experimental design of this course design mainly completes the marquee and flashing lights. Through the first Protel 99 SE or Proteus ISIS drawing principle diagram, and then draw principle of good business line in the PCB panel design, through the introduction of Keil C good assembly language program to complete the simulation, finally Complete the whole process of AT89C51 chip demo program to import the simulation done. Finally according to the requirements to complete all the steps to achieve the desired presentation marquees, lights, flashing lights.Keyword:SCM, software, hardware, marquees, lights, flashing lights, printed circuit board diagram, program, digital tube—————————————————————————装订线————————————————————————————————引言本次课程设计通过对单片机的学习和认识,单片机最小系统是在以MCS-52单片机为基础上扩展,使其能更方便地运用于测试系统中,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被测试的技术指标,从而能够大大提高产品的质量和数量。

单片机课程设计报告

单片机课程设计报告

(此文档为word格式,下载后您可任意编辑修改!)目录一、课程设计的目的………………………………………………二、课程设计用的仪器和器件……………………………………………三、课程设计的具体内容…………………………………………………1、总体报告…………………………………………………………………2、硬件设计…………………………………………………………………3、软件流程和程序…………………………………………………………4、调试结果…………………………………………………………………四、课程设计的体会和发生的问题……………………………………参考文献………………………………………………………………………一、课程设计的目的单片机系统课程设计是《单片机原理与接口技术》课程与实验结束后的一门综合性实践课。

所选题目《交通灯控制系统》紧密结合所学的主要内容,加深巩固所学知识,同时对所学内容进行扩展,有一定的深度和广度,能充分发挥学生的能动性和想象力。

通过电路设计、安装、调试等一系列环节的实施,提高学生的单片机应用系统的设计能力。

二、课程设计用的仪器和器件实验设备:试验台、电烙铁、焊锡丝、支架、吸枪、剪刀、PC机一台、仿真仪一台实验材料:电路板(12*8 cm 1块)、发光二级管(红、黄、绿各4只)、发光二级管插座(4只)、接线排座(7针)、电阻(300Ω 12只)、导线(红、黄、绿各0.5米)三、课程设计的具体内容1、总体报告本次单片机课程设计的任务是以单片机为核心设计一个完整的交通灯模拟系统,用P1.0、P1.1、P1.2控制南北通道的红、黄、绿灯;用P1.3、P1.4、P1.5控制东西通道的红、黄、绿灯。

开始时,南北红灯亮并保持25秒,同时东西绿灯亮,保持20秒,20秒钟到了之后,东西绿灯闪亮3次(每周期1秒)后熄灭。

继而东西黄灯亮并保持2秒,到2秒后,东西黄灯灭,东西红灯亮并保持25秒,同时南北红灯灭,南北绿灯亮20秒,20秒到了之后,南北绿灯闪亮3次(频率为0.5秒)后熄灭。

《单片机课程设计》报告

《单片机课程设计》报告

机械与车辆学院课程设计题目:姓名:学号:班级:指导老师:时间:成绩:水塔水位控制系统职称:《单片机课程设计》考查评分表、出勤率:□全勤□缺勤较少□缺勤较多□全缺(20%) 2、进度:□较快□正常□较慢□没有按时完成布局焊接:□合理(20%) □错误较多□较合理□原则性错误□基本合理1、程序编写框架:□合理□较合理□基本合理(20%) (10%) (15%) (15%)□原则性错误□基本正确□错漏较多系统调试结果:□实现□基本实现□不能实现1、硬件设计:2、软件设计:3、联调结果:4、过程体味:□合理□合理□正确□属实□较合理□较合理□较正确□较属实□基本合理□基本合理□基本正确□基本属实□不合理□不合理□错漏较多□不属实□思路清晰,内容正确□思路基本清晰,内容基本正确指导教师:吴明友 2022 年 1 月 3 日□错误较多2、程序编写过程:□正确□较正确□思路较清晰,内容较正确□思路较混乱,内容错漏较多一、课程设计性质和目的 (4)二、课程设计的内容及要求 (4)1、硬件设计 (4)2、软件设计 (5)3 、功能要求: (5)三、课程设计的进度及安排 (5)四、设计所需设备及材料 (6)五、设计思路及原理分析 (7)六、流程图及程序编写 (7)(1)根据功能要求画出控制程序流程图。

(8)(2)根据控制程序流程图编写C51 程序 (8)七、调试运行 (10)1 、软件测试: (10)2、硬件测试: (11)八、结果及分析 (12)九、心得体味 (13)十、参考文献 (14)十一、致谢 (14)十二、附录 (15)【1】整流器protel 防真原理图: (15)【2】数字时钟 (16)单片机课程设计是《单片机原理与接口技术》课程与实验结束后的一门综合性实践课。

设计一种基于单片机水塔水位检测控制系统。

该系统能实现水位检测、机电故障检测、处理和报警等功能,实现超高、低警戒水位报警,超高警戒水位处理。

介绍电路接口原理图,给出相应的软件设计流程图和汇编程序,并用Proteus 软件仿真。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理与接口技术综合实践说明书课程名称:微机原理与接口技术课程设计设计题目:交通信号灯控制系统设计时间:2013年7月1日至2013年7月11日摘要:近年来随着科技的迅猛发展,单片机的种类不断的增多,功能日趋强大,相应的,对他的应用也在正在不断地深入,深入到了我们日常生活的点点滴滴,比如说我们的电子表、热水器、空调等家电,都有单片机控制系统的影子。

另外,在对信号的实时检测和机构的各种自动控制系统中,单片机也常被作为一个核心部件来使用。

交通信号灯使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事中应用了8155接口芯片、74LS14芯片以及8*8点阵,比较完整的对实际的系统进行了模仿,系统除了包括常规交通灯的控制疏导功能外,还具有紧急情况亮红灯、LED倒计时显示、某一向道路绿灯常绿,复位等功能。

本文比较详细的介绍了该系统的基本原理及接口电路,以及在电路中用到的一些硬件设备。

关键词:交通信号灯、单片机、接口电路目录1任务要求 (2)1.1应用系统实现功能: (2)1.2关键技术难点: (2)1.3工具: (3)2工作计划安排: (3)3系统设计 (3)3.1硬件设计: (3)3.1.1系统总框图: (4)3.1.2 LED接口电路 (4)3.1.3按键电路: (5)3.1.4单片机系统: (6)3.1.5交通灯演示模块: (6)3.1.6其它硬件元件 (7)3.1.7硬件电路原理图 (8)3.2软件设计 (9)3.2.1交通灯的三种状态 (9)3.2.2程序流程图 (9)3.2.3源程序清单 (13)4设计分工: (19)5参考文献 (20)1任务要求1.1应用系统实现功能:1、十字路口常规自动控制,南北方向与东西方向红、黄、绿灯的自动切换,点阵LED2、按键实现人工控制,如实现双向红灯,某一向常绿,或人工调节自动控制中的红\绿灯时间。

1.2关键技术难点:扩展8*8点阵LED显示器一块,设计按键4个,两组(红、黄、绿)模拟交通灯的发光二极管。

1.3工具:1、电烙铁2、电烙铁架3、镊子4、小螺丝刀5、偏口钳6、焊锡7、电路板2工作计划安排:3系统设计3.1硬件设计:系统的核心部分为89C51和8155芯片,一方面通过接口电路89C51控制交通灯的正常显示,另一方面通过8155芯片控制LED倒计时,同时通过K1,K2,K3,K4按键的中断响应再控制交通灯演示模块,按键中断也由89C51控制。

3.1.1系统总框图:3.1.2 LED接口电路连接方式:LED点阵由8155芯片控制,8155的A口和B口均选用输出方式,该LED 为8*8共阳数码显示点阵管,其连接方式如图1:图1 LED点阵图要使点阵上Aa二极管点亮,则A为高电平,a为低电平。

其余依此类推。

因第一排至第八排发光二极管的阳极是连接在一起的,因此,该点阵为共阳点阵。

当然我们也可以理解成共阴连接方式。

显示方式:扫描字由PA口控制,数据由PB口控制。

根据8155与89C51的连接方式可以确定8155的命令状态口以及A、B口的地址。

连接电路如图2:图2 8155与LED连接电路图3.1.3按键电路:按键电路原理图如图3:图3 按键电路原理图它由按键K1,K2,K3,K4 组成,如图3,若闭合按键,由于按键系统接地,给0电平,通过反向器后变为高电平1送给系统响应。

各个口的响应由89C51的P3口来进行控制。

3.1.4单片机系统:由89C51和8155两块芯片组成,系统的主控制器,用以控制其他模块协调工作。

89C51与交通灯演示模块的接口电路图如图4:图4 89C51与交通灯演示模块的接口电路图3.1.5交通灯演示模块:该模块由12个发光二极管构成,由 P1口控制,每位控制相对方向相同颜色的两个灯的亮暗,P1.0控制灯1、2,P1.1控制灯3、4,P1.2控制灯5、6……以次类推。

由图示看出当P1都给高电平1时,经过反向器变为低电平0,二极管通,灯亮。

连接图如图5所示:图5交通灯演示模块连接图3.1.6其它硬件元件74LS14:六反相器,主要作用就是反向,它的逻辑图如图6所示:引出端符号:1A-6A 输入端1Y-6Y 输出端图6 74LS14逻辑图三极管:依照极性可分成NPN 、PNP 两种类,本实验使用的是PNP型三极管3.1.7硬件电路原理图3.2软件设计3.2.1交通灯的三种状态(1)正常状态下红绿灯的定时切换。

切换时间在本组设计为8s初始化后,两个方向通行时间相等。

各灯运行及倒计时情况良好。

倒计时显示的字为“15 14 13 12…… 05 04 03 02 01 00”,在倒计时为“03 02 01”时绿灯变黄灯,黄灯闪烁6次。

(2)按一下K1键,南北向绿灯常亮,无倒数计时,LED显示器显示南北方向的箭头。

再按一下k1键,东西向绿灯常亮,无倒数计时,LED显示器显示东西方向的箭头。

两者交替进行。

(k1按键的指令是通过判断p2.1口的高低电平来执行的,期间检测k1与k4按键)(3)按K2键,切换倒计时的显示动画方式。

(k2按键的功能带有延续性,即k3,k4口复位后k2口功能不初始化。

)(4)按键K3后,出现黄灯闪烁三次,然后出现灯全红状态,LED显示字“X”。

当再按一下该键,黄灯闪烁,LED回到进入黄灯前的状态,继续完成按键K3前的程序。

(5)按复位键K4,灯会恢复到初始状态重新循环。

(通道由F0标志位决定)示意图如图7所示:图7 交通灯示意图3.2.2程序流程图程序总共有三大部分,分别是主程序(按键服务程序)、按键中断子程序、显示子程序。

通过原理图可以看出,判断是否有按键是通过判断89C51的P3口的各个位的电平信号。

3.2.3源程序清单ORG 0000HAJMP MAINORG 000BHAJMP ZDORG 0100HMAIN: MOV A , #00111111BMOV P1, AMOV TMOD,#01H ;定时器初始化MOV IE,#82HMOV TH0,#3CH ;设置50ms中断MOV TL0,#0B0HMOV R2,#20MOV R3,#30 ;设置红灯时间为30 SMOV R6,#20 ;设置红灯时间为20 SKPP: MOV 50H,R3MOV R7,#01HMOV A,#11100001B ;点亮路口1红灯与路口2绿灯MOV P1,ACYCLE: ACALL KEY ; 调用键盘扫描程序ACALL DISPLAY ; 调用显示程序AJMP CYCLE ; 循环KEY: ACALL KEY1 ; 键盘扫描子程序CJNE R4,#0FFH,PROKEY ;有键按下转到PROKEY执行AJMP NOKEY ;无键按下转到NOKEY执行PROKEY: MOV DPTR,#KEYTAB ;按键表首地址CLR CRLC A ;为查表正确,累加器变量乘2JMP @A+DPTRKEYTAB: AJMP K1 ;按键表AJMP K2AJMP K3AJMP K4NOKEY: AJMP KD ;无按键时返回K1: CLR TR0 ; 按键1子程序,关闭中断MOV A,#11001001B ; 点亮双向红灯MOV P1,AMOV DPTR,#0100H ;关闭LED显示MOV A,#03HMOVX @DPTR,AMOV DPTR,#0101HMOV A,#0FFHMOVX @DPTR,ADP1: MOV A,P3 ; 判断按键1是否按下CJNE A,#0F1H,DP1 ; 没有则循环判断等待ACALL DEL0 ;有按键1延时消抖ACALL COM ;松手检测AJMP KPP ; 返回初始化K2: CLR TR0 ; 按键2子程序,关闭中断MOV A,#11100001B ; 设置路口1常绿MOV P1,AMOV DPTR,#0100H ;关闭显示MOV A,#03HMOVX @DPTR,AMOV DPTR,#0101HMOV A,#0FFHMOVX @DPTR,ADP2: MOV A,P3 ; 判断按键2是否按下CJNE A,#0F2H ,DP2 ; 没有则循环判断等待ACALL DEL0 ; 有按键2延时消抖ACALL COM ;松手检测MOV A,#11001100B ; 设置路口2常绿MOV P1,ADP3: MOV A,P3 ; 判断按键2是否按下CJNE A,#0F2H ,DP3 ; 没有则循环判断等待ACALL DEL0 ; 有按键2延时消抖ACALL COM ;松手检测MOV A,#11100001BMOV P1,AAJMP KPP ; 返回初始化K3: INC R3 ; 按键3子程序红灯时间加1 CJNE R3,#99,HP ; 若增加至99则从0重新开始MOV R3,#00HHP: AJMP KPP ; 返回红灯倒计时K4: INC R6 ; 按键3子程序红灯时间加1 CJNE R6,#99,HP1 ; 若增加至99则从0重新开始MOV R6,#00HHP1: AJMP KPP1 ; 返回绿灯倒计时KD: RET ; 子程序返回KEY1: MOV A,P3 ;按键扫描子程序XRL A,#0F0H ;各位取反JZ RETURN ;无键按下,转到RETURN执行ACALL DEL0 ;有键按下,延时消抖MOV A,P3 ;再读入各按键状态MOV R5,AXRL A,#0F0HJZ RETURN ;无键按下,转到RETURN执行CJNE R5,#0F1H,NEXT1 ;不是按键1转到NEXT1执行MOV R4,#0 ;将对应按键表中偏移量送入R4SJMP COM ;执行松手检测NEXT1: CJNE R5,#0F2H,NEXT2 ;不是按键2转到NEXT2执行MOV R4,#1SJMP COMNEXT2: CJNE R5,#0F4H,NEXT3 ;不是按键3转到NEXT3执行MOV R4,#2SJMP COMNEXT3: CJNE R5,#0F8H,RETURN ;不是按键4转到RETURN执行MOV R4,#3COM: MOV A,P3 ;松手检测XRL A,#0F0HJNZ COM ;等待,直到按键释放MOV A,R4SJMP RETURN1RETURN: MOV R4,#0FFH ;无键按下,给R4赋FFH RETURN1:RET ; 返回DEL0: MOV 40H,#18H ; 延时12msDEL2: MOV 41H,#0FFHDEL3: DJNZ 41H,DEL3DJNZ 40H,DEL2RETDISPLAY: SETB TR0 ; 显示子程序开启中断DISP: MOV R1,#53HMOV R0,#50H ; 显示的数放在50H中MOV A,@R0MOV B,#0AHDIV ABMOV @R1,A ; 显示的数十位放在53H中INC R1MOV @R1,B ; 显示的数个位放在54H中MOV R0,#53HMOV R4,#0FEH ; 列扫描初值ACALL DISINC R0ACALL DISMOV A,50HCJNE A,#00H,KPMOV A,R7CJNE A,#04H,KP7 ;判断是否为状态4AJMP KPP ; 是则返回状态1KP7: MOV A,R7CJNE A,#01H,KP2 ; 不是则判断是否为状态1 MOV A,#11010001B ; 是则调整为状态2MOV P1,AMOV 50H,#5 ; 黄灯时间5 SMOV R7,#02HAJMP KPKP2: MOV A,R7CJNE A,#02H,KP3 ; 不是则判断是否为状态2 KPP1: MOV A,#11001100B ; 是则调整为状态3 MOV P1,AMOV 50H,R6MOV R7,#03HAJMP KPKP3: MOV A,#11001010B ; 不是则调整为状态4 MOV P1,AMOV 50H,#5MOV R7,#04HKP: RETDIS: MOV 31H,#4 ;4列扫描显示子程序MOV A,@R0 ;取显示数字RL ARL A ;为查表正确,累加器变量乘4MOV R5,ALP: MOV DPTR,#0100H ;关显示MOV A,#03HMOVX @DPTR,AMOV A,#0FFHMOV DPTR,#0101HMOVX @DPTR,AMOV A,R5 ;查表变量送入ACCINC R5MOV DPTR,#DTAB ;字形表首地址MOVC A,@A+DPTR ;查表MOV R1,AMOV DPTR,#0100HMOV A,#03HMOVX @DPTR,AMOV DPTR,#0102HMOV A,R1MOVX @DPTR,A ;字形码输出MOV DPTR,#0100HMOV A,#03HMOVX @DPTR,AMOV A,R4MOV DPTR,#0101HMOVX @DPTR,A ;列扫描字输出RL A ;下一列MOV R4,AACALL DEL1 ;延时DJNZ 31H,LPRETDEL1: MOV 30H,#02H ; 延时子程序DL0: MOV 32H,#0FFHDL6: DJNZ 32H,DL6DJNZ 30H,DL0RETDTAB: DB 83H,7DH,7DH,83H ;0 行字型码表DB 0FFH,0BDH,01H,0FDH ;1DB 0B1H,6DH,6DH,9DH ;2DB 0BBH,6DH,6DH,93H ;3DB 0E7H,0D7H,01H,0F7H ;4DB 0DH,6DH,6DH,73H ;5DB 83H,6DH,6DH,0B3H ;6DB 3FH,7FH,41H,3FH ;7DB 93H,6DH,6DH,93H ;8DB 9BH,6DH,6DH,83H ;9ZD: DJNZ R2,LOOP ;中断服务子程序MOV R2,#20DEC 50H ; 满1S显示数减1 LOOP: MOV TH0,#3CHMOV TL0,#0B0HRETIEND ; 返回4设计分工:组长:李艾桐分工: 李逢源、任俊查资料、编写LED点阵显示程序、以及对全部程序整理。

相关文档
最新文档