网站大量收购独家精品文档,联系QQ:2885784924

基于PIC16F877A单片机的温度,时间显示毕业设计(论文).docVIP

基于PIC16F877A单片机的温度,时间显示毕业设计(论文).doc

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于PIC16F877A单片机的温度,时间显示 #includepic.h __CONFIG(0x3B31); #define rs RD0 #define rw RD1 #define en RD2 #define BEEP RD3 #define s1 RA0 #define s2 RA1 #define s3 RA2 #define s4 RA3 #define uint unsigned int #define uchar unsigned char signed char set_time[7]={0,58,23,6,1,5,12};//秒 分 时 星期 日 月 年 signed char read_time[7]={0,0,0,0,0,0,0}; signed char shi=7,fen=15,alarm_time=1,reapeat_fen=2;//闹钟时,闹钟分,闹铃响分钟,闹铃响间隔 uchar s1_num,s2_num; void PORT_INIT() { TRISA=0xff;//A口设置为输入 ADCON1=0x06;//RA口上电复位为模拟输入口 TRISC3=1;//SCL和SDA设置为输入 TRISC4=1; TRISD=0x00;//D口设置为输出 } void IIC_INIT() { SSPCON=0x28; STAT_SMP=0; SSPADD=4; } void delayms(uint z)//延时 函数 { uint x,y; for(x=z;x0;x--) for(y=110;y0;y--); } void delayus(uint k) { while(k--); } void write_byte_low(uchar R1,uchar flag0)//写一个字节的低4位,flag0为指令/数据选择位 { //,0为写指令,1为写数据 uchar low; rs=flag0; low=R10x0f; low=low4; PORTD=0x0f;NOP(); PORTD|=low;NOP();//写指令的低4位 en=1;delayus(20);en=0; } void lcd_write(uchar dat,uchar flag1)//写指令/数据到1602 { uchar dat_high,dat_low; dat_high=dat4; write_byte_low(dat_high,flag1); dat_low=dat0x0f; write_byte_low(dat_low,flag1); NOP(); } /*void write_string(uchar address,uchar const *str)//往指定的地址写字符串 { uchar i=0; lcd_write(address,0); while(str[i]!=\0) { lcd_write(str[i],1); delayus(5); i++; } }*/ void LCD_INIT()//初始化函数 { rw=0; en=0; delayms(20); write_byte_low(0b0011,0); delayms(1); write_byte_low(0b0011,0); delayus(10); write_byte_low(0b0011,0); delayus(10); write_byte_low(0b0010,0); delayms(1); lcd_write(0x28,0); delayms(5); lcd_write(0x0c,0); delayms(5); lcd_write(0x01,0); delayms(5); lcd_write(0x06,0); delayms(5); } void didi() { BEEP=1; delayus(20); BEEP=0; delayus(20); } void naoling() { uchar i; for(i=0;i20;i++) { BEEP=1; delayus(5); BEEP=0; delayus(5); } } void IIC_SEND(uchar num) { SSPBUF=num; while(STAT_RW==1);//等待发送结束 while(SSPIF==0); while(ACKSTAT==1);//等待应答 } void dispose()//BCD数据处理 { uchar i,temp1

文档评论(0)

2749166188 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档