久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
電子鐘加上溫度顯示,AT89C51+DS1302+DS18B20 六位數碼管顯示
[打印本頁]
作者:
xiaos
時間:
2015-4-3 01:16
標題:
電子鐘加上溫度顯示,AT89C51+DS1302+DS18B20 六位數碼管顯示
/* 電子鐘加上溫度顯示,AT89C51+DS1302+DS18B20 六位數碼管顯示,四位用于時間顯示,兩位用于溫度顯示
陳永飛同志于2016-2-13寫,信箱:baiyoyni888@163.com QQ:495204743
地址:江蘇省儀征市 電話:13584816200
晶振用12MHz,數碼管用共陽的*/
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
#include"DS1302.h"
#include"DS18B20.h"
#define sec 0x80
#define min 0x82
#define hou 0x84
#define read 0x01
unsigned char hour,minute,second,id=0,timecount,re_disp=0,p,n0,n1;
bit flag;
#define leddata P0 //定義數碼管的段選
sbit ssw=P2^7; //小時十位
sbit sw=P2^6; //小時個位
sbit sfw=P2^5; //分十位
sbit fw=P2^4; //分個位
sbit wdsw=P2^3; //溫度十位
sbit wdgw=P2^2; //溫度個位
sbit DOWN=P2^1; //加按鍵
sbit UP=P2^0; //減按鍵
//sbit DQ=P3^0; //DS18B20信號端
//sbit T_CLK=P3^1; //DS1302的時鐘端
//sbit T_IO=P3^2; //DS1302的數據端
//sbit T_RES=P3^3; //DS1302的復位端
sbit SET=P3^4; //時間設定鍵
unsigned int ok;
unsigned char code tab[]={0x48,0xEE,0x54,0xC4,0xE2,0xC1,0x41,0xEC,0x40,0xC0,0x60};
unsigned char inittime[7]={0x00,0x00,0x12,0x16,0x11,0x06,0x04};
// 秒 分鐘 小時 日 月 年 星期
void Set_id(unsigned char sel,unsigned char sel_1);
void delays(unsigned char k)
{
unsigned char i,j;
for(i=0;i<k;i++)
for(j=0;j<50;j++);
}
void display(void)
{
if(flag&hour) //為真時是設定時間
{
ssw=0;leddata=0xff;delays(10);ssw=1;
sw=0;leddata=0xff&~((unsigned char)~flag<<6);delays(10);sw=1;
}
else //為假時為正常走時
{
leddata=tab[Read1302(hou+1)/16];ssw=0;delays(10);ssw=1;
leddata=tab[Read1302(hou+1)%16]&~((unsigned char)~flag<<6);sw=0;delays(10);sw=1;
}
if(flag&minute)
{
sfw=0;leddata=0xff&~((unsigned char)~flag<<6);delays(10);sfw=1;
fw=0;leddata=0xff;delays(10);fw=1;
}
else
{
leddata=tab[Read1302(min+1)/16]&~((unsigned char)~flag<<6);sfw=0;delays(10);sfw=1;
leddata=tab[Read1302(min+1)%16];fw=0;delays(10);fw=1;
}
TR0=0; //關定時器
ok=Read_Temperature(); //調用讀溫度函數
TR0=1; //開定時器
p=(unsigned char)(ok>>4); //溫度數據轉換
wdsw=0;leddata=tab[p%100/10];delays(10);wdsw=1; //溫度顯示十位
wdgw=0;leddata=tab[p%10];delays(10);wdgw=1; //溫度顯示個位
}
void id_case1_key(void) //按鍵加減子程序
{
display();
if (!DOWN) //減少
{
while(!DOWN)display();
re_disp=0;
Set_id(id,0);
}
if (!UP) //增加
{
while(!UP)display();
re_disp=0;
Set_id(id,1);
}
}
void Scan_Key(void) //按鍵掃描程序
{
display();
if(!SET)
{
while(!SET)display();
re_disp=0;
id++;if(id>2)id=0;
}
if(id==0){hour=0;minute=0;second=0;}
if(id==1){hour=1;id_case1_key();}
if(id==2){hour=0;minute=1;id_case1_key();}
// if(id==3){minute=0;second=1;id_case1_key();}
}
//根據選擇調整相應項目并寫入DS1302
void Set_id(unsigned char sel,unsigned char sel_1)
{
signed char max,mini,address,item;
if(sel==1) {address=hou; max=23;mini=0;} //小時
if(sel==2) {address=min; max=59;mini=0;} //分鐘
// if(sel==3) {address=sec; max=0;mini=0;} //秒
item=Read1302(address+1)/16*10+Read1302(address+1)%16;
if (sel_1==0) item--; else item++;
if(item>max) item=mini;
if(item<mini) item=max;
Write1302(0x8e,0x00);//允許寫操作
Write1302(address,item/10*16+item%10);
Write1302(0x8e,0x80);//寫保護,禁止寫操作
}
void main()
{ TMOD=0x01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
EA=1;
ET0=1;
TR0=1;
Write1302(0x90,0xa5);//打開充電二級管 一個二級管串聯一個2K電阻
Write1302(0x8e,0x80);//寫保護,禁止寫操作
if(!UP&!DOWN)Set1302(inittime);
adjust_res(0x7f); //調整18B20的分辨率 0x1f:0.5; 0x3f:0.25; 0x5f:0.125; 0x7f:0.0625
while(1)
{
Scan_Key(); //調用按鍵掃描程序
display(); //調用數碼管顯示程序
}
}
void t0(void) interrupt 1 using 0
{
TH0=(65535-50000)/256; //50ms定時
TL0=(65535-50000)%256;
timecount++;re_disp++;
if(timecount>9)
{
timecount=0;
flag=~flag;
}
if(re_disp>200){re_disp=0;if(id)id=0;}
}
復制代碼
作者:
xstao
時間:
2015-9-8 21:19
編譯無法通過啊
作者:
xstao
時間:
2015-9-8 21:19
編譯無法通過啊
作者:
tranhunga
時間:
2017-5-4 15:32
編譯無法通過啊
作者:
你在,不在
時間:
2017-5-8 20:06
缺少1302和18b20的.h和.c文件
作者:
數碼家園
時間:
2018-6-9 07:00
樓上說的對,這個應該是缺少文件的
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
久久免费国产
|
国产视频三区
|
六月色
|
亚洲精品在线视频
|
少妇av在线
|
成人不卡视频
|
久久夜视频
|
免费在线黄色网址
|
www.亚洲视频
|
欧美黑人一区二区三区
|
xxxx色
|
国产精品海角社区
|
另类小说第一草
|
日韩午夜精品
|
国产精品成人在线
|
国产色网站
|
天天干天天弄
|
国产人人干
|
鲁鲁鲁鲁鲁鲁鲁777777
|
av在线播放网站
|
www.国产精品
|
日韩福利在线
|
精品乱子伦一区二区三区
|
中文一区二区
|
亚洲精品视频在线播放
|
天天操天天看
|
欧美成人一级片
|
三级在线播放
|
国产一区二区在线视频
|
亚洲第一伊人
|
开心激情站
|
免费久久久
|
国产高清免费
|
性生活毛片
|
国产日韩中文字幕
|
www.日本在线观看
|
国产精品免费一区二区
|
91啦丨九色丨刺激
|
激情久久久
|
中文字幕一区二区三区四区
|
特级黄色片
|