学校作息时间控制系统设计
- 格式:docx
- 大小:82.09 KB
- 文档页数:15
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以外的电路及设备也获得故障自诊断保护。
课程设计任务书单片机作息时间控制系统设计的目的和意义:随着计算机技术的发展和在控制系统中的广泛应用,以及设备向小型化、智能化发展,作为高新技术之一的单片机以其体积小、功能强、价格低廉、使用灵活等优势,显示出了很强的生命力。
进入21世纪以来,开发推出单片机的公司很多,各种高性能单片机芯片市场也异常活跃,新技术的不断采用,更加使单片机的种类、性能以及应用领域不断扩大和提高。
因其功耗低,超高型,低成本,功能完整,在国内越来越受到用户的重视和广泛使用。
随着科技的进步和技术不断的提升。
一块大而复杂的模拟电路花费了您巨大的精力,繁多的元器件增加了您的成本。
而现在,只需要一块几厘米见方的单片机,写入简单的程序,就可以使您以前的电路简单很多。
相信您在使用并掌握了单片机技术后,不管在您今后开发或是工作上,一定会带来意想不到的惊喜。
以AT89S52为核心控制器件的作息时间控制钟,由键盘、声音输出模块、电源转换模块和存储模块四部分组成。
它利用AT89S52的定时/计数器来计算时间,并用存储器记录数据,保证了系统的可靠性。
AT89S52单片机是整个设计的核心控制器件,根据从键盘接受的数据控制整个系统的工作流程。
整体性好,人性化强、可靠性高,实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,是现代学校必不可少的设备。
本次校园作息时间控制系统主要用于学校,对一些以24小时为周期的开关量进行自动控制。
如上下课打铃及扩音设备的开与关。
采用AT89S52单片机来实现对上述开关量的控制,利用24C02芯片来存储数据,设有六位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等优点。
关键词:作息时间控制; AT89S52; 24C021 绪论 (1)1.1背景介绍................................................................... 错误!未定义书签。
基于单片机的作息时间控制钟系统设计LG GROUP system office room 【LGA16H-LGYY-LGUA8Q8-LGA162】课设计任务书摘要片机作息时间控制系统设计的目的和意义:着计算机技术的发展和在控制系统中的广泛应用,以及设备向小型化、智能化发展,作为高新技术之一的单片机以其体积小、功能强、价格低廉、使用灵活等优势,显示出了很强的生命力。
进入21世纪以来,开发推出单片机的公司很多,各种高性能单片机芯片市场也异常活跃,新技术的不断采用,更加使单片机的种类、性能以及应用领域不断扩大和提高。
因其功耗低,超高型,低成本,功能完整,在国内越来越受到用户的重视和广泛使用。
随着科技的进步和技术不断的提升。
一块大而复杂的模拟电路花费了您巨大的精力,繁多的元器件增加了您的成本。
而现在,只需要一块几厘米见方的单片机,写入简单的程序,就可以使您以前的电路简单很多。
相信您在使用并掌握了单片机技术后,不管在您今后开发或是工作上,一定会带来意想不到的惊喜。
以AT89S52为核心控制器件的作息时间控制钟,由键盘、声音输出模块、电源转换模块和存储模块四部分组成。
它利用AT89S52的定时/计数器来计算时间,并用存储器记录数据,保证了系统的可靠性。
AT89S52单片机是整个设计的核心控制器件,根据从键盘接受的数据控制整个系统的工作流程。
整体性好,人性化强、可靠性高,实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,是现代学校必不可少的设备。
本次校园作息时间控制系统主要用于学校,对一些以24小时为周期的开关量进行自动控制。
如上下课打铃及扩音设备的开与关。
采用AT89S52单片机来实现对上述开关量的控制,利用24C02芯片来存储数据,设有六位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等优点。
关键词:作息时间控制; AT89S52; 24C02目录1 绪论 (1)背景介绍..................................................作息时间控制钟概述 (1)2 硬件介绍 (2)硬件仿真环境介绍 (2)系统整体设计 (2)控制钟硬件设计 (3)系统整体电路图 (4)3作息时间控制钟软件设计 (6)总体介绍 (6)软件环境介绍 (6)流程图介绍 (6)系统主程序 (6)系统数据读写子程序 (10)显示子程序 (14)报警扫描子程序 (19)键盘扫描子程序 (20)设置时钟子程序 (22)T1定时器中断子程序 (25)4 系统调试 (28)5结论 (29)6附录 (24)参考文献 (30)主要元件列表 (31)1 绪论背景介绍随着计算机技术的发展和在控制系统中的广泛应用,以及设备向小型化、智能化发展,作为高新技术之一的单片机以其体积小、功能强、价格低廉、使用灵活等优势,显示出了很强的生命力。
.“CETTIC全国可编程控制器(PLC)程序设计师”职业培训认证结业设计基于PLC控制的作息时间控制系统文档Word.指导教师:王冠华姓名:秦富贞文档Word.【摘要】本文介绍一种用PLC控制的作息时间控制系统,详细地阐述了系统组成、系统硬件接线和系统软件设计,并详细介绍了系统工作原理。
该系统具有外设电路配置简单、扩展方便、操作容易、可靠性高、实用性强等特点,集电铃、路灯、宿舍灯、教室灯、音乐广播自动控制于一体,并具有周末与假期控制功能,实现了作息时间无人控制的自动化、科学化管理与操作。
【关键词】作息时间控制;PLC;I/O接线;软件设计文档Word.文档Word.目录第一章绪论 (1)1.1引言 (1)1.2可编程控制器的特点 (1)1.3 PLC的应用领域 (2)1.4 PLC的设计步骤 (2)1.4.1 硬件设计 (2)1.4.2软件设计 (2)第二章作息时间控制系统的方案论证 (3)2.1 方案论证 (3)2.2 控制要求 (3)第三章作息时间PLC控制系统设计 (5)3.1 输入输出点分配 (5)3.2 控制系统的硬件设计 (6)3.3 控制系统的程序设计 (6)3.3.1 秒脉冲程序的设计 (6)3.3.2 分显示程序的设计 (6)3.3.3 时显示程序的设计 (8)3.3.4 星期显示程序的设计 (10)3.3.5 数字显示原理 (11)3.3.6广播、灯、打铃程序设计 (13)3.4 作息时间PLC控制器总梯形图 (16)第四章参考文献 (16)4.1 参考文献 (16)第五章附录 (17)附图(1)作息时间PLC控制器接线图 (17)附图(2)作息时间PLC控制器总梯形图 (17)文档Word.第一章绪论1.1引言可编程控制器是一种数字运算操作的电子系统,专为在工业环境下应用而设计。
它采用可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计算和算术运算等操作的指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。
中学作息时间实施方案为了更好地规范中学生的作息时间,促进学生身心健康发展,我校制定了以下中学作息时间实施方案:一、早晨活动时间。
早晨活动时间为每天早上7:00-7:20,学生可以在校园内进行晨跑、晨练、晨读等活动。
早晨活动时间的设置可以让学生在清新的空气中进行身体锻炼,提高身体素质,为一天的学习生活做好准备。
二、上午上课时间。
上午上课时间为每天8:00-11:30,共计3个课时,每节课45分钟,中间有15分钟的课间休息时间。
上午上课时间的设置符合学生的生物钟规律,有利于学生集中注意力,提高学习效率。
三、午餐休息时间。
午餐休息时间为每天11:30-13:30,学生可以在校内食堂用餐,也可以在自习室、教室自行准备午餐。
午餐休息时间的设置充分考虑了学生的进餐和休息需求,为学生提供了一个良好的用餐环境。
四、下午上课时间。
下午上课时间为每天13:30-16:30,共计3个课时,每节课45分钟,中间有15分钟的课间休息时间。
下午上课时间的设置可以让学生在午后的清新空气中进行学习,提高学习效果。
五、课外活动时间。
课外活动时间为每天16:30-18:00,学生可以选择参加各种社团活动、文体活动或者进行自习。
课外活动时间的设置可以让学生在课余时间进行丰富多彩的活动,培养兴趣爱好,促进全面发展。
六、晚餐休息时间。
晚餐休息时间为每天18:00-19:00,学生可以在校内食堂用餐,也可以在自习室、教室自行准备晚餐。
晚餐休息时间的设置充分考虑了学生的进餐和休息需求,为学生提供了一个良好的用餐环境。
七、晚自习时间。
晚自习时间为每天19:00-21:00,学生在教室进行自习,老师可以进行晚自习辅导。
晚自习时间的设置可以让学生在老师的指导下进行有针对性的学习,提高学习效果。
八、晚间活动时间。
晚间活动时间为每天21:00-21:30,学生可以进行晚间活动、休息或者进行自主学习。
晚间活动时间的设置可以让学生在放松的氛围中进行休息或者自主学习,为第二天的学习生活做好准备。
基于单片机的校园作息时间系统控制
校园作息时间系统控制可以使用单片机来实现。
具体步骤如下:
1. 设计电路:设计一个电路,通过单片机控制要显示的时间、
切换时间区间、自动切换时间、亮度等功能。
2. 编写程序:使用C、Assembly等编程语言编写单片机程序,
实现校园作息时间系统控制功能。
3. 烧录程序:将编写好的程序通过编程器烧录到单片机芯片中。
4. 测试验证:将芯片插入到实验板中,将开发板与电脑连接,
通过串口调试工具测试程序是否运行正常,验证控制功能是否正确。
5. 改进优化:对程序中出现的问题进行调试和优化,达到更好
的控制效果。
总结:基于单片机的校园作息时间系统控制可以实现自动切换
时间、显示当前时间等功能,是一种便捷、高效的控制方式。
单片机作息时间控制系统设计目录第一章绪论 (3)1. 1 课题的提出及意义 (3)1. 2 设计的任务及要求 (3)第二章总体方案设计 (3)2. 1 芯片比较 (3)2.1.1 单片机选型 (3)2.1.3存储器的选择 (7)2.1.4 继电器的选择 (8)2. 2总体设计及系统原理 (9)第三章硬件设计 (10)3. 1 单片机部分 (10)3.1.1 AT89C52 (10)3. 2 存储器部分 (13)3. 5 电源与复位电路部分 (23)3.5.1 电源部分 (23)3.5.2复位电路 (23)3. 6 电铃和继电器部分 (24)3. 7 按键部分 (24)第四章软件设计 (25)4.1 主程序设计 (25)4. 2 子程序设计 (27)第五章系统安装与调试 (28)5.1 软件调试 (28)5.2 系统调试 (28)参考文献 (29)第一章绪论1. 1 课题的提出及意义单片机作息时间控制实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,实现代学校必不可少的设备。
1. 2 设计的任务及要求1.作息时间能控制电铃2.作息时间能启动和关闭放音机单片机作息时间控制的功能如下:●使用4位七段显示器来显示现在的时间。
●显示格式为“时分”●由LED闪动来作秒计数表示●具有4个按键来作功能设置,可以设置现在的时间及显示定时设置时间●一旦时间到则发出一阵声响,同时继电器启动,可以控制放音机开启和关闭。
第二章总体方案设计2. 1 芯片比较2.1.1 单片机选型当今单片机厂商琳琅满目,产品性能各异。
常用的单片机有很多种:Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、台湾Winbond(华邦)W78系列、荷兰Pilips的PCF80C51系列、Microchip公司的PIC系列、Zilog 的Z86系列、Atmel的AT90S系列、韩国三星公司的KS57C系列4位单片机、台湾义隆的EM-78系列等。
基于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.。
《单片机原理及应用》课程设计说明书题目学校作息时间控制系统的设计系(部)专业(班级)姓名学号指导教师起止日期系部:电信系专业:2011级电子信息工程I课题名称学校作息时间控制系统的设计目录程序................................一、设计内容及要求.........................1.1 设计内容..........................1.2 设计要求..........................二、设计目的............................三、设计原理............................3.1 总的设计 ........................... 3.2 分模块设计 ..........................3.3 设计示意图.........................四、仿真分析............................4.1 调节工作模式 ........................4.2 闹钟实现 .................4.3 温度测量 .................五、心得体会..................六、参考文献..................415151515151515161616 错误!未定义书签。
错误!未定义书签。
错误!未定义书签。
错误!未定义书签。
程序#include "reg52.h"#include <intrins.h> #define uchar unsigned char #define uint unsigned int #define IO_ADDR P2#define delayNOP(); {_nop_();_nop_();_nop_();_nop_();};sbit RS=P1A 0; sbit RW=PM1; sbit EN=P1A2; sbit RST=P1A3; sbitPSB=P1A5; sbit mode=P0A0; sbit inc=P0A1; sbit dec=P0A2; sbit fmq=P3A4; //============作息时间控制系统 "}; 吴智勇 2011026103"}; 时间 : : : "};打铃 : : : "}; 定义一个二维数组, 4行, 1 6个字符// 调节模式uchar ds[20][2] ={{8,0},{8,45},{8,55},{9,40},{10,0},{10,45},{10,55},{11,40},{14,0},{ 14,45}, {14,55},{15,40},{16,0},{16,45},{16,55},{17,40},{19,0},{19,45},{19, 55},{20,40} };//====================================================== *************************************************************** void delay(int ms){while(ms--){uchar i;for(i=0;i<250;i++)//key1 模式//kye2 分 //key3 时 // 蜂鸣器接口 code uchar data1[16]={"code uchar data2[]={" code uchar data3[]={" code uchar data4[]={" uchardisp_buff[4][16];// ucharhour,min,sec,minisec; ucharmode_value=0 ,xf;**/{_nop_();_nop_();_nop_();_nop_();}}}//=========================void delayus(uint i){uchar y;while(--i)for(y=0;y<2;y++){;}}//====================================================== uchar read_data(void)// 读状态。
// 返回值1--- 空。
0 忙。
{uchar temp;RS=0;RW=1;delayus(2);EN=1;delayNOP();IO_ADDR=0XFF;temp=IO_ADDR;// 读输入口。
temp=temp&0x80;EN=0;if(temp==0x00){return(0);}else{return(1);}// 注:如需软件仿真,需要将此处改为1}//============================void write_data(uchar type,uchar date)// 写命令或写数据。
{while(read_data());//delayus(100);if(type)// 写数据1 {RS=1;}else//0// 写命令{RS=0;} delayus(1);//1 。
5USRW=0; delayus(1);//1 。
5USEN=0;delayus(1);delayus(1);delayus(1); IO_ADDR=date;delayNOP(); EN=1;delayNOP();EN=0; delayus(10);}[[***************************************************************void init_system()//12864 {PSB=1;RST=1;delayus(4);RST=0;delay(3);RST=1;delay(3);write_data(0,0x30);// delay(5);write_data(0,0x30);// delay(5);write_data(0,0x30);// delay(5);write_data(0,0x01);//初始化部分功能设定,8 位并行接口功能设定,基本指令集。
功能设定,8 位并行接口清屏,delay(5);write_data(0,0x01);// delay(5);write_data(0,0x02);// write_data(0,0x0c);// write_data(0,0x01);// write_data(0,0x01);// }//=========================================//==============================================void display_buff()//{uchar i;显示 2 维数组内的内容。
uchar *point;point=&disp_buff[0][0]; //write_data(0,0x01);// //delayus(5);清屏,//write_data(0,0x02);//地址归 0//delayus(10);//write_data(0,0x06);//地址归 0 /////////////// 一行一 行的显示 //////////////// // 行地址: 0X80 0X90 0X88 0X98write_data(0,0X80);// delayus(1);for(i=0;i<16;i++) {write_data(1,*point); point++; delayus(1); }//==================移到0X80位置。
//========================================= write_data(0,0X90); delayus(1);for(i=0;i<16;i++) {write_data(1,disp_buff[1][i]); delayus(1); }write_data(0,0X88); for(i=0;i<16;i++) {write_data(1,disp_buff[2][i]); delayus(1);清屏,将地址指针移到开头位置。
整体显示开。
清屏, 清屏,} write_data(0,0X98); for(i=0;i<16;i++){ write_data(1,disp_buff[3][i]); delayus(1);}}//===================================== void time0() interrupt 1{TH0=0X4C;TL0=0X00; if(minisec++>20){ minisec=0;if(++sec>59){sec=0;if(++min>59){min=0;if(++hour>24){ hour=0;min=0; sec=0; } } }}}void delaysj(unsigned char j)// 延时程序{ unsigned char i; while(j--){ for(i=0;i<50;i++);}// 蜂鸣器void s_fmq(){unsigned char j=2;// 蜂鸣器叫while(j--){fmq=0; delaysj(200);}}*********************************************************/void nling(){ uchar i ;for(i=0;i<20;i++){if(hour==ds[i][0]&&min==ds[i][1]){ if(sec<10)s_fmq(); // }}}铃判断// 判断是否到闹铃时间调用蜂铃// 调节模块void tiaojie() { uchar i;if(mode==0){ while(!mode); mode_value++;}//zifu(0xbc,0xb8,2,mode_value,&shu);switch(mode_value){ 0:正常工作。
显示“天天向上”// 模式case 0:{//uchar i;for(i=0;i<16;i++){disp_buff[0][i]=data1[i];disp_buff[1][i]=data2[i];}} break ;case 1:{ // 模式1:可以修改时间,其中inc 是改分钟,dec 是改小时if(inc==0){ while(!inc);min++;if(min==60) min=0;} if(dec==0){ while(!dec);if(min==0) min=60; min--;} //if(dec==0){ while(!dec);hour++; if(hour==24) hour=0;}// uchar i;for(i=0;i<16;i++){ disp_buff[2][i]=data3[i];}disp_buff[2][5]=(hour/10)+0x30;disp_buff[2][6]=(hour%10)+0x30;disp_buff[2][8]=(min/10)+0x30;disp_buff[2][9]=(min%10)+0x30;disp_buff[2][11]=(sec/10)+0x30; disp_buff[2][12]=(sec%10)+0x30;display_buff();} ;break;case 2:{if(inc==0){ while(!inc);hour++;if(hour==24) hour=0; }// 模式2:选择一个需要改变的闹铃//if(inc==0){ while(!inc);min+;if(min==60) min=0;}if(dec==0){ while(!dec);if(hour==0) hour=24;hour--; }// uchar i;for(i=0;i<16;i++){ disp_buff[2][i]=data3[i];}disp_buff[2][5]=(hour/10)+0x30; disp_buff[2][6]=(hour%10)+0x30;disp_buff[2][8]=(min/10)+0x30;disp_buff[2][9]=(min%10)+0x30;disp_buff[2][11]=(sec/10)+0x30; disp_buff[2][12]=(sec%10)+0x30;display_buff();//zifu(0xbe,0x40,2,xf/10,&shu);// zifu(0xbe,0x48,2,xf%10,&shu);// zifu(0xbe,0x68,2,2,&fuhao);// zifu(0xbe,0x70,2,ds[xf][1]/10,&shu);// zifu(0xbe,0x78,2,ds[xf][1]%10,&shu);/// zifu(0xbe,0x50,2,0,&fuhao);// zifu(0xbe,0x58,2,ds[xf][0]/10,&shu); // 显示“ 调整后的闹铃时间”// zifu(0xbe,0x60,2,ds[xf][0]%10,&shu);} ;break;case 3: {// 模式3:修改选定的闹铃的分钟if(inc==0){ while(!inc);ds[xf][1]++;if(ds[xf][1]==60) ds[xf][1]=0;}if(dec==0){ while(!dec);if(ds[xf][1]==0)ds[xf][1]=60;ds[xf][1]--;}// uchar i;for(i=0;i<16;i++){disp_buff[3][i]=data4[i];}disp_buff[3][5]=ds[xf][0]/10+0x30;disp_buff[3][6]=ds[xf][0]%10+0x30;disp_buff[3][8]=ds[xf][1]/10+0x30;disp_buff[3][9]=ds[xf][1]%10+0x30;disp_buff[3][11]=0+0x30;disp_buff[3][12]=0+0x30;display_buff();// 显示“调整后的闹铃时间”} ;break ;case 4:{ // 模式4:修改选定的闹铃的小时if(inc==0){ while(!inc);ds[xf][0]++;if(ds[xf][0]==24) ds[xf][0]=0;}if(dec==0){ while(!dec);ds[xf][0]--; if(ds[xf][0]==0) ds[xf][0]=23;}// uchar i;//for(i=0;i<16;i++)// {// disp_buff[3][i]=data4[i];// }disp_buff[3][5]=ds[xf][0]/10+0x30;disp_buff[3][6]=ds[xf][0]%10+0x30;disp_buff[3][8]=ds[xf][1]/10+0x30;disp_buff[3][9]=ds[xf][1]%10+0x30;disp_buff[3][11]=0+0x30;disp_buff[3][12]=0+0x30;display_buff();// hanzi(0xbe,0x40,2,2,&zi); // 显示“时”// zifu(0xbe,0x58,2,ds[xf][0]/10,&shu); // 显示“调整后的闹铃时间”// zifu(0xbe,0x60,2,ds[xf][0]%10,&shu);// zifu(0xbe,0x68,2,2,&fuhao);// zifu(0xbe,0x70,2,ds[xf][1]/10,&shu);// zifu(0xbe,0x78,2,ds[xf][1]%10,&shu);} ;break;case 5:{ mode_value=0 ;};break; // 模式5:确认修改,返回正常工作状态default:break;}}// 从打铃时间表中找出下一个要打铃的时间uchar Locate (void){ //uchar xf;//n;xf=0;while(xf<20){ if(hour<ds[xf][0]) break;else if((hour==ds[xf][0])&&(min<=ds[xf][1])) break;xf++;//n++;}if(xf==20) xf=0;//xf=0;return(xf);}void shizhong(){ uchar i;for(i=0;i<16;i++){disp_buff[0][i]=data1[i];disp_buff[1][i]=data2[i];disp_buff[2][i]=data3[i];disp_buff[3][i]=data4[i];}disp_buff[2][5]=(hour/10)+0x30; disp_buff[2][6]=(hour%10)+0x30;disp_buff[2][8]=(min/10)+0x30; disp_buff[2][9]=(min%10)+0x30;disp_buff[2][11]=(sec/10)+0x30; disp_buff[2][12]=(sec%10)+0x30;// 闹铃disp_buff[3][5]=ds[xf][0]/10+0x30; disp_buff[3][6]=ds[xf][0]%10+0x30;disp_buff[3][8]=ds[xf][1]/10+0x30; disp_buff[3][9]=ds[xf][1]%10+0x30;disp_buff[3][11]=0+0x30; disp_buff[3][12]=0+0x30;display_buff(); } /***************************************************************** **/ /* */ /* */ /* //========================================== *///**************************************************************** void main(void) {P0=0XFF;P2=0XFF;EA=1;ET0=1;TH0=0X4C;TL0=0X00;TMOD=0X01;TR0=1; init_system(); while(1) { tiaojie(); shizhong(); nling(); Locate (); //s_fmq();}}一、设计内容及要求1.1 设计内容以单片机为核心,设计一个智能化作息时间控制器。