ImageVerifierCode 换一换
格式:DOC , 页数:54 ,大小:655KB ,
资源ID:4409053      下载积分:14 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4409053.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(基于单片机的微波炉控制系统.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于单片机的微波炉控制系统.doc

1、 基于单片机的微波炉控制系统 54 2020年4月19日 文档仅供参考 江西科技师范大学 大学生科研、创新性实验项目设计方案 第一稿 项目 名称: 微波炉控制系统的设计与制作 项目负责人: 曾光辉 专 业: 电子信息工程   所在 学院: 通信与电子学院 指导 教师:

2、 占华林 5 月 20 日 江西科技师范大学教务处 1. 总体方案 本系统由核心元件AT89C51单片机、LCD1602、独立按键、蜂鸣器构成、电机,用来实现数字电子钟、做饭提醒、模拟定时加热功能。主控部分是由单片机和独立按键两部分构成,显示部分是LCD1602显示模块构成,闹铃部分是外接蜂鸣器构成,模拟加热部分是直流电机构成。实现了秒表和数字电子时钟的功能。工作过程中有各种工作状,显示 时 分 秒以及上午和下午的做饭时刻,这些参数都能够校正。 图 1微波炉控制系统的整个电路 2.基于单片机的

3、数字电子钟系统硬件设计 该数字钟工作原理是用一片AT89C51单片机经过编程去控制LCD1602实现的。经过2个开关控制来进行时间的调节以及秒表功能,P2.0(key1)口控制按键,当系统处于正常时间显示而且按下此键时,能够进入秒表功能和时间功能的切换,此键还能够作为时间和日期以及闹铃的调整位选中键,当系统处于时间显示模式时,按此键能够选中相应的需要调整的位。当系统处于时间显示模式时,P2.1(key2)口控制按键,按此键对相应的选中位进行加,当系统处于处于秒表工作模式时按此键能够控制秒表计时的启动和暂停。 其工作流程: 1.年月日时分秒显示。通电后LCD自动显示C语言程序设置好的默认时

4、间 2.闹钟显示和设定。通电后,A的右边显示的是默认的闹钟时间,经过key1和key2能够设置闹铃时间。 3.秒表显示以及启动和暂停以及清零。LCD处于正常显示时间模式下时按下key1释放后能够进入秒表模式,前3次按下key2的功能依次为启动停止清零,每按3次key2为一个轮回。 2.1时钟电路模块 下图2-1所示为时钟电路原理图,在AT89C51芯片内部有一个高增益反相放大器,其输出端为引脚XTAL2,输入为芯片引脚XTAL1。而在芯片外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,构成一个稳定的自激振荡电路,电路产生的振荡脉冲经过触发器进行十二分频之后,便成为单片机的时钟

5、信号。 图2-1 时钟电路原理图 2.2复位电路模块 下图2-2所示为复位电路原理图,在单片机的实际应用系统中,除单片机本身需复位以外,外部扩展的I/O接口电路等也需要一个复位,因此需要一个系统的同步复位信号,即单片机复位后,CPU开始工作,外部的电路一定要复位好,以保证CPU有效地对外部电路进行初始化编程。单片机复位的条件是:必须使RST/VPD 或RST引脚加上持续两个机器周期(即24个振荡周期)的高电平。电路为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RST端的电位与VCC相同,随着充电电流的减少,RST的电位逐渐降低。只要保证RST为高电平时间大于两个机器周期,就能

6、正常复位。 图2-2 复位电路原理图 2.3 LCD1602显示电路模块 下图2-3所示为LCD1602显示模块电路原理图 图4-3 显示模块电路原理图 2.4按键电路模块 下图4-4所示为独立按键模块电路原理图,根据此电子时钟功能要求,需要设置以下两个功能键:工作模式键(key1),模式辅助键(key2)。按照键盘与CPU的连接方式可分为独立键盘和矩阵键盘。独立式键盘是各个按键相互独立,每个按键占用一个I/O口,外加上拉电阻,每个I/O口上的按键不会影响到其它I/O口的按键工作状态。独立式键盘电路配置灵活,软件结构简单,因此本设计采用独立式键盘。 图2-4 独立按键

7、模块电路原理图 2.5闹铃模块 下图4-5所示为闹铃模块电路原理图,闹铃模式时,设定好闹铃时间,闹铃时间有时和分,当设定好的闹铃时间跟系统的当前时间的时和分相等时,系统给P2.2端口送低交替的高低电平,蜂鸣器发出一定频率报警声,一分钟后报警声停止,如果这一分钟内有按键按下则报警声也停止。 图2-5 闹铃模块电路原理图 2.6电机驱动模块 下图2-6所示为电机驱动电路原理图,当系统设定好加热的时长之后启动加热责电机转动,剩余的加热时间变为零之后电机停止转动。 图2-6 电机驱动电路原理图 3软件模块设计 介绍AT89C51软件开发环境Keil uVision2,怎样新

8、建一个工程以完成自己的设计和调试。 这里不是 Keil开发环境的详细使用手册,关于 Keil 的详细说明文档请浏览 Keil 软件的帮助文档。 3.1 建立一个新工程 点击 Project 菜单,选择 Greate New Project ... 如图 11 图5 建立一个新工程 弹出图12建立新工程对话框,文件名框中输入工程名字,保存类型选择.uv2,点击保存。 图6 选择工程类型 点击保存之后便出现芯片的选择框。 图7 选择芯片型号 点击确定之后出现下面的对话框。 图8 汇编启动代码 本系统采用C语言编程,因此选择否,出现窗口中的工程。

9、 图8 工作区窗口中的工程 图9 保存工作区 3.2 添加文件或新建程序文件 选中Source Group1后出现下面选项。 图10 添加源文件 点击Add Files to Group “Source Group 1”。 图11 向工程中添加源文件 新建一个 微波炉控制 文件夹,将文件名改为 微波炉控制.c 后保存到 微波炉控制 文件夹下。 按照前面添加文件的方法将 微波炉控制.c 添加到当前工程里。完成的结果如下图 图12 添加程序文件后的工程 4 系统调试 4.1 硬件调试 用万用表检测电路板各线路是否导通,用示波器检测信号是否

10、正常。 4.2 软件调试 4.2.1进入软件调试 打开用Protues7.8画好的仿真图 图13 画好仿真图 4.2.2 加载HEX文件 在Protues中双击AT89C51出现下面的对话框,找到HEX文件路径选中文件之后点击OK键回到之前的界面。 图14 加载HEX文件 点击左下方的按钮则启动仿真 图15 启动仿真 默认做饭提醒时间为上午11点整和下午6点整,默认时间为12点整 图16 启动仿真后 按下工作模式键(key1)后显示要加热的时间长短,能够经过模式辅助键(key2)来调整,最长能够调整到60分钟 图17 默认的加热时间

11、经过按模式辅助键(key2)后调整为1分钟加热时间 图18 调整后的加热时间 再次按工作模式按键后显示当前剩余的加热时间,此时并未倒计时,也没有启动加热 图19 显示启动加热前剩余的加热时间 按下模式辅助键之后启动加热,电机转动,开始到计时,若在加热过程中按下模式辅助键则能够停止加热。 图20 启动加热后的当前剩余加热时间 4.2 系统联调 对整个系统联调时,将每一部分代码与相关实现的硬件联合到一起进行调试,对于哪一部分出了问题就修改哪一部分。这样保证在综合调试的时候,顺利查找错误,找到问题点。 5. 系统性能测试 一个工作的开发系统下图所示:

12、 在此处添加实物调试图 附录: 源代码: /********************************************************** 项目 : 基于单片机微波炉控制系统 ============================================ 描述 : 系统采用12MHz晶振,以STC89C52为核心外接lcd1602显示和两个独立按键 以及蜂鸣器响铃、电机驱动。实现时钟功能以做饭提醒功能(系统

13、时钟采用24小时制), 系统上电后显示默认的时分秒以及做饭时间设置(上午11点和下午6点,闹铃的响铃时间为1分钟), 经过key1和key2能够对万年历以及闹铃设置进行调整以及秒表的启动暂停以及清零, 在没有光标显示时间的模式下前6每次按下key2依次会选中(光标闪烁)pm_alarm_minute,pm_alarm_hour, amm_alarm_minute,amm_alarm_hour,hour,minute,在光标闪烁的时候每次按下key2能够对相应选中位进行校正。 按下key1在设置微波炉加热时间的模式下,前60次按下key2加1,60次之微波

14、炉加热时间清零 按下key1后系统显示当前定好的时间,再按下key2则启动加热 作者 : 曾光辉 日期 : 5月7号 **********************************************************/ #include //系统头文件 #define data_bus P0 //lcd数据总线 #define WDATA 1 //rs=WDATA时写入数据 #define WCMD 0 //rs=WCMD时写入命令 #define KEY P2 //按键端口 #define ke

15、y_shake_time 2//键盘消抖时间 sbit rs=P2^5; //lcd数据指令选择端,高data低cmd sbit rw=P2^6; //lcd读写选择端,高读低写 sbit en=P2^7; //lcd信号加载端,下降沿有效 sbit key1=P2^0; //被拉低说明有键按下 sbit key2=P2^1; //被拉低说明有键按下 sbit fm=P2^2; //蜂鸣器 sbit motor= P2^3; //电机端口 unsigned char shift_flag; //切换显示标志 unsig

16、ned char model_flag; //模式转换标志 unsigned char start_flag; //做饭启停标志 unsigned char time_change_flag; //时间调整标志位 unsigned char key_value; //键值 unsigned char t0,t1; //系统时间计时变量和键盘消痘时间计时变量 unsigned char start_t1; //做饭启动后倒计时计数变量 struct TIM { unsigned char hour; //时 uns

17、igned char minute; //分 unsigned char second; //秒 unsigned char am_alarm_hour; //上午做饭闹铃时 unsigned char am_alarm_minute; //上午做饭闹铃分 unsigned char pm_alarm_hour; //下午做饭闹铃时 unsigned char pm_alarm_minute; //下午做饭闹铃分 unsigned char setup_cooking_time; //设定做饭实际那 unsigned char cook

18、ing_time_minute; //微波炉定时时间分 unsigned char cooking_time_second; //微波炉定时时间秒 }time= //初始化日期时间和闹钟以及秒表 { 12, 0, 0, 11, 0, 6, 0, 0, 0, 0, }; /*********************************** us级延时程序 ================= 说明 : 延时 2*i+1+2 个机器周期 12MHz时,延时 2*i us ******

19、/ void delay_us(unsigned char i) { while(--i); } /*********************************** 读lcd函数 ================= 说明 : 读取lcd1602内的内容 主要是读忙标志位 ***********************************/ unsigned char read_lcd(void) { unsigned char

20、read_value=0x00; //置为输入 data_bus=0x00; rs=1; //数据指令选择,rs只能为1, rw=1; //读使能 en=1; read_value=data_bus; //读取数据 delay_us(15); //延时1us左右 en=0; return(read_value); //返回读到的数据 } /************************************ 写lcd数据/指令函数 ===================== 说

21、明 :向lcd1602中写入数据或者指令 ************************************/ void write_lcd(unsigned char value,bit data_cmd ) //value表示要写入的内容,data/cmd表示数据指令选择 { // data_bus=0xff; //置为输出 delay_us(100); rs=data_cmd; //数据指令选择 rw=0; //写使能 en=1; data_bus=value; delay_us(100); en=0; del

22、ay_us(100); } /***************************************************** 键盘扫描函数 ==================== 说明 : MCU检测到有按键按下后TIMER1延时key_shake_time*10ms再次检测是否按键还是按下 还是按下则有效,读取键值,判断按键是否释放,若释放则对键值处理,返回的键值 是处理后的键值,否则不处理,返回0 *****************************************************/ un

23、signed char key_scan(void) { static unsigned char value; //键值 static unsigned char do_key; //执行相应命令标识 static unsigned char key_scan_step; //键盘扫描步骤 if(key_scan_step==0) { key_value = 0; if(do_key==0) { if(KEY & 0x03 != 0x03) { t1=0; do_key=1;

24、 } } if((t1>=key_shake_time)&&((KEY & 0x03) != 0x03)) { value = KEY & 0x03; do_key = 0; key_scan_step = 1; } } if((key_scan_step==1)&&((KEY & 0x03) == 0x03)) { key_scan_step = 0; switch(value) { case 0x02 : value = 1;break; case 0x01 : value = 2;bre

25、ak; case 0x03 : value = 0;break; default : value = 0;break; } return(value); } else return(0); } /***************************************** 按键处理函数 ==================== 说明 : 根据系统的要求对返回的键值做处理 *****************************************/ void key_process(void)

