久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機+12864顯示時鐘
[打印本頁]
作者:
442319639
時間:
2019-4-15 20:10
標題:
單片機+12864顯示時鐘
12864顯示
單片機源程序如下:
/***********************************************************
文件名稱: 主函數
作 者: LQW
版 本: 0.01
說 明:
修改記錄:
總結 : 1:今天搞了4個鐘,收獲最大是要看電路圖,忘記加一個上拉電阻,時鐘時間跑不準
2:2012年12月18日20:33:21加入顯示節日函數
3:2012年12月20日18:58:58加入溫度顯示函數
4: 全局變量用多了將會超出KEIL 默認的直接尋址的DATA區且DATA區只有128字節
5: DS18B20也加4.7K上拉電阻
***********************************************************/
#include"LCD12864.h"
#include"delay.h"
#include"ds1302.h"
#include"timeadjust.h"
#include"keyscan.h"
#include"keypro.h"
#include"disfestival.h"
#include"ds18b20.h"
#include"ds18b20distemp.h"
#include"ds18b20alarm.h"
//#include<reg52.h>
//#include<string.h"
/*------------------------------------------
定義臨時變量
-------------------------------------------*/
u8 *WEEK[] = {"SUM","MON","TUS","WEN","THU","FRI","SAT"};
sbit LED1 = P3^7;//溫度高于上限LED1閃爍
sbit LED2 = P3^6; //溫度高于下限LED2閃爍
u16 TimCnt = 0;
sbit BEEP = P3^5;
/***********************************************************
函數名稱: 定時器T0 初始化
函數功能:
入口參數:
出口參數:
備 注:
***********************************************************/
void Time0_Init(void)
{
TMOD |= 0x01; // 定時器T0工作在方式1
TH0 = - 1000 / 256;
TL0 = - 1000 % 256;
EA = 1; //打開總中斷
ET0 = 1; //允許T0中
//TR0 = 1; //開啟定時器T0中斷
}
/***********************************************************
函數名稱: 定時器T0中斷函數
函數功能: 定時每2ms刷新數碼管
入口參數:
出口參數:
備 注:
***********************************************************/
void Time0_ISR() interrupt 1
{
TH0 = - 1000 / 256;
TL0 = - 1000 % 256;
BEEP = !BEEP;
if( ++TimCnt == 200 )
{
TimCnt = 0;
if( H_Alarm )
LED1 = ~LED1;
else
LED1 = 1;
if( L_Alarm )
LED2 = ~LED2;
else
LED2 = 1;
TR0 = 0; //關閉定時器
}
}
void main()
{
u8 keynum;
Time0_Init();//定時器T0初始化
Set_DS18B20_Alarm_Temp();//設置DS18B20溫度的報警值,且寫入ds18b20里
ds18b20_ReadTemperature();////讀取溫度值分別放在Temp_Value[](存放溫度值)與Temp_Alarm[](存放報警值
Init_DS18B20();//ds18b20初始化
Init_DS1302();//ds1302初始化,是對時時間
Init_LCD12864();//液晶初始化
DelayMs( 1 );
while( 1 )
{
ds18b20_ReadTemperature();//讀取溫度值分別放在Temp_Value[](存放溫度值)與Temp_Alarm[](存放報警值
keynum = KeyScan();//讀取按鍵的
if( adjust_index == -1)
{
GetTime();//獲取時間
Format_Time( DataTime[ 6 ], LCD_DIS_BUFFER1 + 2 );
Format_Time( DataTime[ 4 ], LCD_DIS_BUFFER1 + 6 );
Format_Time( DataTime[ 3 ], LCD_DIS_BUFFER1 + 10 );
Format_Time( DataTime[ 2 ], LCD_DIS_BUFFER2 + 0 );
Format_Time( DataTime[ 1 ], LCD_DIS_BUFFER2 + 4 );
Format_Time( DataTime[ 0 ], LCD_DIS_BUFFER2 + 8 );
strcpy( LCD_DIS_BUFFER2 + 13, WEEK[ DataTime[ 5 ] - 1]);
LCD_PutString( 0, 1, LCD_DIS_BUFFER1);
LCD_PutString( 0, 2, LCD_DIS_BUFFER2);
}
Dis_Festival(); //顯示公歷節日
if( iS_DS18B20_OK == 1 )
{
if( H_Alarm == 1 || L_Alarm == 1 )
TR0 = 1;
else
TR0 = 0;
ds18b20_Display_Temperature();//溫度轉換
}
if( keynum != 0xff )
{
KeyPro( keynum ); //一邊調整一邊顯示
Format_Time( DataTime[ 6 ], LCD_DIS_BUFFER1 + 2 );
Format_Time( DataTime[ 4 ], LCD_DIS_BUFFER1 + 6 );
Format_Time( DataTime[ 3 ], LCD_DIS_BUFFER1 + 10 );
LCD_PutString( 0, 1, LCD_DIS_BUFFER1);
Format_Time( DataTime[ 2 ], LCD_DIS_BUFFER2 + 0 );
Format_Time( DataTime[ 1 ], LCD_DIS_BUFFER2 + 4 );
Format_Time( DataTime[ 0 ], LCD_DIS_BUFFER2 + 8 );
LCD_PutString( 0, 2, LCD_DIS_BUFFER2);
}
}
}
復制代碼
所有資料51hei提供下載:
2013.7.1.zip
(111.76 KB, 下載次數: 19)
2019-4-15 20:09 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
admin
時間:
2019-4-15 21:30
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产日韩电影
|
www.狠狠干
|
麻豆av在线免费观看
|
国产欧美一区二区三区国产幕精品
|
91精品在线播放
|
日本爱爱视频
|
日本人和亚洲人zjzjhd
|
国产成人综合亚洲欧美94在线
|
久久久久久精
|
国产精品爱久久久久久久
|
国产高清在线观看
|
成人三级电影
|
成人免费视频在线观看
|
欧美精品一区二区在线观看
|
日本久久综合
|
四虎在线视频
|
免费av观看
|
国产中的精品av涩差av
|
国产精品久久久久一区二区三区
|
久久久这里只有17精品
|
国产精品亚洲欧美日韩一区在线
|
久久久久久久一区
|
日韩欧美一区二区三区免费观看
|
91国内视频在线
|
精品久久久久久久久久久久
|
国产精品久久久久久久久久久免费看
|
免费看片国产
|
国产丝袜一区二区三区免费视频
|
欧美精品一区在线观看
|
午夜精品久久久久久久久久久久久
|
国产美女自拍视频
|
国产精品爱久久久久久久
|
国产日日操
|
国产亚洲一区二区三区在线观看
|
国产小视频在线
|
国产精品18hdxxxⅹ在线
|
伊人久久综合
|
午夜免费观看网站
|
久久精品亚洲一区
|
国产精品99视频
|
日韩精品一区二区三区免费视频
|