可编程作息时间控制器设计
PLC上下课打铃系统设计
P L C 课程设计上下课自动打铃系统目录绪论 (1)PLC可编程控制器的定义 (1)1.1 PLC可编程控制器的特点 (3)1.2 PLC可编程控制器趋势与动向 (4)2任务及其要求 (6)2.1设计任务 (6)2.2设计要求 (6)3 系统硬件部分设计 (7)3.1控制系统的元器件选择及地址分配 (7)3.2控制系统外部接线图 (8)4 主程序设计及功能 (8)4.1主程序流程图设计 (9)4.2主程序顺序功能图设计 (10)4.3主程序梯形图设计 (11)5 程序的调试 (13)6 系统操作说明 (13)7 收获与体会 (13)参考文献 (14)绪论1 PLC可编程控制器的定义PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。
1.1 PLC可编程控制器的特点(1)可靠性高,抗干扰能力强PLC用软件代替大量的中间继电器和时间继电器,仅剩下与输入和输出有关的少量硬件,接线可减少到继电器控制系统的1/10--1/100,因触点接触不良造成的故障大为减少。
高可靠性是电气控制设备的关键性能。
PLC由于采用现代大规模集成电路技术,采用严格的生产工艺制造,内部电路采取了先进的抗干扰技术,具有很高的可靠性。
例如三菱公司生产的F系列PLC平均无故障时间高达30万小时。
一些使用冗余CPU的PLC的平均无故障工作时间则更长。
从PLC的机外电路来说,使用PLC构成控制系统,和同等规模的继电接触器系统相比,电气接线及开关接点已减少到数百甚至数千分之一,故障也就大大降低。
此外,PLC带有硬件故障自我检测功能,出现故障时可及时发出警报信息。
在应用软件中,应用者还可以编入外围器件的故障自诊断程序,使系统中除PLC以外的电路及设备也获得故障自诊断保护。
可编程作息时间控制器设计
2012~2013学年第一学期《单片机原理与应用》课程设计报告题目:可编程作息时间控制器设计专业:电子信息工程班级:10电子信息(2)姓名:牛然、付强、刘小朋陈丽华、支发云指导教师:周珍艮、崔雪英电气工程系2012年10月21日《可编程作息时间控制器设计》任务书课题名称数字电压表设计指导教师(职称)周珍艮(副教授)崔雪英(讲师)执行时间2012~2013学年第一学期第7周学生姓名学号承担任务牛然1009121112 方案的总体设计、修改响铃时间功能及模拟手动控制功能的设计付强1009121022 软件protues的仿真及PCB硬件图支发云1009121128 摘要及日期和时钟显示功能的设计陈丽华1009121100 绪论及上下课打铃功能的设计刘小朋1009121044 日期和时钟显示功能的设计设计目的1、掌握汇编语言的基本结构及应用;2、掌握各个部分功能的设计及应用;3、学会使用protues软件进行电路仿真。
设计要求1、按照给定的时间模拟控制实现上下课打铃、灯光控制(屏幕显示);2、具有各日期和时钟显示。
摘要本课题是应用89C51为核心控制器件的作息时间控制钟,由键盘、声音输出模块、电源转换模块和存储模块四部分组成。
它利用89C51的定时/计数器来计算时间,并用存储器记录数据,保证了系统的可靠性。
89C51单片机是整个设计的核心控制器件,根据从键盘接受的数据控制整个设计的工作流程。
整体性好,人性化强,可靠性高,实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,可对一些以24小时为周期的开关量进行自动控制。
如上下课打铃及扩音设备的开与关。
采用89C51单片机来实现对上述开关量的控制,利用24C02芯片来存储数据,设有六位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等特点。
首先设计各个模块的屏幕显示,其次是各个模块需要调用的小程序,有PC 机的日期和时钟,响铃声音,按键,屏幕显示以及延时的调用等等,最后是将各个功能模块与其中需要的小程序通过正确的汇编语言组建起来。
可编程作息时间控制器设计
可编程作息时间控制器设计作息时间控制器是一种用来帮助人们管理健康作息时间的设备。
它可以根据个人的需求和习惯自定义作息时间,并通过可编程功能来控制各种任务和提醒。
作息时间控制器的设计主要分为硬件和软件两个部分。
硬件部分包括显示屏、按钮、电源供应和时钟模块等,用于显示时间和设置参数。
软件部分则负责运行用户设置的程序,实现相应的功能。
首先,用户可以通过硬件部分的按钮界面来设置睡眠时间和起床时间。
可以根据个人需要设置每天起床时间、睡眠时间、午休时间和提醒时间等。
用户还可以设置不同的作息时间表,如工作日和周末的作息时间可以不一样。
其次,作息时间控制器可以通过软件部分的程序来控制各种任务和提醒。
用户可以设置不同的任务,如早晨运动、午休、提醒喝水等,控制器会在设定的时间触发相应的提醒。
此外,控制器还可以通过定时器功能来控制其他设备,如自动开启关闭灯光、咖啡机等。
最后,作息时间控制器还可以提供统计和分析功能来帮助用户更好地管理作息时间。
它可以记录用户的作息时间,并生成相应的报告,帮助用户了解自己的作息情况和睡眠数据,以便做出相应的调整。
总而言之,可编程作息时间控制器是一种方便实用的设备,它能够帮助人们管理健康的作息时间。
通过具备硬件和软件的设计,用户可以自定义作息时间、设置任务和提醒,并通过统计和分析数据来实现更好的作息管理。
作息时间对于个人的健康和生活品质有着重要的影响。
良好的作息时间可以提高工作和学习效率,增加身体健康和免疫力,改善睡眠质量和心理状态。
然而,现代社会的快节奏和各种干扰因素往往使人们难以维持规律的作息时间。
为了帮助人们更好地管理作息时间,可编程作息时间控制器成为了一种理想的解决方案。
硬件部分是可编程作息时间控制器的基础,它主要由显示屏、按钮、电源供应和时钟模块组成。
显示屏用于显示当前时间、设置参数以及展示任务和提醒的信息。
用户可以通过按钮来操作控制器,包括设置作息时间、添加任务和提醒等。
电源供应保证控制器的正常运行,时钟模块则提供精准的时间计量,确保作息时间的准确性和可靠性。
可编程作息时间控制器设计文件
扬州大学能源与动力工程学院题目:可编程作息时刻操纵器设计课程:单片机原理及应用课程设计专业:电气工程及其自动化班级:姓名:学号:第一部分任务书《单片机原理及应用》课程设计任务书一、课题名称详见《单片机课程设计题目(一)》:要紧是软件仿真,利用Proteus软件进行仿真设计并调试;《单片机课程设计题目(二)》:要紧是硬件设计,利用单片机周立功实验箱进行设计并调试。
二、课程设计目的课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对关心学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素养具有专门重要的意义。
《单片机原理及应用》是一门理论性、有用性和实践性都专门强的课程,课程设计环节应占有更加重要的地位。
单片机原理及应用课程设计的目的是让学生在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能将课堂上学到的理论知识与实际应用结合起来,而且能进一步加深对电子电路、电子元器件等知识的认识与理解,同时在软件编程、排错调试、相关软件和仪器设备的使用技能等方面得到较全面的锻炼和提高。
为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。
通过单片机硬件和软件设计、调试、整理资料等环节的培训,使学生初步掌握工程设计方法和组织实践的差不多技能,逐步熟悉开展科学实践的程序和方法。
三、课程设计内容设计以89C51单片机和外围元器件构成的单片机应用系统,并完成相应的软硬件调试。
1. 系统方案设计:综合运用单片机课程中所学到的理论知识,学生依照所选课题的任务、要求和条件进行总体方案的设计。
2. 硬件电路设计:对方案中以单片机为核心的电路进行设计计算,包括元器件的选择和电路参数的计算,并画出总体电路图。
3. 软件设计:依照已设计出的软件系统框图,用汇编语言或C51编制出各功能模块的子程序和整机软件系统的主程序。
作息时间控制器的设计
前言本次毕业设计的课题是《作息时间控制器》控制的设计,用时间来控制自动打铃,开(熄)学生宿舍灯等。
在指导老师的悉心指导及本组成员的共同努力下,完成了0~24小时循环显示的程序、自动打铃程序、开(熄)学生宿舍灯程序的设计,及电路板的制作。
通过本次设计领悟了作为一名技术员所具备分析、解决问题的能力,为今后的工作打下基础。
由于时间仓促、能力有限,程序难免有不足之处,请老师批评指正。
目录一、设计任务1、作息时间控制器控制设计大纲 (4)2、设计步骤 (4)二、设计过程1、时间控制显示程序 (5)1.1秒脉冲显示程序 (5)1.2分钟显示程序 (6)1.3小时显示程序 (7)1.4星期显示程序 (9)1.5自动扫描秒程序 (11)1.6开机显示 (12)2、电铃控制程序 (14)2.1作息时间电铃控制 (16)2.2双休日电铃控制 (17)3、学生宿舍开(熄)灯程序 (18)4、控制器输入输出点分配 (19)5、PCB接线图及元器件 (21)5.1 PCB的外部接线图 (21)5.2 元器件 (22)6、作息时间控制器控制梯形图 (22)7、作息时间控制器使用说明 (23)三、设计总结 (24)概述PLC即可编程控制器(Programmable logic Controller),是指以计算机技术为基础的新型工业控制装置。
PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。
20世纪70年代中末期,可编程控制器进入实用化发展阶段,计算机技术已全面引入可编程控制器中,使其功能发生了飞跃。
更高的运算速度、超小型体积、更可靠的工业抗干扰设计、模拟量运算、PID功能及极高的性价比奠定了它在现代工业中的地位。
作息时间控制系统设计
五、作息时间控制系统设计1.功能简介该时钟控制器有4位LED数码显示器,具有基本时钟(显示当前时间的小时及分钟)功能,通过外扩继电器、光电耦合器或固体继电器还可实现多点、多路电气设备的控制。
该控制器可广泛应用于学校、工厂和机关的自动打铃、电视、路灯、室内照明及其他对象控制,也可用于家庭或学生寝室进行时间指示及多点时间提醒。
2.硬件电路硬件电路如图5-1所示。
图5-2 作息时间控制系统电路采用单片机AT89C51,显示器采用四联共阳极LED数码显示器。
其中字段由串入、并出的移位寄存器74LSl64控制,74LSl64的串行数据输入端由P1.4控制,移位脉冲由P1.5提供;字位由P1.0~P1.3控制,P1.0~P1.3对应控制L4~L1。
SWl~SW3用来进行时间校准及控制时间点的设定。
LED1~LED8用来模拟被控对象。
另有铃响信号输出(铃响信号驱动蜂鸣器发声)。
3.使用说明(1)时间校对在任何时候均可通过按压SW2和SW3按钮进行时间校准。
每按动一下SW2,小时自动加1;持续按住不放,小时将自动连续加1。
当小时指示为24时,再加1将自动回零。
每按动一下SW3,分钟自动加1;持续按住SW3按钮不放,分钟将自动连续加1。
当分钟指示为59时,再按动SW3,分钟将变为00。
(2)控制时间设定需要设定控制时间点时,应首先按SWl按钮,然后再按动SW2和SW3,使指示时间与要求时间一致,再按SWl按钮进入“控制码”(控制对象)设置状态,按SW3进行对象切换,最后按SW2保存时间点;也可以按SWl取消本次设定。
如此可设定多个控制时间点。
在正常状态下按下SWl不放,然后再按SW3按钮可删除所有的控制时间点。
4.参考程序软件采用MCS-51汇编语言编写,使用T0产生50ms时基信号,通过软计数器产生时、分、秒信号。
单片机内部RAM资源分配见表5-1所示。
参考程序如下:;--------------------------------------------------------------------------------------------------------------;5_1.asm;作息时间控制系统;------------------------------------头文件-------------------------------------------------------------------- SDATA BIT P1.4 ;定义74LSl64串行移位数据端SCLK BIT P1.5 ;定义74LSl64串行移位时钟端DIS EQU P1 ;定义字形口Control EQU P0 ;控制输出SWl EQU P3.2SW2 EQU P3.3SW3 EQU P3.4MS EQU 10H ;定义50ms计数器Secs EQU 11H ;定义秒计数器Minute EQU 12H ;定义分钟计数器Hour EQU 13H ;定义时计数器T_Hour EQU 19H ;定义定时时单元Tcontrol EQU 1AH ;定义控制码单元;-------------------------------------------------------------------------------------------------------------- ORG 0000HLJMP Main;-------------------------------------------------------------------------------------------------------------- ORG 000BHLJMP TOINT;-------------------------------------------------------------------------------------------------------------- Main:MOV SP,#70H ;将栈区设置在70H~7FHMOV IE,#10000010B ;允许T0中断MOV TMOD,#01H ;T0定时方式1MOV MS,#20 ;50ms单元初值,使20X50ms=lsMOV Secs,#0MOV Minute,#0MOV Hour,#12H ;开机显示12:00MOV T_Minute,#0MOV T Hom,#6MOV B,#20H;-------------------------------------------------------------------------------------------------------------- CLR P0CLR F1MOV R7,#80MOV TL0,#0B0H ;50ms定时参数MOV TH0,#3CHSETB TR0 ;启动定时器LOOP:MOV R1,#MinuteLCALL Split ;调用拆分子程序NOPLCALL DISP ;调用显示子程序NOPLCALL VerifyNOPLCALL SetupMOV A,SecsCJNE A,#5,$+3 ;定时精度控制在5秒以内JNC LOOPLCALL CompareSJMP LOOP;--------------------------------------------------------------------------------------------------------------MOV TH0,#3CHPUSH ACCDJNZ MS,T0ExitMOV MS,#20MOV A,SecsINC AMOV Secs,ACJNE A,#60,$+3 ;60后不能加H,表示该数为十进制数JC T0Exit ;若秒小于60,则直接返回MOV Secs,#0 ;若秒大于或等于60,则回零MOV A,MinuteADD A,#1DA A ;对分进行十进制调整,以便送显示器显示MOV Minute,ACJNE A,#60H,$+3 ;60后一定要加H,表示该数为BCD码JC T0Exit ;若分小于60,则直接返回MOV Minute,#0 ;若分大于或等于60,则回零MOV A,HourADD A,#1MOV Hour,ACJNE A,#24H,$+3JC T0ExitMOV Hour, #0T0Exit:POP ACCRETI;-------------------------------------------------------------------------------------------------------------- Compare:MOV R0,#20H ;定时数据存储区NextTime:LCALL DISPMOV A,@R0CJNE A,Hour,CLPlINC R0MOV A,@R0CJNE A,Minute,CLP2INC R0MOV A,@R0CPL AMOV Control,AINC R0;-------------------------------------------------------------------------------------------------------------- CLPl:INC R0 ;指向分CLP2:INC R0 ;指向控制码MOV A,@R0JNZ CLP3RET;-------------------------------------------------------------------------------------------------------------- CLP3:INC R0 ;指向下一个时间的开始CJNE R0,#6FH,$+3JC NextTimeRET;-------------------------------------------------------------------------------------------------------------- Verify:JB SW3,VLP3 ;判断是否需要校“分”CLR EACLR TR0 ;校时期间,暂时关闭定时器VLPl:MOV A,Minute ;SW3闭合时,则对分钟加1 ADD A,#1DA AMOV Minute,ACJNE A,#60H,VLP2MOV Minute,#0VLP2:MOV R6,#40MOV R1,#MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW3,VLPl ;若SW3未释放,则继续对分钟加1MOV Secs,#0 ;校时期间,将秒清零SETB EASETB TR0 ;恢复计数RET;-------------------------------------------------------------------------------------------------------------- VLP3:JB SW2,VExit ;判断是否需要校“时”CLR EACLR TR0 ;校时期间,暂时关闭定时器VLP4:MOV A,Hour ;SW3闭合时,则对小时加1 ADD A,#1DA ACJNE A,#24H,VLP5MOV Hour,#0VLP5:MOV R6,#40MOV R1,#MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW2,VLP4 ;若SW3未释放,则继续对小时加1MOV Secs,#0 ;校时期间,将秒清零SETB EASETB TR0 ;恢复计数Vexit:RET;-------------------------------------------------------------------------------------------------------------- Setup:JNB SWl,SLP0 ;判断SWl是否闭合RETSLP0:MOV R6,#20 ;延时80ms(用显示程序) MOV 14H,#10HMOV 15H,#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3JNB SWl,SLP0SIPl:MOV R6,#20 ;延时80ms(用显示程序) MOV 14H,#10HMOV 15H.#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3JB SW3,SLP2LCALL Clear ;按下SW1+SW3则清除所有数据MOV R6,#50 ;延时200ms(用显示程序)MOV 14H,#10HMOV 15H,#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPRET;-------------------------------------------------------------------------------------------------------------- SLP2:JB SW2,SLP1SETB P0SETB F1SLP21:MOV R6,#50 ;延时200ms(用显示程序) MOV 14H,#10HMOV 15H.#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3JB SW1,SLP21SLP22:MOV R6,#50 ;延时200ms(用显示程序) MOV 14H,#10HMOV 15H,#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3SLP23:JNB SW1,SLP22 ;等待SW1释放SLP3:MOV R1,#T_MinuteLCALL SplitLCALL DISPJB SW3,SLP6SLP4:MOV A,T_MinuteADD A,#1DA AMOV T_Minute,ACJNE A,#60H,SLP5MOV T_Minute,#0SLP5:MOV R6,#60MOV R1,#T_MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW3,SLP4SLP6:JB SW2,SLP9DA AMOV T_Hour,ACJNE A,#24H,SLP8MOV T_Hour,#0 SLP8:MOV R6,#60MOV R1,#T_MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW2,SLP7 SLP9:JB SW1,SLP3 SLP10:MOV R1,#T_MinuteLCALL SplitLCALL DISPJNB SW1,SLP10MOV TControl,#0JB SW3,SLP12 SLP11:MOV A,TControlINC AMOV TControl,A SLP12:MOV A,TControlANL A,#0FHMOV 14H,AMOV A,TControlSWAP AANL A,#0FHMOV 15H,AMOV 16H,#10HMOV 17H,#10HMOV R6,#50HLCALL DISPDJNZ R6,$-3JNB SW3,SLP11JNB SW1,SLP15 SLP13:JB SW2,SLP12LCALL STORESLP14:MOV R6,#50HJNB SW2,SLP14CLR F0CLR F1RETSLP15:MOV R6,#50HLCALL DISPDJNZ R6,$-3JNB SW1,SLP15CLR F0CLR F1RET;-------------------------------------------------------------------------------------------------------------- Clear:MOV R1,#20HCLRP1:CLR AMOV @R1,AINC R1CJNE R1,#70H,CLRP1RET;-------------------------------------------------------------------------------------------------------------- STORE:MOV R1,BCJNE R1,#6A,$+3JC STLP1MOV R1,#20HMOV B,R1STLP1:MOV @R1,T_HourINC R1MOV @R1,T_MinuteINC R1MOV @R1,TControlINC R1MOV B,R1RET;-------------------------------------------------------------------------------------------------------------- Split:MOV R0,#14H ;分个位显示缓冲单元MOV A,@R1ANL A,#0FH ;取分个位MOV @R0,ASWAP AANL A,#0FH ;取分十位MOV @R0,AINC R0 ;指向时个位显示缓冲单元INC R1MOV A,@R1ANL A,#0FH ;取时个位MOV @R0,AINC R0 ;指向时十位显示缓冲单元MOV A,@R1SWAP AANL A,#0FH ;取时十位MOV @R0,ARET;-------------------------------------------------------------------------------------------------------------- DISP:PUSH 00HMOV R0,#14H ;显示缓冲区首地址MOV R2,#11111110B ;对应个位的字位码MOV DPTR,#WordTab ;送字形表首地址JNB P0,DISP0DJNZ R7,DISP1CPL F1MOV R7,#60SJMP DISP1DISP0:CLR F1DISP1:ORL DIS,#00001111B ;关显示器MOV R3,#20DJNZ R3,$ ;延时40usMOV A,@R0 ;取待显示数字MOVC A,@A+DPTR ;查字形WordOut:MOV R3,#8 ;传送字形码到74LS164 NEXTB: RLC A ;取待发送位MOV SDATA,C ;送数据到数据口SETB SCLK ;产生时钟CLR SCLKDJNZ R3,NEXTB ;继续送下一位INC R0单片机应用:作息时间控制系统设计MOV A,R2 ;取字位码ANL DIS,AHIDE:MOV R3,#5 ;延时1msMOV R4,#100DJNZ R4,$DJNZ R3,$-4MOV A,R2 ;修改字位码RL AMOV R2,AJB ACC.4,DISP1DExit:POP 00HRET;--------------------------------------------------------------------------------------------------------------WodTab: DB 0C0H,0F9H,0A4H,0B0H ;“0”,“1”,“2”,“3”DB 99H,92H,82H,0F8H ;“4”,“5”,“6”,“7”DB 80H,90H,88H,83H ;“8”,“9”,“A”,“B”DB 0C6H,0A1H,86H,8EH ;“C”,“D”,“E”,“F”DB 0BFH,0C7H ;“-”,“L”END11。
作息时间控制器设计
题目7 可编程作息时间控制器设计
1. 设计要求
设计一个以单片机为核心的可编程作息时间控制器:
按照给定的时间模拟控制,实现广播、上下课打铃、灯光控制(屏幕显示),同时具备日期和时钟显示。
2. 实验原理
本题目原理与题目4相同,程序是在题目4的基础上将定时闹钟改造为4路可调闹钟,从而实现打铃等功能。
当四路闹钟中的任一路到时,均会点亮灯、打铃。
如有需求,可对程序进行调整,增加闹钟的路数,及到时后的处理方式。
题目中4个按键的功能分别为:设置限制的时间/时的调整、显示闹钟设置的时间/分的调整、设置闹钟的时间/设置完成、闹钟更换。
3. 电路设计(Proteus仿真通过)
本可编程作息时间控制器程序设计电路原理图,如下页图所示:
4. Proteus仿真
加载目标代码文件打开元器件单片机属性窗口,在“Program File”栏中添加上面编译好的目标代码文件“keil-17.hex”;在“Clock Frequency”栏中输入晶振频率为11.0592MHz。
启动仿真如下页图所示,当四路闹钟中的任一路到时,均会点亮灯、打铃。
单片机课程设计报告-可编程作息时间控制器
单片机原理及应用课程设计报告目录目录 (1)1 设计任务书 (2)1.1 基本设计要求 (2)2 设计阐明 (2)12.1设计内容 (2)1.2设计要求 (2)1.3设备及工作环境 (3)3 系统方案整体设计 (3)3.1 设计思路 (4)3.2 系统整体框图 (4)4 硬件设计 (4)4.1 系统硬件设计 (4)4.1.1 键盘扫描 (5)4.1.2 LCD显示器 (5)4.2 系统工作原理论述 (5)5 软件设计 (5)5.1 分析论证 (5)5.1.1 显示模块 (6)5.1.2 运算模块 (6)5.1.3 校时模块 (6)3.1.4 启动/暂停,复位模块 (6)5.1.5 整体功效 (6)5.2程序清单 (7)6 调试过程及分析 (24)7 设计总结 (25)参考文献 (26)- 1 -单片机原理及应用课程设计报告1 设计任务书1.1 基本设计要求(1)在综合单片机实验箱的硬件结构上编写软件完成设计。
(2)程序的首地址应使目标机可以直接运行,即从0000H开端。
在主程序的开端部分必须设置一个合适的栈底。
程序放置的地址须持续且靠前,不要在中间留下大批的空间地址,以使目标机可以应用较少的硬件资源。
(3)2*16位LCD显示器从左到右分辨显示闹钟时间和现在时间,采用24小时标准计时制。
(4)在4个键控开关上选定2个键分辨作为小时. 分的调校键。
每按一次键,对应的显示值便加1。
分. 秒加到59后变为00;小时加到23后再按键即变为00.再调校时均不向上一单位进位(例如分加到59后变为00;但小时不产生转变)。
(5)软件设计应用片内定时器,采用定时中断结构,应用软件延时法。
2 设计阐明12.1设计内容用ZY15MCU12BD型综合单片机实验箱及串口电路设计实现显示现在时间和闹钟时间并能够调校现在时间和闹钟时间的时钟,还能够实现闹钟的复位功能以及广播和蜂鸣器的响应。
说明设计中包含的内容1.2设计要求(1)在ZY15MCU12BD型综合单片机实验箱的硬件结构上编写软件完成- 5 -单片机原理及应用课程设计报告设计。
可编程作息时间控制器设计
可编程作息时间控制器设计Company number:【0089WT-8898YT-W8CCB-BUUT-202108】信息工程学院课程设计报告书题目: 可编程作息时间控制器设计专业:电子信息科学与技术班级:学号:学生姓名指导教师:2013 年 5 月 13日信息工程学院课程设计任务书年月日信息工程学院课程设计成绩评定表摘要本设计是可编程作息时间控制器设计,由单片机AT89C51芯片和LCD、LED显示器,辅以必要的电路,构成一个单片机四路可调闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成。
LCD 显示“时”,“分”,LED亮灯来表示闹钟的到来,定时时间到能发出警报声。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用AT89S51来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
关键字:四路可调闹钟 AT89C51 LCD目录1 任务提出与方案论证单片机型号的选择通过对多种单片机性能的分析,最终认为AT89C51是最理想的电子时钟开发芯片。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,而且它与MCS-51兼容,且具有4K字节可编程序存储器和1000次擦写循环,数据保留时间为10年,是最好的选择。
按键的选择本次设计按照题目要求使用独立式按键。
由于按键较少,在修改时间或设置闹铃时间时就不能直接输入,只能通过加或减完成,稍为麻烦一些,但其程序简单。
可编程作息时间控制器设计与制作
可编程作息时间控制器设计与制作-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN淮北师范大学硬件课程设计可编程作息时间系统目录引言 (3)1、概述 (3)、概要设计报告 (3)、时间运行系统功能实现 (3)、报时时间设置及调时功能实现 (3)、时分显示系统 (4)2、总体设计 (4)、业务流程图 (4)、所需芯片介绍及芯片原理图及控制字 (5)、8255A的结构和功能 (5)、8255A的控制字 (7)、8255A的工作方式 (8)、可编程计数器/定时器8253介绍 (9)、8253的内部结构和引脚信号 (9)、8253的初始化步骤和门控信号的功能 (10)、0832D/A转换器芯片介绍 (13)3、芯片详细设计 (15)、软件程序流程图及详解 (15)、功能说明 (18)4、分析与测试 (18)5、课程设计结论 (18)、本设计的可行性与优点分析 (18)、设计中的不足分析与改进 (19)6、课程设计体会 (19)参考文献 (19)致谢 (20)引言随着计算机技术的发展和在控制系统中的广泛应用,以及设备向小型化,智能化发展,作为高新技术之一的单片机以其体积小,功能强,价格低廉,使用灵活等优势,显示出很强的生命力。
其功耗低,超高型,成本低,功能完整,在国内越来越受到用户的重视和广泛使用1、概述、概要设计报告作息时间控制系统主要有四大子系统功能实现:1.时间运行系统 2.报时时间值设置及调时系统 3.时分显示系统 4.报时响应系统。
时间运行系统让时间一直运行着;报时时间值设置及调时系统使得用户可以随时设置时间;时分显示系统让用户可以清楚知晓当前系统时间,报时响应系统完成当当前时间与报时时间值一致时进行响应(如LED闪烁)。
四大子系统的协调有序的运行,保证了作息时间控制系统具有报时,调时,显时功能,还达到了与用户可交互的目的.、时间运行系统功能实现时间运行与调节利用可编程的计数器/定时器8255芯片的可编程使时钟频率经过在8253的处理而产生符合要求的脉冲送入8255,进而执行计时子程序使得改变时间参数而计时,进行时间计算,并用实时检测程序将时间参数用数码管显示电路显示出小时与分钟以及秒钟数。
基于PLC的作息时间控制系统设计
基于PLC的作息时间控制系统设计摘要本文提出了一种基于PLC(可编程逻辑控制器)的作息时间控制系统。
该系统的设计是为了帮助人们维护健康的生活方式。
该系统可以通过对灯光和音乐的控制来帮助人们保持生物钟的正常节律。
除此之外,该系统还可以通过控制家电设备的开关来确保每天的作息时间计划得到落实。
实验结果表明,该系统具有良好的可靠性和稳定性,能够有效地帮助人们规律作息。
关键字:PLC,作息时间控制,生物钟AbstractThis paper presents a PLC (Programmable Logic Controller)-based time scheduling system for promoting healthy lifestyles. The system was designed to help maintain a normal circadian rhythm by controlling lighting and sound. In addition, the system controls household appliances to ensure compliance with daily routines. Experimental results show that the system has good reliability and stability, and can effectively assist in regulating activities.Keywords: PLC, time scheduling, circadian rhythmIntroductionIn modern society, people's lifestyles and work schedules have become increasingly irregular, leading to physical and mental disorders. One of the main reasons for this is the disruption of the normal circadian rhythm. People's biological clocks are highly dependent on external cues such as light and sound, and abnormal cues can lead to serious health problems. Therefore, it is important to maintain a normal circadian rhythm to promote a healthylifestyle.Various methods have been proposed to aid in maintaining a normal circadian rhythm, including lifestyle changes, medication, and light therapy. However, these methods have limitations in terms of practicality and effectiveness. In recent years, emerging technology such as the Internet of Things (IoT) and PLC have been used to develop more practical solutions for maintaining a normal circadian rhythm.In this paper, a PLC-based time scheduling system is proposed as a practical solution to maintain a normalcircadian rhythm. The system controls lighting and sound, and household appliances to ensure compliance with daily routines.MethodologyThe proposed system is based on a PLC. The PLC is a specialized industrial computer used to control machines and processes. The PLC can be programmed to perform a specific task, and it can be reprogrammed as needed. The systemconsists of three main components: the PLC, the lighting and sound control module, and the household appliance control module.The PLC is the central component of the system. It receives input signals from various sensors, processes the signals, and sends output signals to control modules. The PLC is programmed to perform specific tasks based on predefined schedules.The lighting and sound control module controls the intensity and color of the lighting and sound sources. The module uses a microcontroller to adjust the lighting andsound according to the predefined schedules.The household appliance control module controls theon/off switches of household appliances, such as airconditioners, TVs, and computers. The module uses a power relay to turn the appliances on and off based on the predefined schedules.ResultsThe proposed system was tested in a residential setting. The system is programmed to follow a predefined schedule. During the night, the system provides low-intensity red lighting and soft music to help people fall asleep. In the morning, the system gradually increases the intensity of the white lighting and plays lively music to help people wake up. The system also turns on household appliances such as air conditioners, TVs, and computers at predefined times.The results show that the system is highly reliable and stable. The system performs as programmed, and there were no malfunctions or errors during testing. The system effectively assisted in regulating the activities of the residents, and they reported feeling more energetic and focused throughout the day.ConclusionThe proposed PLC-based time scheduling system is a practical solution for promoting healthy lifestyles. The system effectively maintains a normal circadian rhythm by controlling lighting and sound sources. Furthermore, the system ensures compliance with daily routines by controlling household appliances. The system is highly reliable and stable, and it has the potential to be widely adopted in various settings to promote healthy lifestyles.。
可编程作息时间控制器设计讲解
信息工程学院课程设计报告书题目: 可编程作息时间控制器设计专业:电子信息科学与技术班级:学号:学生姓名指导教师:2013 年 5 月 13日信息工程学院课程设计任务书年月日信息工程学院课程设计成绩评定表摘要本设计是可编程作息时间控制器设计,由单片机AT89C51芯片和LCD、LED显示器,辅以必要的电路,构成一个单片机四路可调闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成。
LCD显示“时”,“分”,LED亮灯来表示闹钟的到来,定时时间到能发出警报声。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用AT89S51来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
关键字:四路可调闹钟 AT89C51 LCD目录1 任务提出与方案论证 (1)1.1 单片机型号的选择 (1)1.2 按键的选择 (1)1.3 显示器的选择 (1)1.4 计时部分的选择 (1)2 总体设计 (2)2.1系统总框图 (2)2.2原理及工作过程说明 (2)2.3系统电路图 (3)3详细设计 (4)3.1主程序部分的设计 (4)3.2独立式键盘的接口电路 (4)3.3 1602LCD液晶显示器 (5)3.4闹钟子函数 (9)4总结 (10)参考文献 (11)1 任务提出与方案论证1.1 单片机型号的选择通过对多种单片机性能的分析,最终认为AT89C51是最理想的电子时钟开发芯片。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,而且它与MCS-51兼容,且具有4K字节可编程序存储器和1000次擦写循环,数据保留时间为10年,是最好的选择。
可编程作息时间控制器设计方案
可编程作息时间控制器设计方案1、阅读中外文献资料摘要:数字钟是采用数字电路实现对"年、月、日、周、时、分、秒"数字显示的计时装置.由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
可编程作息时间控制器就是其中的一个部分,它能很好的帮助我们完成对操控方面的时序和时间的控制,可见可编程时钟控制器在未来有很大的发展潜力,其研究领域十分宽广,应用领域十分广泛。
2、立题依据及主要研究内容:数字钟能长期、连续、可靠、稳定地工作;同时还具有体积小,功耗低等特点,便于携带,使用方便。
目前应用广泛是可编程作息时间控制器,它不仅具有数字钟的一般优点,还有控制时间精确,且通过改变单片机的程序能够灵活改变冬、夏季作息时间,同时能够实时显示时间. 能够让我们来掌握运筹时间而不是让时间来催促逼迫我们。
可编程作息时间控制器实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,实现代学校必不可少的设备.本次研究的主要内容是可编程作息时间控制器系统,系统包括:单片机、LCD驱动及显示系统、按键输入系统、功率放大系统和电源组成。
利用单片机提供的基信号作为基准计时信号,进行年月日周时分秒计时,根据设定时间完成语音播报,可按照设定的时间进行相应的控制,能够随意设置语音播报时间和内容。
3、设计方案及思路:主要的设计方案为:1.硬件设计由单片机系统、输入键盘、功率放大器、显示系统等部分组成。
系统扩展了四个按键用于报时及设定时间。
利用单片机的DAC为电流型输出,经负载电阻R1、三极管Q1,放大驱动扬声器放音,SPEAKER 可选用4Ω或8Ω扬声器,作为调试和当地语音播报使用,留有音频输出接口经功率放大器驱动音箱。
用一个LED 显示作息时间到等相关信息,根据具体需要可控制电铃、播放提示语音等。
2.软件设计整个程序分为:主程序、键盘扫描程序、校时子程序、语音子程序等几部分。
基于单片机可编程作息时间控制器设计与制作
基于单片机可编程作息时间控制器设计与制作一、引言现代社会人们的生活节奏越来越快,工作压力、学习任务等加大,导致很多人的作息时间不规律。
而良好的作息时间对人的身心健康非常重要。
因此,设计一款基于单片机的可编程作息时间控制器就变得很有必要。
二、设计方案本设计方案采用基于单片机的可编程作息时间控制器,通过预设时间段,控制灯光和蜂鸣器的开关,提醒人们要进行休息或工作。
1.硬件设计(1)主控芯片选择本设计采用单片机AT89C52作为主控芯片,该芯片采用8位的CMOS单片机,并具有丰富的IO口和存储器。
(2)时钟电路设计为了保证控制器的时钟准确性,设计了一个由晶振和电容构成的时钟电路。
晶振的频率暂定为12MHz,电容选择合适的值以满足电路的要求。
(3)人机交互部分该作息时间控制器通过LCD屏幕和按键进行人机交互。
选择了常见的1602液晶屏,并接入按键进行数据输入。
(4)输出部分通过继电器控制灯光和蜂鸣器的开关。
根据设定的时间段,通过电流驱动继电器吸合或断开,控制相应设备的开关状态。
(5)电源部分整个作息时间控制器采用5V电源供电,并设计了稳压电路,保证主控芯片工作电压的稳定。
2.软件设计(1)时钟设置通过单片机的定时器进行时钟设置,包括时钟的启动和停止,时钟的频率调整等。
(2)数据输入通过按键进行数据的输入,包括设定时间段的起始时间和结束时间,以及设定每个时间段的作息状态。
(3)定时器中断使用定时器中断来实现时间的自动循环更新,根据设定的时间段和当前时间,判断当前处于何种作息状态,并控制输出部分的灯光和蜂鸣器。
(4)LCD显示通过LCD屏幕来实现时间的显示和友好的界面交互,便于用户对时间的设置和查看。
三、制作过程1.硬件制作按照设计方案中的硬件部分进行元件的布局和焊接,在焊接时注意保持元件间的间距,避免短路等问题。
2.软件编程根据设计方案中的软件部分,使用C语言进行单片机的编程,实现时钟的设置、数据的输入、定时器的中断、LCD的显示等功能。
基于单片机可编程作息时间控制器设计与制作
江西理工大学专科毕业论文可编程作息时间控制器设计与制作摘要:本文介绍了一款基于A T89S52单片机数字钟的设计,通过多功能数字钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。
论文重点阐述了数字钟硬件中主控制模块、时钟模块、显示模块和相关控制模块等的模块化设计与制作;软件同样采用模块化的设计,本设计实现了时间与闹钟的修改功能、语音播报功能、年、月、日和星期等的显示功能。
并且通过对比实际的时钟,查找出了误差的来源,确定了调整误差的方法,尽可能的减少误差,使得系统可以达到实际数字钟的允许误差范围内。
本次设计过程在硬件与软件方面是进行同步设计。
硬件部分主要由AT89C52单片机,LED显示电路,以及调时按键电路等组成。
在单片机的选择上本人使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。
显示器使用2片7SEG-MPX8-CA和一片7SEG-MPX4-CA。
7SEG-MPX8-CA是一种八个共阳二极管显示器,7SEG-MPX4-CA是一种四个共阳二极管显示器。
为了能更轻松的控制这三片显示器,本人使用了3片74HC164来驱动。
74HC164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。
软件方面主要包括日历程序、时间调整程序,公历转阴历程序,显示程序等。
程序采用汇编语言编写,以便更简单地实现调整时间及阴历显示功能。
关键词:时钟电钟;DS1302;DS18B20;动态扫描;单片机ABSTRACTThis article describes an AT89S52 microcontroller based digital clock design, through multi-functional digital clock design ideas, detailed description of the system hardware and software realization process. Paper focuses on the digital clock in the main control module hardware, the clock modules, display modules and associated control modules, modular design and production; software as modular design, the design and implementation of the changes of time and alarm functions, voice broadcast function, year, month, day and week, etc. display. And by comparing the actual clock, find out the source of the error, the error of the method of determining the adjustment, as much as possible to reduce errorsEnable the system to achieve a practical digital clock within allowable error.Hardware mainly by the AT89C52 microcontroller, LED display circuit, and the tune composed of the circuit when the button. In the SCM choice I used the AT89C52 microcontroller, which is suitable for many of the more complex control applications. Monitor the use of two 7SEG--MPX8--CA and a 7SEG--MPX4--CA. 7SEG-MPX8-CA is a total of eight-yang display 7SEG-MPX4-CA is a total of four-yang diode display. In order to more easily control the three monitors, I use three 74HC164 to drive.74HC164 is an 8-bit edge-triggered shift register, serial input data, and parallel output. The software includes calendar program, time to adjust procedures, turn the lunar calendar programs display programs. Programs written in assembly language used in order to more easily adjust the time and the realization of the lunar calendar display. All programming is complete, the wave software debugging,Key words:Clock electric clock:DS1302;DS18B20:DYNAMIC ;SCANSCM江西理工大学专科毕业论文目录摘要 (6)ABSTRACT (7)前言 (10)一.设计要求与方案探讨 (11)1.1 设计目的与意义 (10)1.2 设计要求 (11)1.3 系统基本方案选择探讨 (11)1.3.1主控制芯片的选择方案探讨 (11)1.3.2 时钟芯片的选择方案探讨 (12)1.3. 3 LED显示系统选择方案探讨 (13)二.硬件设计 (14)2.1系统电路设计框图 (14)2.2 系统硬件设计概述 (14)2.3系统主要基本单元电路的设计 (14)2.3.1主控制系统电路的设计 (14)2.3.2时钟电路的设计 (16)2.3.3 LED显示电路的设计 (17)2. 4 系统电路原理说明 (18)三、软件设计 (22)3.1程序流程框图 (22)3.2 子程序的设计 (24)3.2.1 读、写DS1302子程序 (25)四、硬件与软件调试 (2)4.1硬件调试 (25)4.2软件调试 (27)4.3调试结果分析与结论 (29)4.3.1 调试结果分析 (29)4.3.2 调试结论 (29)五、论文总结 (30)参考文献 (30)附录一:系统电路图 (31)附录二:系统程序清单 (32)致谢 (50)江西理工大学专科毕业论文前言随着人们生活水平的提高和生活节奏的加快,对时间的要求越来越高,精准数字计时的消费需求也是越来越多。
可编程作息时间控制器设计(DOC 35页)
信息工程学院课程设计报告书题目: 可编程作息时间控制器设计专业:电子信息科学与技术班级:学号:学生姓名指导教师:2013 年 5 月 13日信息工程学院课程设计任务书年月日信息工程学院课程设计成绩评定表摘要本设计是可编程作息时间控制器设计,由单片机AT89C51芯片和LCD、LED显示器,辅以必要的电路,构成一个单片机四路可调闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成。
LCD显示“时”,“分”,LED亮灯来表示闹钟的到来,定时时间到能发出警报声。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用AT89S51来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
关键字:四路可调闹钟 AT89C51 LCD目录1 任务提出与方案论证 (11)1.1 单片机型号的选择 (11)1.2 按键的选择 (11)1.3 显示器的选择 (11)1.4 计时部分的选择 (11)2 总体设计 (22)2.1系统总框图 (22)2.2原理及工作过程说明 (22)2.3系统电路图 (33)3详细设计 (33)3.1主程序部分的设计 (33)3.2独立式键盘的接口电路 (44)3.3 1602LCD液晶显示器 (44)3.4闹钟子函数 (88)4总结 (99)参考文献 (1010)1 任务提出与方案论证1.1 单片机型号的选择通过对多种单片机性能的分析,最终认为AT89C51是最理想的电子时钟开发芯片。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
基于AT89C51的作息时间控制器设计
8 9C51 M CU
W a gF i n e Ch gYa y en o u
( c o l f nomaina dCo S h o fr t n mmu iainE gn e n , r iesyo ia, ay a 3 0 1 Chn ) oI o nct n ier gNot Unv r t f n T iu n0 0 5 , ia o i h i Ch
L —1 — — — _’机
图 1 系统 总体 设 计 框 图
术l 睚
图 2 系统 硬 件 电 路 原 理 图
⑩
ቤተ መጻሕፍቲ ባይዱ
静束一 十 一 数. , 字一 . 技酶 用 1 ●
软 件 设 计 与 开 发
本 次关于作息 时间的控 制器的设计 , 主要是 利用p oe s rtu 来进 行硬件仿真 , 再用k i e 软件编写程序 , l 最后将其生成 的h x e 文件送人 仿真 电路里进行模拟 , 可以达 到所要求的设计功能 , 同时本设计 也 可以加 以改进 , 应该更加深入地 去研究和创新 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2013~2014学年第2学期《单片机原理与应用》课程设计报告学号:惺惺惜惺惺信息学、、指导教师:XX电子工程系2013年6月14日《可编程作息时间控制器设计》任务书本课题是应用AT89C52为核心控制器件的作息时间控制钟,由键盘、声音输出模块、电源转换模块和存储模块四部分组成。
它利用AT89C52的定时/计数器来计算时间,并用存储器记录数据,保证了系统的可靠性。
AT89C52单片机是整个设计的核心控制器件,根据从键盘接受的数据控制整个设计的工作流程。
整体性好,人性化强,可靠性高,实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,可对一些以24 小时为周期的开关量进行自动控制。
如上下课打铃及扩音设备的开与关。
采用AT89C52单片机来实现对上述开关量的控制,设有8 位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等特点。
首先设计各个模块的屏幕显示,其次是各个模块需要调用的小程序,有PC 机的日期和时钟,响铃声音,按键,屏幕显示以及延时的调用等等,最后是将各个功能模块与其中需要的小程序通过正确的汇编语言组建起来。
这样便完成了源文件的建立。
再通过.ASM源文件生成的.EXE可执行文件进行仿真。
该仿真可以模拟实现:与PC机日期时钟保持一致的显示功能,仿照已设定的响铃时间进行打铃功能,根据已设定的早晚作息时间灯光控制的功能,键盘输入修正响铃时间,随时手动按键实现响铃的功能。
目录摘要........................................ 错误!未定义书签目录........................................ 错误!未定义书签第一章绪论......................... 错误!未定义书签课题研究的目的与意义................. 错误!未定义书签研究内容及采用方法................... 错误!未定义书签主要研究内容.................. 错误!未定义书签主要采用方法.................. 错误!未定义书签课题的研究原理..................... 错误!未定义书签第2章可编程作息时间控制器的方案设计............. 错误!未定义书签总体方案组成框图及设计流程图.............. 错误!未定义书签具体步骤实施.................... 错误!未定义书签日期和时钟显示功能的设计........... 错误!未定义书签上下课打铃功能的设计.............. 错误!未定义书签灯光显示功能的设计................ 错误!未定义书签修改响铃时间功能的设计............. 错误!未定义书签模拟手动控制功能的设计............. 错误!未定义书签第3 章可编程作息时间控制器的protues 仿真 .......... 错误!未定义书签仿真结果 ....................... 错误!未定义书签性能及误差分析..................... 错误!未定义书签附录........................................ 错误!未定义书签参考文献 ......................................... 错误!未定义书签第一章绪论课题研究的目的与意义20 世纪末,电子技术得到了飞速的发展。
在其推动下,现代电子产品几乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。
时间对于人来说总是那么珍贵,工作的忙碌性和繁杂让人容易忘记当前时间。
然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成更大的麻烦。
对于学校来说作息时间尤为重要。
如今,在电子计算机基础上发展而来的可编程作息时间控制器,它可以利用电子计算机的内部时间,通过程序判断处理,完成对作息时间的精确控制,并且由于是程序控制,所以可通过改变程序而进而灵活改变作息时间,同时可以实时显示时间,并实现打铃功能。
可编程时间控制器可实现对时间控制的智能化,摆脱由人控制时间的长短不同的不便,并且可以在必要时人工切入控制,,完美的满足作息时间控制。
研究内容及采用方法1.2.1 主要研究内容用C 语言编写作息时间控制程序,按照给定的时间模拟控制,上下课打铃、灯光控制(屏幕显示),并且具备日期和时钟显示。
给定的时间可修改,可模拟手动控制,用扬声器模拟打铃。
1.2.2 主要采用方法通过汇编语言编程,先在数据段中开几段缓冲区,以存放需要显示的提示信息以及存储PC机内部时钟日期等等,调用子程序的清屏部分来显示已经设定好的屏幕部分,再调用DOS勺日期及时钟调用功能,读取PC机内部日期和时钟,并将数据存入显示缓冲区,然后调用时间和日期显示功能,把程序设计成用刷新的方式来不断获取系统时间,这样就有了一秒一秒走动的日期时钟显示,在此过程需要用到延时程序,所以把延时程序单独做成一个子程序,然后在需要的时候调用它,使得时间显示程序更加精炼,此时日期和时钟显示功能已经完成;而后设计灯光控制(屏幕显示),采用比较跳转的方式即可,当到达设定的时间区域时通过比较来判断是亮灯还是灭灯;随后是上下课打铃的模拟,需要调用DOS 显示功能,将设定好的时间在屏幕上显示出来,然后调用PC机内部时钟,判断时钟与给定时间是否相同,进而判断是否响铃,若响铃则调用设定好的响铃程序,并实现屏幕模拟显示;给定时间修改是调用键盘I/O 中断功能号,获取键值的方法来进入,先确定应该修改哪个响铃,再将新的响铃时间数据存入要修改时钟的缓冲区,并将其覆盖来实现;模拟手动控制、用扬声器模拟打铃,同样采用调用键盘I/O 中断功能号,获取键值的方法,判断是否与设定的手动按键相同,若相同则进入手动控制,进入后调用响铃程序,而后自动退出响铃,开始其他响应功课题的研究原理将定时闹钟改造为4 路可调闹钟,从而实现打铃等功能。
当四路闹钟中的任一路到时,均会点亮灯、打铃。
如有需求,可对程序进行调整,增加闹钟的路数,及到时后的处理方式第2章 可编程作息时间控制器的方案设计总体方案组成框图及设计流程图时间作息控制的主体电路应包括秒信号发生器、时间显示电路按键电路、供电电源以及闹铃指示电路等几部分。
时间作息控制的系统组成框图如图 2-1-1所示: 图2-1-1时间作息控制的系统组成框图图2-1-2介绍了作息时间控制器的大致设计思路图2-1-2方案实施流程图具体步骤实施2.2.1 日期和时钟显示功能的设计221.1日期和时钟显示流程图图2-2-1是时钟和日期设计的大体思路,先在数据段中开辟存储日期时间等的缓冲区,便于后续程序的使用,再调日期和时钟的DOS功能调用中的显示功能, 将数据由二进制转换为ASCII码,存储并显示。
图2-2-1日期和时钟显示流程图2.2.1.2 日期和时钟设计步骤分析该模块设计中,先在数据段开了两段缓冲区,以存储显示日期和时间的提示Time is以及从PC机读到的日期和时间。
而后是调用DOS的日期功能,其功能号是2ah,日期分别存于ex,dx中,在该设计中调用出来的日期时间均是二进制数,如果要在界面中显示必须要转换成ASCII 码。
每一次数制转换后均要将转换后的数据存储于数据段开辟的存储缓冲区tbuf内,接下来便可调用DOS勺的9 号显示功能,只需将提示信息、日期及时间的存储缓冲区的偏移地址赋予dx, 再使用DOS功能,调用9号的显示功能即可。
这样,日期和时间的第一次显示时间完成,由于PC机的日期时间一直在变化,所以需要不断调用PC机的显示时间并显示,因此需要再回转至最初的调用日期程序,这样,显示日期时间的功能才真正完成。
下面是针对数制转换和日期时间的显示做的更为细致的解读。
( 1) 数制转换通常在计算机当中,从键盘输入的十进制数的每一位数码或者是向CRT!出的十进制的每一位数,均是以它的ASCII 码表示的。
而在机器中的一个十进制数,是以相应的二进制数存放或者是以BCD码的形式存放。
因此,如果我们想将PC 机中读取的日期时间显示到.EXE的界面中,必须将从中读取的二进制数转换为ASCII 码。
本设计是先将二进制数转换为十进制数,再将十进制数转换为ASCII 码的,使其在屏幕上显示出来。
由于调用该小程序段的显示数值都是十位数或个位数,所以该段小程序的设计思路是使用减法,统计需要转换的数值中有多少10、1,即为十进制数中的十、个位上的数,然后将十进制数转换为ASCII 码输出。
首先,在数据段中已经设计好了被减数,即eonst 内的数据,用需要数据转换的数据已经在之前的数据中赋值给了ax, 使用sub ax,[si] 语句实现上述的减法,若不够减,则需要重复减,并累计次数,直至不够减为止,累计的次数即为该数据十位数的数值,此时仍旧通过or dI,30h 语句转换为ASCII 码,并将转换后的数据都存储于bx 中。
(2 )日期时钟显示功能9号DOS功能调用可实现日期时钟显示功能,由于需要在.EXE界面显示提示信息mess1中的相关内容,因此调用BIOS功能,置光标于0行0列,将ah 赋值2 即可置光标,dh 的赋值表示行,dI 的赋值表示列,使用Iea dx,messI 语句,将messl 的偏移地址赋予dx,使用movah,9和int 21h语句完成DOS勺9 号功能调用,这样.EXE 界面就出现了mess 1中的相关内容;再使用BIOS功能调用,将光标置于17行21 列显示日期时间的提示信息time is ,方法与上述介绍的相同,最后即可将光标置于17行37列,显示PC机的日期和时间。
2.2.2 上下课打铃功能的设计2.2.2.1 上下课打铃设计流程图如图是上下课打铃设计的大体思路,先于数据段设存储缓冲区,存储设定的响铃时间,将响铃时间由二进制换成ASCII代码,调用DOS勺显示功能,显示响铃时间,再调PC机时间与设定的响铃时间比较,相同时响铃,不同时跳转。
图2-2-2上下课打铃设计流程图2.2.2.2上下课打铃设计步骤分析本部分设计中,先在数据段开辟了四段缓冲区,分别是bel响铃提示信息,tbufl响铃时间存储区,timeh设定好的响铃时间中小时的存储区,timem设定好的响铃时间中的分钟存储区,进入代码段后,便开始将timeh和timem中设定好的响铃时间由二进制数转换成ASCII代码,并将转换后的信息存于tbufl ,对于数制转换的内容上文中已有介绍,这里便不再重复了。