单片机课程设计说明书
单片机课程设计说明书(word文档+全!)

调试工具:J-Link、ST-Link等 仿真工具:Proteus、Multisim等 编程技巧:模块化编程、代码优化等
程序流程图设计与实现
流程图设计:根据 需求分析,设计出 流程图
流程图实现:根据 流程图,编写程序 代码
程序调试:对编写 的程序进行调试, 确保其正确运行
人工智能:单片机在人工智能领域的应用将更加深入,如智能机器人、智能语音识别等
医疗健康:单片机在医疗健康领域的应用将更加普及,如智能医疗设备、智能穿戴设备等 环保节能:单片机在环保节能领域的应用将更加重要,如智能能源管理、智能环保设备等
感谢您的观看
汇报人:
软件测试与优化
测试方法:单元测试、集成测试、系统测试等 测 试 工 具 : J U n i t 、 Te s t N G 、 S e l e n i u m 等 优化目标:提高代码质量、提高运行效率、降低资源消耗等 优化方法:代码重构、算法优化、性能调优等
课程设计总结与 展望
课程设计总结
课程设计目标:掌 握单片机基本原理 和编程方法
课程设计目的
掌握单片机的基本原理和应用
提高编程能力和硬件设计能力
培养创新思维和解决问题的能 力
提高团队合作和沟通能力
课程设计要求
课程设计 目的:掌 握单片机 原理和应 用技术
课程设计 内容:包 括硬件设 计和软件 设计两部 分
课程设计要 求:硬件设 计要求实现 特定功能, 软件设计要 求编写程序 实现特定功 能
调试步骤:根据测 试结果,对硬件进 行调试和优化
常见问题:信号 干扰、电源不稳 定、硬件故障等
解决方案:根据问题 原因,采取相应的解 决方案,如更换元器 件、调整电路参数等
单片机课程设计指导书

单片机课程设计指导书一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其内部结构和功能。
2. 使学生掌握单片机编程的基本方法,能编写简单的控制程序。
3. 帮助学生了解单片机在现实生活中的应用,拓宽知识视野。
技能目标:1. 培养学生动手操作单片机的能力,能够独立完成基本的硬件连接和程序下载。
2. 提高学生编程能力,能运用所学知识解决实际问题。
3. 培养学生团队协作能力,能够在小组合作中发挥自己的作用。
情感态度价值观目标:1. 激发学生对单片机及电子技术的兴趣,培养其探究精神。
2. 引导学生关注科技创新,认识到单片机在现代社会中的重要性。
3. 培养学生严谨、细致的学习态度,提高自我管理和自我约束能力。
课程性质:本课程为实践性较强的课程,旨在让学生在理论学习的基础上,通过动手实践,提高对单片机的认识和编程能力。
学生特点:学生具备一定的电子技术基础知识,对单片机有一定了解,但编程能力参差不齐。
教学要求:注重理论与实践相结合,强化动手实践,关注学生个体差异,分层教学,提高教学质量。
在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容1. 单片机原理概述:介绍单片机的发展历程、内部结构、工作原理及性能特点。
教材章节:第一章 单片机概述内容安排:2课时2. 单片机编程基础:讲解单片机编程语言(如C语言)、编程规范及编程技巧。
教材章节:第二章 单片机编程基础内容安排:4课时3. 单片机硬件连接:介绍单片机硬件电路设计、接口技术及外围设备。
教材章节:第三章 单片机硬件系统内容安排:4课时4. 单片机程序下载与调试:讲解程序下载方法、调试技巧及故障排查。
教材章节:第四章 单片机程序下载与调试内容安排:2课时5. 单片机应用实例:分析典型的单片机应用案例,引导学生学以致用。
教材章节:第五章 单片机应用实例内容安排:4课时6. 单片机课程设计:指导学生进行课程设计,培养实际操作能力和团队协作能力。
单片机课程设计计划书(精选五篇)

