版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机应用与实践教师:黄荻TelQ:346140763项目二计数器的设计与制作任务描述完成简单计数器的设计与制作。计数器功能描述:
上电复位时,数码管显示0,利用两个按钮(开发板上的S2、S3)做外部中断输入,按下S2显示数据加1,按下S3显示数据减1,当计数小于0时,显示0并蜂鸣器发“嘟”声提示,计数大于9时,显示9并蜂鸣器发“嘟”声提示。软件平台:keilC51、Proteus、EASY下载软件;硬件平台:STC单片机开发板学习目标进一步理解51单片机内外资源、最小系统;进一步熟练51单片机C语言编程方法;掌握MCS-51系列单片机中断系统的应用;掌握MCS-51系列单片机定时\计数器系统的应用;掌握MCS-51系列LED显示接口技术应用;学会一般单片机控制系统样机的设计、制作与调试流程。相关知识——STC单片机结构(复习)相关知识——STC单片机引脚与最小系统(复习)相关知识——MCS-51的中断系统中断的概念计算机在执行程序的过程中,当出现CPU以外的某种情况,由服务对象向CPU发出中断请求信号,要求CPU暂时中断当前程序的执行,转去执行相应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序。这种程序在执行过程中被中间打断的情况称为“中断”。“中断”之后所执行的相应的处理程序称为中断服务或中断处理子程序,原来正常运行的程序称为主程序。主程序被断开的位置(或地址)称为“断点”。引起中断的原因,或能发出中断申请的来源,称为“中断源”。中断源要求服务的请求称为“中断请求”(或中断申请)。中断示意图类比——C语言中函数的调用main函数调用a函数结束a函数调用b函数a函数结束b函数b函数结束结论:(1)MC-51的中断服务程序以函数的方式出现;(2)中断区分于一般函数调用的是中断源;(3)单片机中断的嵌套需区分中断请求的优先级。STC12C5A60S2(增强型51单片机)中断源(10个)中断的处理 中断处理过程可分为中断响应、中断处理和中断返回三个阶段。(1)中断响应中断响应是CPU对中断源中断请求的响应,包括保护断点和将程序转向中断服务程序的入口地址。CPU响应中断请求,必须满足以下条件。①有中断源发出中断请求。②中断总允许位EA=1。③申请中断的中断源允许。但若有下列任何一种情况存在,则中断响应会受到阻断。①CPU正在响应同级或高优先级的中断。②当前指令未执行完。③正在执行RETI中断返回指令或访问专用寄存器IE和IP的指令。(2)中断处理中断处理包括保护断点和将程序转向中断服务程序的入口地址。首先,中断系统通过硬件自动生成长调用指令将自动把断点地址压入堆栈保护(不保护累加器A、状态寄存器PSW和其它寄存器的内容),然后,将对应的中断入口地址装入程序计数器PC(由硬件自动执行),使程序转向该中断入口地址,执行中断服务程序。STC12C5A60S2中断服务程序入口:使用时,通过中断函数中的中断号找到中断函数(即中断入口地址),然后找到中断服务程序(中断后要处理的程序)中断函数格式:void
函数名称
interrupt【关键字】中断号
using
寄存器组例如:voidintjs()interrupt0using0表示外部中断0的服务程序,用的工作寄存器组为0中断号为:0-4(STC12C5A60S2为增强型51单片机,中断号0-9)
注意:①各中断源的中断入口地址之间只相隔8个字节,不能容纳一般的中断服务程序,因此,在中断入口地址单元通常存放一条无条件转移指令,将中断服务程序转至存储器的其它任何空间。②若要在执行当前中断程序时禁止其它更高优先级中断,需先用软件关闭CPU中断,或用软件禁止相应高优先级的中断,在中断返回前再开放中断。③在保护和恢复现场时,为不使现场数据遭到破坏或造成混乱,一般在此时CPU不再响应新的中断请求。因此,在编写中断服务程序时,要注意在保护现场前关中断,在保护现场后若允许高优先级中断,则应开中断。同样,在恢复现场前也应先关中断,恢复之后再开中断。④中断服务程序中用到的寄存器需要保护,中断服务程序不与主程序共用累加器和任何寄存器,无须保护现场。STC12C5A60S2中断结构外部中断(以/INT0为例)结构外部中断信号0来自:P3.2(/INT0)相关寄存器(位)IT0:外部中断0触发方式选择位:为“0”时,为电平(低电平)触发方式;为“1”时,为边沿(下降沿)触发方式。EA:总中断允许控制位。EA=1,开放所有中断;EA=0,禁止所有中断。EX0:外部中断0(/INT0)中断允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。相关寄存器(位)IE0:外部中断0标志位。当INT0信号有效,引发中断时,IE0由硬件置位为“1”,系统响应中断时由硬件复位为“0”。开外部中断编程(例)IT0=1; //或IT0=0;视需要而定EA=1;EX0=1;中断服务程序编程(例)voidint0()interrupt0using0{}中断号了解其他中断(见STC12C5A60S2器件手册)案例一:设计程序,用中断int0电平触发,实现P1口的值加一输出。子任务一:把案例一改成用外部中断INT1.边沿触发方式。
4.外部中断源的扩展常用两种方法扩展中断源。
●用定时计数器扩展中断源。例如在键盘程序设计中常用定时器溢出产生中断,在中断程序扫描查询方式识别按键。●中断和查询相结合扩展中断源。利用两根外部中断输入线(/INT0和/INT1脚)通过线或的关系连接多个外部中断源,同时利用并行输入端口线作为多个中断源的识别线。相关知识——数码管显示单个数码管外观和结构如图,3、8脚为公共脚。字形码显示时,必须在8位段选线(a、b、c、d、e、f、g、Dp)上加上相应的电平组合,即一个8位数据,这个数据叫字形码(又叫字符的段选码),通常用的段选编码规则如表。在显示时需把待显示的数字转换成相应的字形码,这个过程叫译码。译码有硬件译码和软件译码两种方法。硬件译码时常用74LS47、74LS48、74LS49、74LS164等译码电路实现。软件译码常通过数组,用查表法实现。显示字符共阴极段选码共阳极段选码显示字符共阴极段选码共阳极段选码03FHC0Hb7CH83H106HF9HC39HC6H25BHA4Hd5EHA1H34FHB0HE79H86H466H99HF71H8EH56DH92HP73H8CH67DH82HU3EHC1H707HF8Hy6EH91H87FH80HΓ31HCEH96FH90H8.FFH00HA77H88H灭00HFFH段码与位码表1)静态显示静态显示是数码管的相应笔段一直处于点亮状态,因此功耗大,而且占用硬件资源多,用在显示位数极少的场合。例如,在共阳的数码管abcdefg引脚上输入段选码输入C0H,公共脚3(8)接高电平,保持不变,数码管将显示0。2)动态显示动态显示是多只数码管共享段选线,依次输出段选码,同时逐位进行扫描(依次为数码管的公共端加合适的显示电平),数码管处于亮和灭的交替之中,利用人眼的视觉惰性,实现显示的方式。占用硬件资源少,功耗小。但是,扫描周期必须控制在视觉停顿时间内,否则会出现闪烁或跳动现象。案例二:用P1口作断码端口、P2口作位码端口,数码管显示102。子任务二:用数码管显示:1103-学号。结构,引脚
LED点阵显示器以发光二极管为像素,结构,引脚实物如图。按内部电路结构和外型规格分共阳与共阴两种。相关知识——点阵显示显示:一般采用动态显示方式,采用扫描的方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,可显示各种图形或文字信息。如图,在8×8点阵的行线上依次输入如下字形码:0EFH,83H,0ABH,83H,0ABH,83H,0EEH,0E0H同时在8×8点阵的列线上轮流输入高电平,则在要在8×8共阳LED点阵上显示汉字“电”。行线输入数据EFH1110111183H10000011ABH1010101183H10000011ABH1010101183H10000011EEH11101110E0H11100000案例三:用P0口作字符数据输出端口,P2口作扫描控制字输出,显示图案“0、1”间隔为1秒。子任务三:用点阵显示0-9,间隔为1秒。项目实施总体设计思路
用STC12C5A60S2单片机作控制,12M时钟,外部中断0接独立按钮作加计数输入端,外部中断1接独立按钮作减计数输入端。P1.6接蜂鸣器。计数值用数码管显示,计数范围在0~9之间,超出蜂鸣器则报警。 总体结构框图如图。STC12C5A60S2/INT0/INT0时钟电路复位电路电源电路LED显示加计数按钮减计数按钮硬件原理图程序设计 (1)流程图开始显示初始化中断初始化显示num(2)程序代码(略)开始关中断num<9?num加1不报警返回num=9报警YN主程序流程外部中断0处理流程外部中断1处理流程(略)调试仿真(1)利用keiluVisison2的调试功能,根据错误提示,双击提示找到错误代码,排除各种语法错误。(2)通过对端口、寄存器、存储空间赋值,存储空间或、端口、寄存器观察,单步运行调试子程序和主程序。(3)编译成hex文件。(4)用Proteus按设计原理图,添加电阻(RES)、电容(CAP)、晶振(CRYSTAL、按键(BUTTON)、AT89C51、3位数码(7SEG-MPX3-CA)管等元件、仿真信号源。设计仿真模型,如图2-20所示。设置好元件属性,以仿真信号源提供测试信号,进行仿真调试。安装元器件,烧录、调试样机(1)仿真调试成功后,按原理图把元件安装焊接在实验板上,并进行动态和静态检测。(2)烧录hex文件,运行程序,如不能运行,先排除各种故障(供电、复位、时钟,内外存储空间选择、软硬件端口运用一致等)。(3)测试计数范围。(4)如没有达到性能指标,根据性能指标,调整电路或元件参数、优化程序,重新调试、编译、下载、运行程序,测试性能指标。项目报告要求项目检测项目名称项目2:设计制作计数器项目要求总体设计思路硬件电路图程序设计思路1、程序设计思路(含流程图)2.程序清单及说明仿真调试1.仿真调试环境2.仿真调试功能指标性能指标测试1.基本功能能指标测试环境2.基本功能指标测试结果及分析3.发挥部分报告编制人编制时间项目考核标准项目名称项目2:设计制作计数器序号考核点分值评分1工具软件使用KeiluVision2使用5会用3-5不会用0-32Proteus使用5会用3-5不会用0-33下载工具使用5会用3-5不会用0-34硬件电路电源电路2正确2不正确05复位电路4正确4不正确06时钟电路4正确4不正确07存储器选择与I/O口分配2正确2不正确08显示电路8正确
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版机械行业科技创新合作合同书3篇
- 二零二五版艺术品字画购销与仓储管理合同2篇
- 二零二五版农业用地土壤环境质量调查委托合同3篇
- 二零二五版LED显示屏安全防护与应急响应合同3篇
- 美容院商铺租赁合同(2025版):美容院美容美体设备租赁及售后服务协议2篇
- 二零二五年绿色建筑空调系统设计与施工合同3篇
- 二零二五版废旧设备买卖及环保处理合同2篇
- 二零二五版房地产投资合作三方买卖合同3篇
- 二零二五版二手车鉴定评估及转让合同3篇
- 2025年度不锈钢太阳能板安装工程合同3篇
- GB/T 12914-2008纸和纸板抗张强度的测定
- GB/T 1185-2006光学零件表面疵病
- ps6000自动化系统用户操作及问题处理培训
- 家庭教养方式问卷(含评分标准)
- 城市轨道交通安全管理课件(完整版)
- 线缆包覆挤塑模设计和原理
- TSG ZF001-2006 安全阀安全技术监察规程
- 部编版二年级语文下册《蜘蛛开店》
- 锅炉升降平台管理
- 200m3╱h净化水处理站设计方案
- 个体化健康教育记录表格模板1
评论
0/150
提交评论