国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee
ELEOK
標題:
51單片機空調控制模擬源程序與Proteus仿真 制冷制熱
[打印本頁]
作者:
coolfire
時間:
2021-4-30 00:45
標題:
51單片機空調控制模擬源程序與Proteus仿真 制冷制熱
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
1.png
(60.37 KB)
下載附件
2021-4-30 00:29 上傳
部分源碼:完整源碼見附件
#include <reg52.h>
#include <intrins.h>
#include "lcd1602.h"
#include "delay.h"
#include "ds18b20.h"
#include "key.h"
unsigned long S;
#define uchar unsigned char
#define uint unsigned int
uchar data disdata[5];// 百、十、個、小數位1、小數位2、 小數位3、
uchar data disdata1[6];
uint tvalue,time,Level,High,t; // 溫度值
uchar tflag; // 溫度正負標志
bit K1flag;
bit K2flag;
bit K3flag;
void Display() // 溫度值顯示
{
uchar flagdat;
disdata[0]=tvalue/1000+0x30; // 百位數
disdata[1]=tvalue%1000/100+0x30;// 十位數
disdata[2]=tvalue%100/10+0x30; // 個位數
disdata[3]=tvalue%10+0x30; // 小數位
if(tflag==0)
flagdat=0x2b; // 正溫度顯示符號 :+
else
flagdat=0x2d; // 負溫度顯示負號 :-
if(disdata[0]==0x30)
{
disdata[0]=0x20; // 如果百位為 0,不顯示
if(disdata[1]==0x30)
{
disdata[1]=0x20; // 如果百位為 0,十位為 0 也不顯示
}
}
if(disdata1[0]==0x30)
{
disdata1[0]=0x20; // 如果百位為 0,不顯示
if(disdata1[1]==0x30)
{
disdata1[1]=0x20; // 如果百位為 0,十位為 0 也不顯示
}
}
if(disdata1[3]==0x30)
{
disdata1[3]=0x20; // 如果百位為 0,不顯示
if(disdata1[4]==0x30)
{
disdata1[4]=0x20; // 如果百位為 0,十位為 0 也不顯示
}
}
wr_com(0x80+0x0C); // 定位數據指針的位置:第二行第八個字符處
wr_dat(disdata[1]); // 顯示十位
wr_com(0x80+0x0D); // 定位數據指針的位置:第二行第九個字符處
wr_dat(disdata[2]); // 顯示個位
wr_com(0x80+0x0E); // 定位數據指針的位置:第二行第十個字符處
wr_dat(0x2e); // 顯示小數點
wr_com(0x80+0x0F); // 定位數據指針的位置:第二行第十一個字符處
wr_dat(disdata[3]); // 顯示小數位
}
void main()
{
init_play(); // 調用 lcd 初始化顯示子函數
while(1)
{
keyscan();
read_temp(); // 調用 ds18b20 讀取溫度
Display(); // 調用溫度顯示子函數
}
}
復制代碼
程序和仿真文件:
空調仿真51單片機C代碼和仿真.zip
(93.69 KB, 售價: 2 E幣)
2021-4-30 00:44 上傳
點擊文件名下載附件
售價: 2 E幣
[記錄]
[
購買
]
歡迎光臨 ELEOK (http://m.afoofa.cn/)
Powered by Discuz! X5.0