单片机课程设计计划书(精选五篇)第一篇:单片机课程设计计划书机电科学与工程系电气自动化技术专业(专科)《单片机原理及接口技术课程设计》计划书一、目的及要求1.目的:通过本课程设计,•使学生进一步掌握单片机应用系统的硬、•软件开发方法,输入/输出(I/O)接口的扩展技术,应用程序设计技术并结合专业能设计简单、实用的单片机应用系统。
主要针对课堂重点讲授内容使学生加深对单片机硬件原理的理解及提高汇编语言程序设计的能力,提高学生的开发创新能力。
2.基本要求:重点研究单片机、A/D转换器、运算放大器、传感器、LED显示器、固态继电器、微型直流电机等元器件的特性、功能及使用方法;同时掌握主程序、子程序、中断服务程序框图的设计方法与汇编语言程序设计方法。
要求设计系统具有可靠性高、可维护、维修性好及检测精度高等优点。
设计内容可参考设计题目,也可根据自身情况自己拟定。
3.任务要求:了解控制对象、环境参数检测原理,在充分掌握单片机、A/D转换器、运算放大器、传感器、LED显示器、固态继电器、微型直流电机等元器件的工作原理、特性、功能及使用方法的基础上,创造性的、两人一组分工协作(一人偏软、一人偏硬)独立的设计本课题的内容。
二、设计内容、步骤及材料要求1.设计内容画出硬件原理图一张(A4号);软件框图(包括主程序框图、主要子程序框图、中断服务程序框图等)和系统初始化的汇编语言原程序。
提交不少于4000字的设计报告一份(A4纸)。
从整体方案的规划设计到各功能模块的设计,可实现功能及各元器件的选择,参数计算均需表述清楚。
报告的书写要清除工整,层次清晰,文字流畅。
后附5篇以上的参考文献。
2.设计步骤设计时间为5天,前2天进行硬件原理草图设计,指导教师审查之后用1天的时间再进行绘图;第四天进行软件框图(包括主程序框图、主要子程序框图、中断服务程序框图)的设计及系统初始化的汇编语言原程序的设计;第5天答辩。
3.设计图纸要求(1)硬件原理图的绘制:元件图正确、型号标注要准确、连线清楚.(2)软件框图的绘制:流程清晰。
单片机课程设计指导书

单片机课程设计指导书单片机课程设计指导书 (1)实验须知 (2)前言 (3)实验一熟悉单片机以及开发环境 (4)实验二点亮LED (17)实验三焊接 (20)实验四流水灯、按键实验 (26)实验五内部AD采样实验 (29)实验六定时器以及SPWM和捕获实验 (33)实验七控制HD7279点亮数码管实验 (41)综合实验单片机及其外围电路实验 (45)实验须知一、在实验之前,必须先预习实验指导书,弄清实验原理以及所要做的工作。
二、在实验过程中,必须按照规范来使用各种仪器,特别注意以下事项:1. 电源的正负极不能接反。
2. 在把电源接到实验板之前,必须要用万用表测量电压在正确的范围之内。
3. 在安装最小板的时候应该确保方向没有弄错。
4. 对芯片的方向要特别注意,不能把方向弄错。
5. 在使用示波器测量的时候,必须保证良好的接地。
6. 示波器探头的衰减系数要和通道上的衰减系数设置必须一致。
三、在实验结束时,应该整理好实验器材,整齐的摆放在桌面上,以便于指导老师整理,实验器材如有损坏,应及时报告指导老师。
四、实验做完之后,必须写出实验报告,实验报告采用正规实验报告纸,写清楚姓名、学号、专业、日期等。
五、实验报告一般包括以下几个部分:1. 实验目的2. 实验设备描述实验的硬件环境3. 实验内容描述实验步骤及中间的结果或现象。
在实验中做了什么事情,怎么做的,发生的现象和中间结果。
4. 实验结果描述最终得到的结果,并进行分析说明。
六、实验成绩评定办法实验成绩由两部分组成:1. 实验完成情况 50%2. 实验报告撰写 50%前言本课程主要介绍了MSP430单片机的CPU结构和存储器组织结构、指令系统和片内外设原理及使用方法。
通过本课程的学习,学生应该掌握MSP430单片机的基本原理,指令系统以及MSP430单片机的基本片内外围模块的原理和使用方法,包括各种端口、定时器、通用串行通信模块、数模转换模块,并在此起基础上掌握MSP430单片机的设计和开发方法。
课程设计单片机文档

