資源簡介
本程序用到了獨立鍵盤、時鐘芯片DS12C887A、LCD1602顯示器LM016L、壓力傳感模塊MPX4115、A/D模塊ADC0832、溫度傳感模塊DS18B20以及蜂鳴器和AT89C52單片機。
在該程序中,主控模塊先讀取時鐘模塊DS12C887A中的數據,然后送給LM1602中顯示,該時鐘的數據是可以調節的,包括年、月、日、時、分、秒以及鬧鐘,同時,該時鐘還有測量溫度與氣壓的功能,顯示溫度時是直接讀取DS18B20中的數據,顯示氣壓時則要先用ADC0832模塊把MPX4115中的電壓信號轉換成數字信號,才能送到液晶屏中顯示。
本程序可作畢業設計和項目設計的學習交流使用,希望大家喜歡,有不足之處亦望指正?。?!

代碼片段和文件信息
#include??
#include?“pressure.h“
uint?adc0832()?reentrant?//[遞歸時要設為可重入函數,用reentrant定義]
{
????uchar?i?=?0;
????uint?dat?=?0;
????uchar?ndat?=?0;
????adcs?=?0;?//拉低CS端
delay(00);
????adclk?=?1;?//拉高CLK端
addi?=?1;
????delay(00);
????adclk?=?0;?//拉低CLK端形成下降沿1
????delay(00);
????adclk?=?1;?//拉高CLK端
????addi?=?0x00;
????delay(00);
????adclk?=?0;?//拉低CLK端形成下降沿2
????delay(00);
????adclk?=?1;?//拉高CLK端
????addi?=?0x01;
????delay(00);
????adclk?=?0;?//拉低CLK端形成下降沿3
????delay(00);
????for(i?=?0;i?8;i?++)
????{
????????dat?|=?addo;?//收數據
????????adclk?=?1;
????????delay(00);
????????adclk?=?0;?//形成一次時鐘脈沖
????????delay(00);
????????dat?<<=?1;
????}
????for(i?=?0;i?7;i?++)
????{
ndat?>>=?1;
????????adclk?=?1;
????????delay(00);
????????adclk?=?0;?//形成一次時鐘脈沖
????????delay(00);
if(addo)
ndat?|=?0x80;
????}
????adcs?=?1;?//拉高CS端
if(dat?==?ndat)
???? return?(((10.0?/?23.0)?*?dat)?+?9.3)?*?10;?//y=(115?-?15)?/?(243?-?13)?*?X?+?9.3kpa,放大10倍,便于后面的計算
else
return?adc0832();
}
void?read_press()
{
uint?temp?=?adc0832();
p1?=?temp?/?1000;
if(p1?==?0)
{
p1?=?0x20;
}
else
{
p1?+=??0x30;
}
p2?=?temp?/?100?%?10?+?0x30;
p3?=?temp?%?100?/10?+?0x30;
p4?=?temp?%?100?%10?+?0x30;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????857??2012-05-11?16:34??Time\define.h
?????文件?????????19??2012-04-06?16:50??Time\ExtDll.iex
?????文件?????413832??2012-05-11?16:01??Time\Last?Loaded?Time.DBK
?????文件???????1374??2012-04-06?18:30??Time\pressure.c
?????文件????????286??2012-04-06?15:08??Time\pressure.h
?????文件???????3400??2012-05-11?16:34??Time\pressure.LST
?????文件???????4650??2012-05-11?16:34??Time\pressure.OBJ
?????文件???????2492??2012-04-22?15:30??Time\temperature.c
?????文件????????128??2012-04-04?23:43??Time\temperature.h
?????文件???????6082??2012-05-11?16:34??Time\temperature.LST
?????文件???????6942??2012-05-11?16:34??Time\temperature.OBJ
?????文件??????42361??2012-05-11?16:34??Time\time
?????文件??????13633??2012-05-11?16:34??Time\time.c
?????文件?????413832??2012-05-11?16:01??Time\Time.DSN
?????文件??????14831??2012-05-11?16:34??Time\time.hex
?????文件?????????77??2012-05-11?16:34??Time\time.lnp
?????文件??????41494??2012-05-11?16:34??Time\time.LST
?????文件??????50325??2012-05-11?16:34??Time\time.M51
?????文件??????38526??2012-05-11?16:34??Time\time.OBJ
?????文件????????420??2012-05-11?16:36??Time\time.plg
?????文件???????1221??2012-05-11?16:36??Time\Time.PWI
????.......????279984??2012-05-11?16:36??Time\time.uvgui.Administrator
????.......????279984??2012-05-11?15:57??Time\time.uvgui_Administrator.bak
????.......?????12150??2012-05-11?16:36??Time\time.uvopt
?????文件??????13613??2012-04-05?17:02??Time\time.uvproj
????.......?????12143??2012-05-11?15:57??Time\time_uvopt.bak
?????文件??????13443??2012-04-04?15:08??Time\time_uvproj.bak
?????文件?????130048??2012-05-11?16:08??Time\操作說明.doc
?????目錄??????????0??2012-05-11?16:36??Time
-----------?---------??----------?-----??----
............此處省略2個文件信息
- 上一篇:如何用騰訊云登錄谷歌
- 下一篇:面向模式的軟件架構 卷4 分布式計算的模式語言
評論
共有 條評論