資源簡介
8個溫度檢測+報警+可按鍵設置報警值 51單片機 proteus仿真

代碼片段和文件信息
#include
/*
*?1、檢測8路溫度,0到100,分辨率0.5c,0到5v的信號模擬,(每隔1s采集一次)
??2、循環顯示每一路溫度值,也可手動固定某一路(開關開閉選擇位)
??3、參數設置,16個參數,開關選擇
??4、報警指示?高于上限??低于下限
??操作說明:
?? ?上機即是實時溫度間隔1s顯示,
? 按下按鍵1,是暫停輪轉鍵,按下后,數碼管只顯示這個通道的溫度值,不再輪轉,再次按下,恢復狀態
按下按鍵2,是模式設定按鍵,按下后進入設定上限值的模式,分別有0?到?16?這17檔,
???0代表回到普通模式,1到8代表設置8個通道的上限,9到16代表設置8個通道的下限
在1到16模式下,按按鍵3表示加,按鍵4表示減少
在任意模式下,按下MIAN_KEY,回到模式0下。?
*/
sbit?duan_sc?=?P2?^?4;????//段鎖存
sbit?wei_sc?=?P2?^?5;?????//位鎖存
sbit?ST?=?P3?^?0;
sbit?EOC?=?P3?^?1;
sbit?OE?=?P3?^?2;
sbit?ADDA?=?P3?^?3;
sbit?ADDB?=?P3?^?4;
sbit?ADDC?=?P3?^?5;
sbit?HIGH_W_LED?=?P3?^?6;
sbit?LOW_W_LED?=?P3?^?7;
sbit?GUDING_KEY?=?P2?^?0; ?//固定顯示?即是顯示一個通道的
sbit?MOD_KEY?=?P2?^?1; ?//模式切換?0?代表正常顯示模式??1?到?16?表示設置?通道1到通道8的上下限的值
sbit?ADD_KEY?=?P2?^?2;
sbit?DEC_KEY?=?P2?^?3;
sbit?MIAN_KEY?=?P2?^?7; //按下這個鍵??立刻回到主顯示界面
/*??**************************************??*/
/*??********變量?????????????????*******??*/
/*??**************************************??*/
unsigned?char?DATA;
unsigned?char?mode=0;
unsigned?char?pause=0;
float?adc[8]?=?{?0.0?0.0?0.0?0.0?0.0?0.0?0.0?0.0?};???//adc讀取后存在數組里
unsigned?char?count?=?0;??????//定時器中斷計數
unsigned?char?display_CH?=?0;?????//選擇哪一個轉化通道的值來顯示??定時器里面去改變
int?LOW__com[9]={250250250250250250250250250}; //低比較?
int?HIGH_com[9]={750750750750750750750750750}; //高比較
unsigned?char?code?duanma[]=
{???0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};?????//?顯示段碼值01234567
unsigned?char?code?weima[]=
{???0xfe0xfd0xfb0xf70xef0xdf0xbf0x7f};???//分別對應相應的數碼管點亮即位碼
void?delay(unsigned?int?t)
{
????unsigned?char?i;
????while?(t--)
????{
????????for?(i?=?125;?i?>?0;?i--)
????????????;
????}
}
/*??**************************************??*/
/*??********刷新數碼管顯示??傳入的一個是顯示哪一個通道的AD
?另一個是顯示數值為多少????????????????*******??*/
/*??**************************************??*/
void?display(unsigned?char?which?float?adcc)
{
????int?adc_temp;
????unsigned?char?d1?d2?d3?d4;
????adc_temp?=?(int)?(adcc?*?1);
????d1?=?adc_temp?/?1000;
????d2?=?(adc_temp?%?1000)?/?100;
????d3?=?(adc_temp?%?100)?/?10;
????d4?=?(adc_temp?%?10)?/?1;
????///////////////////////////////////////////////
????P0?=?weima[0];
????wei_sc?=?1;
????wei_sc?=?0;
????P0?=?0x00;
????P0?=?duanma[which];
????duan_sc?=?1;
????duan_sc?=?0;
????P0?=?0x00;
????delay(2);
????///////////////////////////////////////////////
????P0?=?weima[1];
????wei_sc?=?1;
????wei_sc?=?0;
????P0?=?0x00;
????P0?=?0x40;
????duan_sc?=?1;
????duan_sc?=?0;
????P0?=?0x00;
????delay(2);
????///////////////////////////////////////////////
????P0?=?weima[2];
????wei_sc?=?1;
????wei_sc?=?0;
????P0?=?0x00;
????P0?=?duanma[d1];
????duan_sc?=?1;
????duan_sc?=?0;
????P0?=?0x00;
????delay(2);
????///////////////////////////////////////////////
????P0?=?weima[3];
????wei_sc?=?1;
????wei_sc?=?0;
????P0?=?0x00;
????P0?=?duanma[d2]?;
????duan_sc?=?1;
????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-04-24?14:14??3?8個溫度檢測+報警+可按鍵設置報警值\
?????文件???????33961??2018-06-28?17:47??3?8個溫度檢測+報警+可按鍵設置報警值\Backup?Of?溫度檢測.pdsbak
?????文件???????34016??2018-07-13?17:34??3?8個溫度檢測+報警+可按鍵設置報警值\Last?Loaded?溫度檢測.pdsbak
?????文件???????12315??2018-07-13?17:08??3?8個溫度檢測+報警+可按鍵設置報警值\main.c
?????文件???????26185??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\main.LST
?????文件???????18511??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\main.OBJ
?????文件???????16038??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS
?????文件????????7559??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS.hex
?????文件??????????45??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS.lnp
?????文件???????22994??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS.M51
?????文件?????????354??2018-07-13?17:35??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS.plg
?????文件???????55208??2018-07-13?17:34??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS.uvopt
?????文件???????13231??2018-05-13?17:17??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS.uvproj
?????文件???????55210??2018-07-13?15:13??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS_uvopt.bak
?????文件???????????0??2018-05-13?17:17??3?8個溫度檢測+報警+可按鍵設置報警值\PWM_MOTOS_uvproj.bak
?????文件???????44032??2018-07-13?15:42??3?8個溫度檢測+報警+可按鍵設置報警值\微機與單片機應用課程設計指導書20180708?(1).doc
?????文件???????34536??2018-12-17?13:48??3?8個溫度檢測+報警+可按鍵設置報警值\溫度檢測.pdsprj
?????文件????????2198??2019-04-24?14:14??3?8個溫度檢測+報警+可按鍵設置報警值\溫度檢測.pdsprj.ANOOP.PC1.workspace
?????文件?????????740??2019-04-24?14:09??說明書.txt
- 上一篇:安徽大學計算機圖形學往年試卷
- 下一篇:021 酒精濃度檢測 仿真 顯示 51單片機
評論
共有 條評論