基于51单片机的水流量传感器测试系统
目錄
? 熱水器上水報警器
問題咨詢及項目源碼下載請加群:
群名:IT項目交流群
群號:245022761
?
?
一、實驗目的
1. 了解水流量傳感器工作原理
2. 學會使用水流量傳感器檢測水流量
3. 會使用八段數碼管顯示熱水器水箱水量百分比
4. 學會使用蜂鳴器發出報警聲
?
二、設計項目要求
經常會看到某家屬樓外墻排水管水嘩嘩的流著,原來是某家太陽能熱水器上水忘記關閥門了,水白白浪費掉,非常可惜!為解決太陽能熱水器上水忘記關閥門問題,請設計一款熱水器上水報警器。該報警器通過水流量傳感器檢測上水的體積,并顯示已上水的體積占總體積的百分比(最大值為100),當水上滿后,啟動蜂鳴器報警提醒用戶關閉上水水閥。假設熱水器總容量為1升。
?
三、項目系統連接圖
?
?四、代碼實現部分
?
//數碼管顯示模塊#include <shumaguan.h> sbit DX=P2^6; sbit WX=P2^7; u8 code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71,0x00}; //共陰數碼管編碼void Print_u32_LED(u32 n)//輸出6位無符號整數(0-999999)到6位數碼管,不足6位時,前面不顯示 {u8 t=0xdf;while(n){ P0=0xff; //消影WX=1;//允許更新位碼P0=t; //送位碼WX=0;//鎖存位碼P0=0x00; //消影DX=1;//允許更新段碼P0=table[n%10]; //送段碼DX=0;//鎖存段碼n=n/10;t=_cror_(t,1);delay_ms(3);} } void Print_str_LED(u8 *f)//輸出數字串到數碼管 {u8 t=0xdf,i;i=strlen(f);while(i){ P0=0xff; //消影WX=1;//允許更新位碼P0=t; //送位碼WX=0;//鎖存位碼P0=0x00; //消影DX=1;//允許更新段碼switch(f[i-1]){case '.':i--;P0=table[f[i-1]-'0']|0x80;break;case '-':P0=0x40;break;case ' ':P0=0x00;break;default:P0=table[f[i-1]-'0']; } //送段碼DX=0;//鎖存段碼i--;t=_cror_(t,1);delay_ms(3);}}void Print_float_LED(float n,u8 x)//輸出小數(有效數字不超過6位)到6位數碼管,保留x(0-3)位小數 {u8 prtstr[10];switch(x){case 0:sprintf(prtstr,"%.0f",n);break;case 1:sprintf(prtstr,"%.1f",n);break;case 2:sprintf(prtstr,"%.2f",n);break;case 3:sprintf(prtstr,"%.3f",n);break;} Print_str_LED(prtstr);} main函數代碼實現:#include <config.h> #include <shumaguan.h> sbit beep=P2^3; //蜂鳴器引腳 u8 print[20];//輸出緩沖區 unsigned int num=0; float current=0.0; void delay_ms(u16 x)//毫秒延時函數 {u16 i;u8 j;for(i=0;i<x;i++)for(j=0;j<115;j++); } void delay_us(u8 t) //10倍微秒延時函數,延時10*t微秒 {u8 i;for(i=0;i<=t;i++); }void Alarm(u8 t) //蜂鳴器報警,持續t秒 {u8 i,j,k; for(j=0;j<t;j++){ for(i=0;i<200;i++){beep=0;delay_us(50);beep=1;delay_us(50);}for(k=0;k<100;k++){beep=0;delay_us(110);beep=1;delay_us(110);}} }void main() {u8 i,j;// Init_COM(); //初始化 // EA=1;//IT0=1;//EX0=1;while(1){P2=0X00; Alarm(5);// beep=0;// if(num>=450) { Alarm(5);}//current=100*num/450.0;//sprintf(print,"%d",current/1000);//for(i=10;i>0;i--) Print_float_LED(current,2); //輸出到數碼管} }void EX_INT0() interrupt 0 /*INT0中斷服務程序*/ {num++;}附上本人在大學學習期間所有學習實現的demo,這些項目的實現都通過本人親自測試運行,也是自己學習中知識的一點一點積累,整理不易,希望能幫到大家,不足之處大家多多交流。
?
QQ:1805523903
郵箱:1805523603@qq.com
昵稱:忘塵
?
世界不同角落共同努力,變成更優秀的我們。
?
1.51單片機學習整理
?
基于51單片機的智能光控路燈 :https://download.csdn.net/download/qq_37037348/11071869
基于51單片機超聲波測距(內含源程序,原理圖及PCB源文件):https://download.csdn.net/download/qq_37037348/11071866
?
?
基于51單片機的智能安防報警系統:https://download.csdn.net/download/qq_37037348/11071865
?
基于51單片機模塊化編程模塊 (紅外、液晶顯示屏、溫濕度等傳感器模塊化)
:https://download.csdn.net/download/qq_37037348/11053222
?
基于51單片機pwm控制的呼吸燈程序
https://download.csdn.net/download/qq_37037348/11053195
?
51單片機與上位機串口通信實例包含詳細講解的完整代碼
https://download.csdn.net/download/qq_37037348/11053164
?
?
基于51單片機的直交流電壓表仿真 (詳細代碼實現,設計講解)
https://download.csdn.net/download/qq_37037348/11053145
?
?
?
基于51單片機胸牌 詳細代碼實現,設計講解)
https://download.csdn.net/download/qq_37037348/11053125
?
基于51單片機3x4按鍵撥號 (詳細代碼實現,設計講解)
https://download.csdn.net/download/qq_37037348/11053093
?
?
基于51單片機撥號 (詳細代碼實現,設計講解)
?
https://download.csdn.net/download/qq_37037348/11053090
?
?
基于51單片機警燈系統設計(詳細代碼實現,設計講解)
https://download.csdn.net/download/qq_37037348/11053086
?
?
基于51單片機點亮一個小燈(詳細代碼實現,設計講解,學習51基礎實驗)
https://download.csdn.net/download/qq_37037348/11053084
?
基于51單片機開發的排球計時器,附有詳細注釋講解,為大家提供最真心的幫助
https://download.csdn.net/download/qq_37037348/11053024
?
?
基于51單片機的音樂播放器,源碼詳細注釋
https://download.csdn.net/download/qq_37037348/11053022
?
?
?
2.Android 開發學習整理:
?
Android-serialport 手機App串口通信代碼實現:
?
https://download.csdn.net/download/qq_37037348/11050521
?
Android-serialport 手機App網絡通信實例代碼實現:
https://download.csdn.net/download/qq_37037348/11050516
?
Android 第一個App詳細教程、基礎實驗 :
https://download.csdn.net/download/qq_37037348/11050515
?
?
3.計算機視覺(深度學習、神經網絡的學習)
?
feature extraction(深度學習,特征提取,神經網絡:https://download.csdn.net/download/qq_37037348/11065968
?
feature extraction(深度學習,特征提取,神經網絡多種訓練模型詳細實現):
https://download.csdn.net/download/qq_37037348/11065974
?
?
?
歡迎大家加入學習項目交流,為大家分享各類個人學習項目及學習資料,互相交流互相學習。
?
問題咨詢及項目源碼下載請加群:
群名:IT項目交流群
群號:245022761
總結
以上是生活随笔為你收集整理的基于51单片机的水流量传感器测试系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Neo4j(一):图数据库基础
- 下一篇: 华为模拟器ensp VLAN与三层交换机