课程设计单片机文档一、课程目标知识目标:1. 让学生理解单片机的基本组成、工作原理和功能特点。
2. 使学生掌握单片机编程的基本语法和常用指令。
3. 帮助学生了解单片机在日常生活和工业控制中的应用。
技能目标:1. 培养学生能够运用单片机进行简单的程序设计和电路搭建。
2. 提高学生动手实践能力,能够独立完成单片机控制系统的调试与优化。
3. 培养学生运用所学知识解决实际问题的能力。
情感态度价值观目标:1. 激发学生对单片机及电子技术的兴趣,培养其创新意识和探究精神。
2. 引导学生关注单片机技术在工业、农业、医疗等领域的应用,增强学生的社会责任感和使命感。
3. 培养学生良好的团队合作意识,学会与他人分享、交流学习心得。
课程性质:本课程旨在让学生掌握单片机的基本知识和技能,提高学生的动手实践能力和创新能力。
学生特点:学生具备一定的电子技术基础知识,对单片机有一定的好奇心,但编程和实践经验相对不足。
教学要求:结合学生特点,注重理论与实践相结合,以实例教学为主,引导学生主动参与课堂讨论和实践活动,培养其独立思考和解决问题的能力。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 单片机概述- 单片机的发展历程- 单片机的组成与分类- 单片机的应用领域2. 单片机硬件结构- 中央处理器(CPU)- 存储器(ROM、RAM)- 输入/输出接口(I/O口)- 定时器/计数器- 串行通信接口3. 单片机编程基础- 汇编语言概述- 常用指令与语法- 程序结构及设计方法4. 单片机系统设计与实践- 系统设计流程- 常用外围电路设计- 程序下载与调试- 实例分析:LED灯控制、温度测量等5. 单片机应用案例- 智能家居控制系统- 工业自动化控制- 嵌入式系统设计教学内容安排与进度:第一周:单片机概述及硬件结构第二周:单片机编程基础第三周:单片机系统设计与实践第四周:单片机应用案例分析与讨论教学内容与教材关联性:本教学内容依据教材相关章节编写,涵盖单片机的基本概念、硬件结构、编程基础、系统设计与实践等方面,确保学生能够系统、全面地掌握单片机相关知识。
单片机课设(完整版)

摘要近几年,单片机在各个领域得到广泛的应用。
从工业到人们的日常生活,大部分的科技产品都是通过单片机来控制。
在它问世之前,自动控制设备得不到广泛的应用,这是因为控制设备的体积庞大,耗电量大,价格昂贵。
在第一台微处理器成功研制不久,第一个单片机就问世了。
因为其小巧的体积,低功耗,以及高效的性能,单片机受到了大家的欢迎。
本设计利用Atmel公司的AT89C52单片机对电子时钟进行开发,设计了实现所需功能的硬件电路,应用C语言进行软件编程,并用Proteus软件进行演示、验证。
主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89C52芯片为核心,辅以必要的电路,构成了一个单片机的数字电子时钟。
它的计时周期为24小时,显满刻度为“23时59秒”,且配有4个独立按键,可以灵活地调节时间和日期,并具有一定的扩展性。
关键词:单片机;数字电子钟;数码管驱动显示电路。
目录1简介 (1)1.1基于单片机的数字钟介绍 (1)1.2本系统的特点和功能介绍 (2)2 硬件设计 (3)2.1总体设计方案 (3)2.1.1 AT89C51的介绍 (3)2.2硬架结构设计 (5)2.2.1 51单片机的最小系统 (5)2.2.2显示部分设计 (5)2.2.3电源部分设计 (7)2.2.4报时部分的设计 (8)2.2.5键盘部分的设计 (8)2.2.6总体硬件电路图 (9)2.6.7 proteus仿真 (9)3软件部分 (10)3.1部分设计思想的说明 (10)3.2 C语言、keil、proteus的介绍 (11)3.2.1 C语言 (11)3.2.2 keil (12)3.2.3 proteus (12)3.3参考程序 (13)总结 (24)参考文献 (24)1简介1.1基于单片机的数字钟介绍1.单片机的介绍:“单片机”就是将计算机的基本部件集成到一块芯片上,包括CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、并行口(Parallel Port)、串行口(Serial Port)、定时器/计数器(Timer/Counter)、中断系统(Interrupt System)、系统时钟及系统总线等。
(完整版)单片机技术毕业课程设计说明书范文

