一、主要功能
本項(xiàng)目使用Proteus8.12仿真51單片機(jī)控制器,使用OLED12864液晶模塊、PCF8591 AD模塊、按鍵、電機(jī)等。
主要功能:
系統(tǒng)運(yùn)行后,OLED顯示開(kāi)機(jī)顯示界面。可通過(guò)K1鍵開(kāi)始測(cè)量血壓,氣泵閥開(kāi)啟,一段時(shí)間后停止,開(kāi)始測(cè)量高壓和低壓,并將測(cè)量值顯示在OLED,并且顯示當(dāng)前血壓狀態(tài)。
主要功能如下:
(1)OLED顯示血壓;
(2)血壓高壓測(cè)量你;
(3)血壓低壓測(cè)量;
(4)血壓狀態(tài)顯示。
二、硬件資源
51單片機(jī)核心模塊、OLED12864液晶模塊、按鍵、電機(jī)模塊、PCF8591 AD模塊。
三、軟件設(shè)計(jì)
/*
//定義結(jié)構(gòu)體
_sys_ctrl sys_ctrl;
//系統(tǒng)參數(shù)設(shè)置
void sys_parm_set(void)
{
//開(kāi)始/停止
while(KEY1==1);
//清除高壓顯示值
OLED_ShowString(48,3," ",16);
//清除低壓顯示值
OLED_ShowString(48,6," ",16);
//清除血壓狀態(tài)
OLED_ShowString(16*6,6," ",16);
if(KEY1==0)
{
delay_ms(10);
if(KEY1==0)
{
QPF_PIN=0;//開(kāi)啟氣泵
sys_ctrl.flag=1;
delay_ms(1000);
QPF_PIN=1;//關(guān)閉氣泵
}
}
}
//系統(tǒng)數(shù)據(jù)顯示
void sys_data_show(void)
{
u8 buf[4];
while(1)
{
//采集高壓值顯示
buf[0]=sys_ctrl.xy_hval/100+0x30;
if(buf[0]==0x30)buf[0]=' ';
buf[1]=sys_ctrl.xy_hval%100/10+0x30;
buf[2]=sys_ctrl.xy_hval%100%10+0x30;
buf[3]='?';
OLED_ShowString(48,3,buf,16);
//采集低壓值顯示
buf[0]=sys_ctrl.xy_lval/100+0x30;
if(buf[0]==0x30)buf[0]=' ';
buf[1]=sys_ctrl.xy_lval%100/10+0x30;
buf[2]=sys_ctrl.xy_lval%100%10+0x30;
buf[3]='?';
OLED_ShowString(48,6,buf,16);
break;
}
}
//系統(tǒng)功能控制
void sys_fun_ctrl(void)
{
//如果檢測(cè)高壓值高于血壓高值1,或者檢測(cè)低壓值高于血壓高值2,血壓高
if(sys_ctrl.xy_hval>=XY_HVAL1 || sys_ctrl.xy_lval>=XY_HVAL2)
{
OLED_ShowCHinese(16*7,6,5);//高
}
//如果檢測(cè)高壓值低于血壓低值1,或者檢測(cè)低壓值低于血壓低值2,血壓低
if(sys_ctrl.xy_hval<=XY_LVAL1 || sys_ctrl.xy_lval<=XY_LVAL2)
{
OLED_ShowCHinese(16*7,6,6);//低
}
//如果檢測(cè)高壓值低于血壓高值1,并且高于血壓高值2
//如果檢測(cè)低壓值低于血壓低值1,并且高于血壓低值2
if(sys_ctrl.xy_hvalXY_HVAL2 &&
sys_ctrl.xy_lvalXY_LVAL2)
{
OLED_ShowCHinese(16*6,6,7);//正常
OLED_ShowCHinese(16*7,6,8);
}
}
//應(yīng)用控制系統(tǒng)
void appdemo_show(void)
{
sys_parm_init();//系統(tǒng)參數(shù)初始化
OLED_Init();
sys_open_show();//系統(tǒng)開(kāi)機(jī)顯示
while(1)
{
sys_parm_set();//系統(tǒng)參數(shù)設(shè)置
sys_data_get();//系統(tǒng)數(shù)據(jù)采集
sys_data_show();//系統(tǒng)數(shù)據(jù)顯示
sys_fun_ctrl();//系統(tǒng)功能控制
}
}
四、實(shí)驗(yàn)現(xiàn)象
?
?
評(píng)論
查看更多