




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
INCLUDE_CONFIG0X20F1_CONFIG0X3FFF/调试用DEFINELCD_ERD6/LCDE读写使能控制DEFINELCD_RWRD5/LCD读1/写0控制线DEFINELCD_RSRD4/LCD寄存器选择数据1指令0/RD4RD7分别接DB4DB7,RD7为忙标志DEFINECOM0/在LCD_WRITE中的第2参数为0表示写命令DEFINEDAT1/在LCD_WRITE中的第2参数为1表示写数据DEFINEMODRB3/模式选择(时间、闹钟、温度、秒表)DEFINESETRB0/选择按键DEFINEADDRB1/加按键DEFINEMIURB2/减按键DEFINERTR0B00000000/TC74的读温度命令DEFINETC74_ADD0B1001101/TC74的7位地址DEFINELINE10B10000000DEFINELINE20B11000000SIGNEDCHARHOURT,MINT,SECT/闹钟设置位INTF/闹钟显示清零判断CHARFLAG0/按键标志位CHARWW,QW,BW,SW,GW,MCHARTABLE“MONTUEWEDTHUFRISATSUN“/星期SIGNEDCHARYEAR,MONTH,DAY,WEEK,HOUR,MIN,SEC,A,TBANK1CHARDD16/一行LCD显示数据暂存CHARA7/DS1307读数/LCD程序VOIDCSHVOID/初始化VOIDLCD_CSHVOID/LCD初始化VOIDLCD_BUSYVOID/检测LCD是否忙CHARLCD_READVOID/读LCD,忙检测用VOIDLCD_WRITECHAR,CHAR/LCD写1字节,命令或数据VOIDLCD_WRITE_4CHAR,CHAR/LCD写半字节VOIDDISP_CCHAR/在指定行中显示字符,字符在数组DD中VOIDDISP_MENUCONSTCHAR/由常数数组显示整屏字符VOIDDELAY_USCHARVOIDDELAYUNSIGNEDINTVOIDDELAYNMSUNSIGNEDINT/DS1307VOIDIIC_SENDCHARVOIDIIC_CSHVOIDVOIDREAD_DS1307CHARADDR,CHARNVOIDWRITE_DS1307CHARADDR,CHARDATAVOIDDS1307_CSHVOID/DS1307初始化VOIDMENU_DS1307VOID/温度VOIDDISP_TSIGNEDCHARR1/温度在R1SIGNEDCHARREAD_TVOIDVOIDCLOCK/闹钟VOIDSET_TIMEVOID/按键VOIDBCD_DECCHARADR,CHARRCHARDEC_BCDCHARDECVOIDBCDUNSIGNEDINTR1VOIDGUANGBIAOVOID/光标/主程序VOIDMAINCSHREAD_DS13070,7/读DS1307IFA0/判断是否初始化WHILE1CLOCKSET_TIME/按键检测DELAYNMS50IFFLAG0READ_DS13070,7/读DS1307MENU_DS1307/显示DS1307TREAD_T/读温度DISP_TT/显示温度/初始化端口VOIDCSHVOIDTRISD0B00000000/控制LCD1604,全为输出RD71/背光TRISB0X0FFRBPU0WPUB0X0FFANSELH0PORTB0X00/PWM设置TRISC10/RC1为输出RC10PR2124/周期为1MSCCPR2L0X32CCP2CON0B00000000/关闭PWMT2CON0B00000110/TMR2预分频116,开始工IIC_CSHLCD_CSH/LCD模块初始化VOIDLCD_CSHVOIDDELAY20/延时20MSLCD_WRITE_40B0011,COM/发送控制序列DELAY_US10/延时100USLCD_WRITE_40B0011,COM/发送控制序列DELAY_US10/延时100USLCD_WRITE_40B0011,COM/发送控制序列DELAY_US10/延时100USLCD_WRITE_40B0010,COM/4位数据格式LCD_BUSY/LCD忙检测LCD_WRITE0B00101000,COM/4位数据格式,2行,57点阵LCD_WRITE0B00001100,COM/DD21打开显示,CD11光标打开,BD01光标不闪烁LCD_WRITE0B00000001,COM/清除显示DELAY2/延时2MSLCD_WRITE0B00000110,COM/输入模式,I/DD11地址加1,SD01显示移位关闭/读LCD状态CHARLCD_READVOIDUNSIGNEDCHARR1TRISD|0X0F/LCD数据线为输入LCD_RS0/寄存器选择LCD_RW1NOP/读为1LCD_E1NOP/使能R10/短延时R1PORTD4/取高4位LCD_WRITE_4R2,FLAG/先写高4位R2R1/高4位清0,取低4位LCD_WRITE_4R2,FLAG/再送低4位DELAY_US10/延时100US/写R1的低4位,FLAG为寄存器选择,1为命令,0为数据VOIDLCD_WRITE_4CHARR1,CHARFLAGTRISDLCD_RW0NOP/写模式LCD_RSFLAGNOP/寄存器选择PORTDNOP/RD低4位先清0LCD_E1NOP/使能R1R1/R1低4位送至低4位PORTD|R1NOP/送4位LCD_E0NOP/数据送入有效,下降沿送入LCD_RS0NOPPORTD/RD低4位清0/检测LCD是否忙VOIDLCD_BUSYVOIDUNSIGNEDCHARR1WHILE1R1LCD_READ/读寄存器IFR1/延时NMSVOIDDELAYUNSIGNEDINTNUNSIGNEDINTJCHARKFORJ0J0KNOP/延时NMSVOIDDELAYNMSUNSIGNEDINTNUNSIGNEDINTJCHARKFORJ0J0KNOP/延时N10USVOIDDELAY_USCHARNCHARJFORJ0J40X30,DATLCD_WRITEA6LCD_WRITE,DATLCD_WRITEA540,DATLCD_WRITEA5LCD_WRITE,DATLCD_WRITEA440,DATLCD_WRITEA4LCD_WRITE,DATIA3LCD_WRITETABLEI14,DATLCD_WRITETABLEI141,DATLCD_WRITETABLEI142,DATLCD_WRITETABLEI143,DAT/LCD_WRITE,DATLCD_WRITELINE2,COM/DDRAM地址,第2行的第1个字符LCD_WRITE,DATLCD_WRITEA240,DATLCD_WRITEA2LCD_WRITE0X3A,DATLCD_WRITEA140,DATLCD_WRITEA1LCD_WRITE0X3A,DATLCD_WRITEA040,DATLCD_WRITEA0LCD_WRITE,DATCHARDEC_BCDCHARDECCHARBCDBCD0WHILEDEC10DEC10BCDBCD4GWAADRWHILESW0RR10SWRGW/按键程序VOIDSET_TIMEIFMOD0DELAYNMS30IFMOD0WHILEMOD/等待MIFM3M0FLAG0F0A0IFM1/设置时间IFSET0DELAYNMS30IFSET0WHILESETAIFA8A0GUANGBIAO/光标定位,闪烁IFA1IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC0,SECSECIFSEC60SEC0WRITE_DS13070,DEC_BCDSECIFMIU0DELAYNMS30IFMIU0WHILEMIUBCD_DEC0,SECSECIFSEC1SEC59WRITE_DS13070,DEC_BCDSECIFA2IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC1,MINMINIFMIN60MIN0WRITE_DS13071,DEC_BCDMINIFMIU0DELAYNMS30IFMIU0WHILEMIUBCD_DEC1,MINMINIFMIN1MIN59WRITE_DS13071,DEC_BCDMINIFA3IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC2,HOURHOURIFHOUR24HOUR0WRITE_DS13072,DEC_BCDHOURIFMIU0DELAYNMS30IFMIU0WHILEMIUBCD_DEC2,HOURHOURIFHOUR1HOUR23WRITE_DS13072,DEC_BCDHOURIFA4IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC3,WEEKWEEKIFWEEK8WEEK1WRITE_DS13073,DEC_BCDWEEKIFMIU0DELAYNMS30IFMIU0WHILEMIUBCD_DEC3,WEEKWEEKIFWEEK0WEEK7WRITE_DS13073,DEC_BCDWEEKIFA5IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC4,DAYDAYIFDAY32DAY1WRITE_DS13074,DEC_BCDDAYIFMIU0DELAYNMS30IFMIU0WHILEMIUBCD_DEC4,DAYDAYIFDAY0DAY31WRITE_DS13074,DEC_BCDDAYIFA6IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC5,MONTHMONTHIFMONTH13MONTH1WRITE_DS13075,DEC_BCDMONTHIFMIU0DELAYNMS30IFMIU0WHILEMIUBCD_DEC5,MONTHMONTHIFMONTH0MONTH12WRITE_DS13075,DEC_BCDMONTHIFA7IFADD0DELAYNMS30IFADD0WHILEADDBCD_DEC6,YEARYEARIFYEAR99YEAR0WRITE_DS13076,DEC_BCDYEARIFMIU0DELAYNMS30IFMIU0WHILEMIUYEARIFYEAR1YEAR99BCD_DEC6,YEARWRITE_DS13076,DEC_BCDYEARREAD_DS13070,7/读DS1307/闹钟按键设置ELSEIFM2FFLAG1IFF1A0LCD_WRITELINE21,COM/显示上次闹铃时间BCDHOURTLCD_WRITESW0,DATLCD_WRITEGW0,DATLCD_WRITELINE24,COMBCDMINTLCD_WRITESW0,DATLCD_WRITEGW0,DATLCD_WRITELINE27,COMBCDSECTLCD_WRITESW0,DATLCD_WRITEGW0,DATIFSET0/设置时间DELAYNMS30IFSET0WHILESETAIFA4A0GUANGBIAO/光标定位,闪烁IFA1IFADD0DELAYNMS30IFADD0WHILEADDSECTIFSECT60SECT0BCDSECTLCD_WRITELINE27,COMLCD_WRITESW0X30,DAT/显示十位LCD_WRITEGW0X30,DAT/显示个位IFMIU0DELAYNMS30IFMIU0WHILEMIUSECTIFSECT1SECT59BCDSECTLCD_WRITELINE27,COMLCD_WRITESW0X30,DAT/显示十位LCD_WRITEGW0X30,DAT/显示个位IFA2IFADD0DELAYNMS30IFADD0WHILEADDMINTIFMINT60MINT0BCDMINTLCD_WRITELINE24,COMLCD_WRITESW0X30,DAT/显示十位LCD_WRITEGW0X30,DAT/显示个位IFMIU0DELAYNMS30IFMIU0WHILEMIUMINTIFMINT1MINT59BCDMINTLCD_WRITELINE24,COMLCD_WRITESW0X30,DAT/显示十位LCD_WRITEGW0X30,DAT/显示个位IFA3IFADD0DELAYNMS30IFADD0WHILEADDHOURTIFHOURT24HOUR0BCDHOURTLCD_WRITELINE21,COMLCD_WRITESW0X30,DAT/显示十位LCD_WRITEGW0X30,DAT/显示个位IFMIU0DELAYNMS30IFMIU0WHILEMIUHOURTIFHOURT1HOURT23BCDHOURTLCD_WRITELINE21,COMLCD_WRITESW0X30,DAT/显示十位LCD_WRITEGW0X30,DAT/显示个位/光标定位VOIDGUANGBIAOVOIDSWITCHACASE1LCD_WRITE0B11001000,COMLCD_WRITE0B00001111,COMBREAK/定位秒,光标打开,BD01光标闪烁CASE2LCD_WRITE0B11000101,COMLCD_WRITE0B00001111,COMBREAK/定位分,光标打开,BD01光标闪烁CASE3LCD_WRITE0B11000010,COMLCD_WRITE0B00001111,COMBREAK/定位时,光标打开,BD01光标闪烁CASE4LCD_WRITE0B10001110,COMLCD_WRITE0B00001111,COMBREAK/定位星期,光标打开,BD01光标闪烁CASE5LCD_WRITE0B10001010,COMLCD_WRITE0B00001111,COMBREAK/定位日,光标打开,BD01光标闪烁CASE6LCD_WRITE0B10000111,COMLCD_WRITE0B00001111,COMBREAK/定位月,光标
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年防组织粘连用壳聚糖凝胶项目建议书
- 小学安全全员培训计划课件
- 2025河南新乡市延津县县外在编在岗教师回乡任教的模拟试卷含答案详解
- 2025杭州市上城区采荷街道办事处编外招聘14人考前自测高频考点模拟试题有完整答案详解
- 2025广东计划招募100人模拟试卷及一套参考答案详解
- 安全培训效果验证课件
- 2025年度中南大学湘雅二医院招聘模拟试卷及答案详解(网校专用)
- HER2-IN-22-生命科学试剂-MCE
- 2025江苏连云港市灌云县招聘就业困难人员公益性岗位26人模拟试卷(含答案详解)
- 2025年甘肃省嘉峪关市卫生健康委员会招聘公益性岗位人员10人考前自测高频考点模拟试题及答案详解(名校卷)
- 红十字救护员培训理论试题及答案
- 动量守恒定律模型归纳(11大题型)(解析版)-2025学年新高二物理暑假专项提升(人教版)
- 招商银行ai面试试题及答案
- 慢性阻塞性肺疾病(COPD)护理业务学习
- 2025-2026学年北师大版(2024)初中生物七年级上册教学计划及进度表
- 产科危急重症早期识别中国专家共识解读 3
- 医疗器械配送应急预案模板(3篇)
- DB65-T 4803-2024 冰川厚度测量技术规范
- 护理专业新进展介绍
- 大疆无人机培训课件
- 中级消防员维保培训课件
评论
0/150
提交评论