郑州工业应用技术学院课程设计说明书题目:姓名:院(系):专业班级:学号:指导教师:成绩:时间:年月日至年月日郑州工业应用技术学院课程设计任务书题目: 电子秒表设计专业、班级学号姓名主要内容、基本要求、主要参考资料等:主要内容:利用单片机设计一个电子秒表,完成四位显示××.××秒,并具备开始计时、暂停、清零等功能。
基本要求:1.利用单片机设计一个电子秒表,完成四位显示××.××秒,并设定按钮完成开始计时、暂停、清零等功能。
2.利用proteus软件完成设计电路和仿真;3.掌握定时器的使用和数码管显示的方法;4.通过此次设计将单片机软硬件结合起来对程序进行编辑、校验,锻炼实践能力和理论联系实际的能力。
主要参考资料:[1]李全利,单片机原理及接口技术[M],高等教育出版社[2]王文杰,单片机应用技术[M],冶金工业出版社[3]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出版社[4]单片机实验指导书,天煌教仪[5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社完成期限:指导教师签名:课程负责人签名:年月日目录1.引言 (1)2.方案设计与论证 (3)2.1 直流调速系统 (3)2.1 检测系统 (4)2.3显示电路 (9)2.4系统原理图 (9)3.硬件设计 (10)3.1 80C51单片机硬件结构 (10)3.2 最小应用系统设计 (11)3.3前向通道设计 (12)3.4后向通道设计 (15)3.5显示电路设计 (17)4.软件设计 (20)4.1主程序设计 (20)4.2显示子程序设计 (24)4.3避障子程序设计 (25)4.4软件抗干扰技术 (26)4.5“看门狗”技术 (28)4.6可编程逻辑器件 (29)5.测试数据、测试结果分析 (30)6.结论 (31)致谢 (31)参考文献 (32)附录A 程序清单 (33)附录B 硬件原理图 (41)1.引言随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。
单片机课程设计任务书5(5篇)

单片机课程设计任务书5(5篇)第一篇:单片机课程设计任务书5课程设计任务书学生姓名:石樊专业班级:光信科1102指导老师:陈梦苇工作单位:武汉理工大学理学院题目:定时闹铃的设计初始条件:电脑一台、protel作图软件、keilc51编译器、medwin仿真软件、isp在线编程软件要求完成的主要任务:(包括课程设计工作量及其技术要求以及说明书撰写等具体要求)1、技术要求:以89s51单片机为核心芯片,设计一个定时闹铃,要求如下:A、能够显示定时的时间;B、定时时间到让相应的发光二极管发光;2、主要任务:(1)复习有关课程,如数字电路、单片机等;(2)以89s51为核心,根据设计指标设计电路的框图;(3)根据要求设计出电路逻辑图和装配图;(4)查阅资料,确定所需各元器件型号和参数;(5)自拟调整测试方法,并调试电路使其达到设计指标要求;(6)撰写设计说明书,进行答辩。
3、撰写课程设计说明书:封面:题目,学院,专业,班级,姓名,学号,指导教师,日期任务书目录正文:1、技术指标;2、设计方案及其比较;3、实现方案;4、调试过程及结论;5、心得体会;6、参考文献时间安排:课程设计时间:18周:明确任务,查阅资料,初步设计电路原理图;19~20周:按照电路原理图布线,并调试通过。
按照要求撰写课程设计说明书。
指导教师签名:年月日系主任(或负责老师)签名:年月日第二篇:单片机课程设计任务书“单片机课程设计”任务书一、设计目的通过该课程设计,主要达到以下目的:①使学生增进对单片机系统的感性认识,加深对单片机理论方面的理解,为顺利完成毕业设计打基础。
②使学生掌握对单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口和串行口通讯等。
③进一步深化和巩固所学基础理论、专业知识及实验技能,提高学生的技术应用能力,使学生了解和掌握单片机应用系统的软、硬件设计过程、方法及实现,为以后设计和实现单片机应用系统打下良好基础。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
任务书——电脑时钟(带定时启闹功能)一、课程设计题目:电脑时钟的设计与制作二、课程设计要求:要求设计制作的电脑时钟具有以下功能:1.自动计时,由6位LED显示器显示时、分和秒;2.具备校准功能,可以直接由0-9数字键设置当前时间;3.具备定时启闹功能。
三、设计任务概述:通过设计一个电脑时钟,掌握Protel 设计单片机应用系统硬件线路图的方法,掌握使用Dais集成开发环境开发单片机应用系统控制程序的基本步骤和方法。
任务涉及的知识面包括MCS-51汇编程序语言、MCS-51 单片机I/O 应用、中断与定时器应用、人机接口应用技术等。
四、工作计划及安排:①布置任务、分析任务、学习汇编语言、单片机的功能程序设计(3 天)②方案设计、使用Protel 设计和绘制电脑时钟的硬件原理图(2 天)③电脑时钟控制程序设计和调试(4 天)④撰写实习报告(1 天)五、考核及成绩评定方式:设计结果占40 %;实习报告占40%;平时抽查(含半小时抽查):20%;课程程设计的成绩可为优秀、良好、中等、及格、不及格五个等级;考勤:迟到扣5 分/次,旷课扣10 分/次设计说明书目录0、前言单片机的应用介绍1、课程设计的目的和要求1.1课程设计的目的1.2课程设计的基本要求2、总体设计2.1、总体方案2.1.1、计时方案2.1.2、键盘/显示方案2.2、硬件总体设计2.2.1、系统组成方案2.2.2、扩展单元编址2.2.3、键盘、显示功能的定义2.3、软件总体设计2.3.1、存储单元的分配、标志位的定义2.3.2、主程序框图及清单(带有注释)3、硬件设计本系统所选用的各种芯片的功能、引脚、相应的命令控制字格式等。
4、软件设计本系统的主要子程序、中断服务程序的框图及程序清单(带有注释)5、总结课程设计的收获、体会以及对本教学环节的意见和建议6、参考文献7、系统原理图A3图纸绘制摘要:用8051单片机CPU及接口电路设计电压检测报警系统并实现。
包括企划,设计,运行.调试等过程。
用到8051,8255两种芯片。
前言目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
由于单片机有许多优点,因此其应用领域之广,几乎到了无孔不入的地步。
单片机应用的主要领域有:1)智能化家用电器:各种家用电器普遍采用单片机智能化控制代替传统的电子线路控制,升级换代,提高档次。
如洗衣机、空调、电视机、录像机、微波炉、电冰箱、电饭煲以及各种视听设备等。
2)办公自动化设备:现代办公室使用的大量通信和办公设备多数嵌入了单片机。
如打印机、复印机、传真机、绘图机、考勤机、电话以及通用计算机中的键盘译码、磁盘驱动等。
3)商业营销设备:在商业营销系统中已广泛使用的电子称、收款机、条形码阅读器、IC卡刷卡机、出租车计价器以及仓储安全监测系统、商场保安系统、空气调节系统、冷冻保险系统等都采用了单片机控制。
4)工业自动化控制:工业自动化控制是最早采用单片机控制的领域之一。
如各种测控系统、过程控制、机电一体化、PLC等。
在化工、建筑、冶金等各种工业领域都要用到单片机控制。
5)智能化仪表:采用单片机的智能化仪表大大提升了仪表的档次,强化了功能。
如数据处理和存储、故障诊断、联网集控等。
6)智能化通信产品:最突出的是手机,当然手机内的芯片属专用型单片机。
7)汽车电子产品:现代汽车的集中显示系统、动力监测控制系统、自动驾驶系统、通信系统和运行监视器(黑匣子)等都离不开单片机。
8)航空航天系统和国防军事、尖端武器等领域:单片机的应用更是不言而喻。
单片机应用的意义不仅在于它的广阔范围及所带来的经济效益。
更重要的意义在于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。
以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。
以前自动控制中的PID调节,现在可以用单片机实现具有智能化的数字计算控制、模糊控制和自适应控制。
这种以软件取代硬件并能提高系统性能的控制技术称为微控技术。
随着单片机应用的推广,微控制技术将不断发展完善。
1. 课程设计的目的和要求1.1 课程设计的目的通过课程设计让我们把学过的比较零碎的知识系统化,真正的能够把学过的知识落到实处,能够开发简单的系统,也进一步激发我们的学习的热情。
用8051单片机CPU及接口电路设计并实现显示时间的电脑时钟。
1.2 课程设计的基本要求1.自动计时,由6位LED显示器显示时、分和秒;2.具备校准功能,可以直接由0-9数字键设置当前时间;3.具备定时启闹功能。
2.总体设计2.1、总体方案2.1.1、计时方案利用MCS-51单片机内部的定时器/计数器进行中短定时,配合软件延时实现时,分,秒的计时。
2.1.2、键盘/显示方案采用动态显示模型,如图1所示。
图-1动态显示模型2.2、硬件总体设计2.2.1、系统组成方案电路的核心是8051单片机,系统配备6位LED显示和4X3键盘,采用8255做为键盘/显示接口电路,利用8255的A口作为6位LED显示的选口,B口作为段选口,C口的低3位为键盘输入口,对应0-2 行,A口同时用作键盘的列扫描口。
由于采用共阴极数码管,A口输出低电平选中相应的位,而B口输出高电平点亮相应的段,P1.0接蜂鸣器,低电平驱动蜂鸣器鸣叫。
2.2.2、扩展单元编址8255的地址分配如下:控制寄存器:8000H,定义为PORT ;A口:8001H,定义为PORTA;B口:8002H,定义为PORTB;C口:8003H,定义为PORTC;2.2.3、键盘、显示功能的定义时钟显示: 6位LED从左到右依次显示时,分,秒,采用24h计时.键盘功能: 0-9数字键(健号为00H-09H),C/R键(时间设置/启动计时键,键号为0AH)和ALM键(闹钟设置/启闹/停闹键,键号位0BH).)(1)时间显示上电后系统自动进入时钟显示,从00:00:00开始计时,此时可以设置当前时间。
(2)时间调整按下C/R键,系统停止计时,进入时间设定状态,系统保持原有显示,等待键入当前时间。
按下0-9数字键可以顺序设置时,分,秒,并在相应的LED上显示设置值,设置完毕后系统将从设定后的时间开始计时显示。
(3)闹钟设置按下ALM键,系统继续计时,显示00:00:00,进入闹钟设定状态,等待键入启闹时间。
按下0-9数字键可以顺序进行相应的时间设置,并在相应的LED上显示设置值,设置完毕后系统启动定时启闹功能,并恢复时间显示。
定时时间到,蜂鸣器鸣叫,直至重新按下ALM键停闹,并取消闹钟设置。
2.3、软件总体设计软件设计分为下面功能模块。
(1)主程序初始化与键盘键控。
(2)计时定时器0中断服务子程序,完成刷新计时缓冲区功能。
(3)时间设置与闹钟设置由键盘输入设置当前时间与定时启闹时间。
(4)显示完成6位动态显示。
(5)键盘扫描判断是否有键按下,若有则求取键号。
定时比较判断启闹时间到否,如到则启动蜂鸣器鸣叫。
(6)其他辅助功能子程序。
主程序模块MAIN,流程图如图-3示。
计时程序模块CLOCK,流程图如图-4示。
定时器0每隔100ms溢出中断一次,则循环中断10次延时时间为1s,重复60次为1min,分计时60次为1h,小时计时24次则时间重新回到00:00:00。
设系统使用6MHz晶振,定时器0工作在方式1的定时器初值为3CB0H,即TH0=3CH,TL0=OB0H。
时间设置程序和闹钟定时程序模块MODIFY,流程图如-5所示。
将键盘输入的6位时间值合并为3位压缩BCD码(时,分,秒),送入计时缓冲区和闹钟值寄存区,做为当前计时起始时间或闹钟定时时间,模块入口微计时缓冲区或闹钟值寄存区的首地址。
如图-6示,键盘设置子程序KEYIN的功能是将键入的6位时间值送入键盘设置缓冲区,用合字子程序COMB将键盘设置缓冲区中的6位BCD码合并为3位压缩BCD码,送入计时缓冲区或闹钟值寄存区。
若键盘输入的小时值大于23,分和秒值大于59,则不合法,将取消本次设置,清零重新开始计时。
键盘扫描程序模块YSCAN,流程图如-7示。
判断是否有键按下,无键按下则循环等待,有键按下则求取键号后返回。
图-3主程序流程图图-4 计时流程图图-5时间设置程序和闹钟定时流程图图-7键盘扫描程序流程图图-6键盘设置子程序流程图图-9定时比较程序流程图显示程序模块DISPLAY,流程图如-8示。
将显示缓冲区的6位BCD码用动态扫描方式显示。
首先将3B计时缓冲区中时,分,和秒压缩BCD码拆分为6BBCD码,由拆字子程序SEPA来实现。
当按下时间或闹钟设置键后,在6位设置完成之前,应显示键入的数据而不显示当前时间。
为此系统设置一个计时显示允许标志位F0,在时间/脑钟设置期间F0=1,不调用拆字程序SEPA。
图-8显示程序流程图定时比较程序模块ALARM,流程图图-9示。
将当前时间(计时缓冲区的值)与预设的启闹时间(闹钟设置寄存区的值)比较,二者完全相同时,启动蜂鸣器鸣叫,并置位闹钟标志位,重新按下ALM键停闹,并清零脑钟标志。
拆字程序的功能是将3B计时缓冲区中时,分和秒压缩BCD码拆分为6BBCD码并刷新显示缓冲区;合字程序的功能是将键盘设置缓冲区中6位BCD码合并为3位压缩BCD码,送入计时缓冲区或闹钟值寄存区,同时检测时间值的合法性。
2.3.1、存储单元的分配、标志位的定义定时器0按照方式1工作,片内RAM及标志位的分配与定义见图2所示2.3.2、主程序框图及清单(带有注释)************************主程序MAIN************************ ORG 0000HAJMP MAINORG 000BHAJMP CLOCKORG 0030HPORT EQU 8000HPORTA EQU 8001HPORTB EQU 8002HPORTC EQU 8003HDISP0 EQU 30HDISP1 EQU 31HDISP2 EQU 32HDISP3 EQU 33HDISP4 EQU 34HDISP5 EQU 35HHOUR EQU 3CHMIN EQU 3DHSEC EQU 3EHMSEC EQU 3FHAHOUR EQU 40HAMIN EQU 41HASEC EQU 42HF1 BIT PSW.1MAIN: MOV SP, #50H ;设置堆栈区MOVX DPTR, #PORTMOV A, #03HMOVX @DPTR,A ;8155初始话CLR F1 ;清零闹钟标志位CLR F0 ;允许计时显示MOV AHOUR, #0FFHMOV AMIN, #0FFHMOV ASEC, #0FFHMOV R7, #10HMOV R0, #DISP0CLR ALOOP: MOV @R0, AINC R0DJNZ R7, LOOP ;设置初值MOV TMOD, #01HMOV TL0, #0B0HMOV TH0, #3CH ;定时器0初始化SETB TR0 ;启动定时器SETB EASETB ET0 ;开中断BRGIN: ACALL ALARM ;调用定时比较AACALL KEYSCAN ;调用键盘扫描CJNE A, #0AH, NEXT1 ;是CLR/RST键否CLR TR0 ;是则暂时停止计时MOV R1, #HOUR ;地址指针向计时缓冲区首地址AJMP MODNEXT1: CJNE A, #0BH ,BEGIN ;是ALARM键否JB F1, NEXT2 ;闹钟正在闹响否MOV R1, #AHOUR ;地址指针指向闹钟值寄存区首地址MOD: SETB F0 ;置位时间设置/闹钟定时标志,禁止显示计时时间 ACALL MODIFY ;调用时间设置/闹钟定时程序SETB TR0 ;重新开始计时CLR F0 ;清零时间设置/闹钟定时标志,恢复显示计时时间 AJMP BEGINNEXT2: SETB P1.0 ;闹钟正在闹响,停止CLR F1 ;清零闹钟标志AJMP BEGIN************************时间设置/闹钟定时模块MODIFY****************MODIFY : ACALL KEYIN ;调用键盘设置子程序ACALL COMB ;调用合字子程序RET3. 硬件设计本系统所选用的各种芯片的功能、引脚、相应的命令控制字格式等。