26、 { if(key_value == 1) { key_value=0; if(time_change_flag !=0) { if(time_change_flag == 1) { ++time.pm_alarm_minute; if(time.pm_alarm_minute>59) { time.pm_alarm_minute = 0; } write_lcd(0xCE,WCMD); write_lcd(time.pm_alarm_minute/10+'0',WDAT

27、A); write_lcd(0xCF,WCMD); write_lcd(time.pm_alarm_minute%10+'0',WDATA); write_lcd(0xCF,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag == 2) { ++time.pm_alarm_hour; if(time.pm_alarm_hour>23) { time.pm_alarm_hour = 0; } write_lcd(0

28、xCB,WCMD); write_lcd(time.pm_alarm_hour/10+'0',WDATA); write_lcd(0xCC,WCMD); write_lcd(time.pm_alarm_hour%10+'0',WDATA); write_lcd(0xCC,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag == 3) { ++time.am_alarm_minute; if(time.am_alarm_minute>59)

29、 { time.am_alarm_minute = 0; } write_lcd(0xC6,WCMD); write_lcd(time.am_alarm_minute/10+'0',WDATA); write_lcd(0xC7,WCMD); write_lcd(time.am_alarm_minute%10+'0',WDATA); write_lcd(0xC7,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag == 4) {

30、 ++time.am_alarm_hour; if(time.am_alarm_hour>23) { time.am_alarm_hour = 0; } write_lcd(0xC3,WCMD); write_lcd(time.am_alarm_hour/10+'0',WDATA); write_lcd(0xC4,WCMD); write_lcd(time.am_alarm_hour%10+'0',WDATA); write_lcd(0xC4,WCMD); write_lcd(0x0F

31、WCMD); } if(time_change_flag == 5) { ++time.hour; if(time.hour>23) { time.hour = 0; } write_lcd(0x85,WCMD); write_lcd(time.hour/10+'0',WDATA); write_lcd(0x86,WCMD); write_lcd(time.hour%10+'0',WDATA); write_lcd(0x86,WCMD); write

32、lcd(0x0F,WCMD); } if(time_change_flag == 6) { ++time.minute; if(time.minute>59) { time.minute = 0; } write_lcd(0x88,WCMD); write_lcd(time.minute/10+'0',WDATA); write_lcd(0x89,WCMD); write_lcd(time.minute%10+'0',WDATA); write_lcd(0x8

33、9,WCMD); write_lcd(0x0F,WCMD); } } if(time_change_flag == 0) { ++model_flag; if(model_flag == 2) { start_flag = 0; time.cooking_time_minute=time.setup_cooking_time; time.cooking_time_second=0; } if(model_flag >2) { time.setup_coo

34、king_time = 0; shift_flag = 0; model_flag = 0; time_change_flag = 0; write_lcd(0x01,WCMD); //清屏 } } } if(key_value == 2) { key_value=0; if(model_flag == 0) { TR0 = 0; ++time_change_flag; if(time_change_flag == 1) { write_lcd(0xCF,WCM

35、D); write_lcd(0x0F,WCMD); } if(time_change_flag == 2) { write_lcd(0xCC,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag == 3) { write_lcd(0xC7,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag == 4) { write_lcd(0xC4,WCM

36、D); write_lcd(0x0F,WCMD); } if(time_change_flag == 5) { write_lcd(0x86,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag == 6) { write_lcd(0x89,WCMD); write_lcd(0x0F,WCMD); } if(time_change_flag > 6) { TR0 = 1; write_

37、lcd(0x0C,WCMD); time_change_flag = 0; } } if(model_flag == 1) { time_change_flag = 0; ++time.setup_cooking_time; if(time.setup_cooking_time > 60) { time.setup_cooking_time = 0; } write_lcd(0xC7,WCMD); write_lcd(time.setup_cooking_time%100/10+'0',WD

38、ATA); write_lcd(0xC8,WCMD); write_lcd(time.setup_cooking_time%10+'0',WDATA); } if(model_flag == 2) { // time_change_flag = 0; ++start_flag ; if(start_flag == 1&&time.cooking_time_minute!=0) { motor = 0; //启动加热 } if(start_flag >1) { motor

39、 1; start_flag = 0; time.setup_cooking_time = 0; time.cooking_time_minute = 0; time.cooking_time_second = 0; } if(start_flag == 0) { motor = 1; //关闭加热 } } } } /****************************************** 更新日期和时间函数 ==========================

40、 说明 : 对TIMER0得到的系统时钟进行处理 从而得到时分秒年月日 ******************************************/ void update_time(void) { if(t0>=20) { t0=0; time.second++; if(time.second>59) { time.second=0; time.minute++; if(time.minute>59) { time.minute=0; time.hour++; if(tim

41、e.hour>23) { time.hour=0; } if(model_flag == 0) { write_lcd(0x85,WCMD); write_lcd(time.hour/10+'0',WDATA); write_lcd(0x86,WCMD); write_lcd(time.hour%10+'0',WDATA); } } if(model_flag == 0) { write_lcd(0x88,WCMD); write_l

42、cd(time.minute/10+'0',WDATA); write_lcd(0x89,WCMD); write_lcd(time.minute%10+'0',WDATA); } } if(model_flag == 0) { write_lcd(0x8B,WCMD); write_lcd(time.second/10+'0',WDATA); write_lcd(0x8C,WCMD); write_lcd(time.second%10+'0',WDATA); } } } /********

43、 秒表更新时间函数 ======================== 说明 : 对TIMER1得到的秒表计数进行处理 从而得到时分秒和毫秒 ***************************************/ void update_stop_watch(void) { /* if(model_flag == 1) { write_lcd(0xC7,WCMD); write_lcd(time.setup_cooking_time%100/10+'0',WDATA);

44、 write_lcd(0xC8,WCMD); write_lcd(time.setup_cooking_time%10+'0',WDATA); }*/ if(start_t1 >= 100 && start_flag == 1&&model_flag == 2&&time.setup_cooking_time!=0) { motor = 0; start_t1=0; --time.cooking_time_second; if(time.cooking_time_second==255) { time.cooking_time_s

45、econd=59; --time.cooking_time_minute; if(model_flag == 2) { write_lcd(0xC6,WCMD); write_lcd(time.cooking_time_minute%100/10+'0',WDATA); write_lcd(0xC7,WCMD); write_lcd(time.cooking_time_minute%10+'0',WDATA); } } if(time.cooking_time_minute == 0&&time.coo

46、king_time_second==0) { time.setup_cooking_time = 0; motor = 1; start_flag = 0; } if(model_flag == 2) { write_lcd(0xC9,WCMD); write_lcd(time.cooking_time_second/10+'0',WDATA); write_lcd(0xCA,WCMD); write_lcd(time.cooking_time_second%10+'0',WDATA); } } }

47、 /***************************************** 切换显示函数 =================== 说明 : 在时间显示和秒表显示之间进行切换 *****************************************/ void shift_display(void) { if(model_flag == 0 && time_change_flag == 0 && shift_flag ==0) { shift_flag = 1; do { write_lcd(0x01,WCMD);

48、 //清屏 write_lcd(0x8B,WCMD); write_lcd(time.second/10+'0',WDATA); write_lcd(0x8B,WCMD); write_lcd(time.second/10+'0',WDATA); write_lcd(0x8C,WCMD); write_lcd(time.second%10+'0',WDATA); write_lcd(0x8A,WCMD); write_lcd(':',WDATA); write_lcd(0x88,WCMD); write_lcd(t

49、ime.minute/10+'0',WDATA); write_lcd(0x89,WCMD); write_lcd(time.minute%10+'0',WDATA); write_lcd(0x87,WCMD); write_lcd(':',WDATA); write_lcd(0x85,WCMD); write_lcd(time.hour/10+'0',WDATA); write_lcd(0x86,WCMD); write_lcd(time.hour%10+'0',WDATA); write_lcd(0xCF,WCMD

50、); write_lcd(time.pm_alarm_minute%10+'0',WDATA); write_lcd(0xCE,WCMD); write_lcd(time.pm_alarm_minute/10+'0',WDATA); write_lcd(0xCD,WCMD); write_lcd(':',WDATA); write_lcd(0xCC,WCMD); write_lcd(time.pm_alarm_hour%10+'0',WDATA); write_lcd(0xCB,WCMD); write_lcd(time.

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服