- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
/*:功能1602时钟和18B20温度
/*作者:斌彬
/*时间:2012年9月22日20:22:37
*/
#includereg52.h//包含52单片机头文件
#include18b20.h
#includestdio.h
#define uchar unsigned char
#define uint unsigned int
#define N 64
#define Port P0
sbit RS=P2^4; //定义液晶RS端
sbit RW=P2^5;
sbit LCDEN=P2^6;//定义液晶LCDEN端
sbit s1=P1^1; //定义功能键
sbit s2=P1^2; //定义增加键
sbit s3=P1^3; //定义减小键
sbit BE = P1^4;
uchar idata CGCODE[]={0x08,0x0F,0x12,0x0F,0x0A,0x1F,0x02,0x02,//年代码 0x00
0x0F,0x09,0x0F,0x09,0x0F,0x09,0x13,0x00,//月代码 0x01
0x0F,0x09,0x09,0x0F,0x09,0x09,0x0F,0x00,//日代码 0x02
0x01,0x06,0x1C,0x04,0x1F,0x0E,0x15,0x04,//“秒“的右部”禾“0x03
0x04,0x06,0x07,0x0D,0x14,0x06,0x0C,0x18, //”秒“的左部少0x04
0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x00,//“℃” 0x05
0x07,0x14,0x07,0x14,0x07,0x10,0x07,0x05, //温度0x06
0x1E,0x02,0x1E,0x02,0x1E,0x00,0x1C,0x14 // 0x07
}; //写字符
//uchar tab1[3]={0};//显示温度
//uchar tab2[7] = {2,2,:,4,4,0,0}; //当前时间
uchar idata count,count1,s1_num; //时间计数器和合功能键的位移
char second,shi,minute,year,month,day;
uchar code table[7]=TEMP 12; //两千年的前缀
uchar idata temp1[] = TEMP;
char idata displaytemp[5];//定义显示区域临时存储数组
/*----------------------/
延时函数
/----------------------*/
void delay(uint z)
{
uint x,y;
for(x=z;x0;x--)
for(y=110;y0;y--);
}
/*----------------------/
写命令
/----------------------*/
void LCD_Write_Com(uchar com)
{
RS=0;
LCDEN=0;
Port=com;
delay(5);
LCDEN=1;
delay(5);
LCDEN=0;
}
/*----------------------/
写数据
/----------------------*/
void LCD_Write_Data(uchar date)
{
RS=1;
LCDEN=0;
Port=date;
delay(5);
LCDEN=1;
delay(5);
LCDEN=0;
}
/*----------------------/
写自定义字符
/----------------------*/
void DDRAM()
{
int i,j;
LCD_Write_Com(0x40);
for(i = 0; i N; i++)
{
LCD_Write_Data(CGCODE[i]);
}
}
/*----------------------/
函数功能:写字符串
说明:line为选择的行
position为选择的位置
*s为字符串的首地址
/----------------------*/
void LCD_Write_String(uchar line, uchar position, uchar *s)
{
if (line == 1)
{
LCD_Write_Com(0x80 + position); //表示第一行
}
您可能关注的文档
最近下载
- 2024-2025学年山西省太原市六年级上期中数学试卷附答案解析.pdf VIP
- 幂的运算(基础)巩固练习.doc VIP
- 国家开放大学excel在财务中的应用形考作业三.xlsx VIP
- 高善文演讲速记+ppt-国投证券-2024.12.pdf VIP
- 光伏发电项目投标文件.doc VIP
- 相控阵检测工艺规程.pdf VIP
- 铜杆行业市场环境分析及铜杆行业未来5—10年破局发展战略建议.docx
- 新概念英语第一册课件-lesson51-52.ppt VIP
- Greedy Rabbit(贪吃的兔子)绘本故事及教学设计.docx VIP
- 阿里云-城市大脑数据智能解决方案(128页 PPT).pptx
原创力文档


文档评论(0)