本設計的硬件構成:
STM32F103C8T6單片機最小系統板(包含+3.3V穩壓電路+時鐘晶振電路+復位電路(上電自復位,手動復位)),心率傳感器、氣壓傳感器、液晶顯示、按鍵、蜂鳴器、LED燈、藍牙模塊組合而成;
功能介紹:
1、檢測呼吸狀態頻率、心率。LCD顯示屏幕進行數據顯示呼吸頻率、心率值。
2、可以按鍵設置呼吸狀態閾值,如果超過閾值,發生聲光報警。按鍵1:設置鍵;按鍵2:加一鍵;按鍵3:減一鍵。
4、系統根據呼吸頻率判斷并且顯示睡眠階段:深度睡眠、淺度睡眠、清醒。
主要物料清單及型號:
顯示屏:LCD1602-5V;
單片機:STM32F103C8T6;
藍牙模塊:JDY-31-SPP;
心率傳感器:PULSE_SENSOR;
氣壓傳感器:HX710-pressure;
蜂鳴器:5V有源蜂鳴器;
原理圖:
實物圖1:
PCB:
元器件清單:
程序:
int main(void) { u8 key_value=0; delay_init(); //延時函數初始化 UART1_INIT(9600); Lcd_GPIO_init(); Lcd_Init() ; Lcd_Puts(0,0," Initialzing"); HX711_GPIO_Init(); BEEP_Init(); RELAY_Init(); EXTIX_Init(); // 初始化外部中斷 KEY_Init();//IO初始化 TIM2_Init(49,7199);//5ms beep=0; delay_ms(500); //上電瞬間加入一定延時在初始化 beep=1; To_Zero(); while(1) { key_value=KEY_Scan(0); key_handle(key_value); if(time_5ms>=100) { time_5ms=0; if(set==0) display(); APP_Update(); //向APP上傳數據 if((setbreath=2) //采集呼吸值 { time_50ms=0; weight=get_weight(); count2++; if(weight>FullScale) { weight_data[count2]=(weight-FullScale)/100; } if(count2>=100) //采集達到100次,計算呼吸頻率 { find_peak_value(); //計算峰值數據 interval=interval2-interval1; breath=interval*7/3; if(breath>500) //清空緩沖區數據 breath=0; for(count2=0;count2<100;count2++) { weight_data[count2]=0; } count2=0; } interval1=0; interval2=0; ????????????????? } } } ?})||(setheart
-
傳感器
+關注
關注
2553文章
51390瀏覽量
756566 -
單片機
+關注
關注
6043文章
44622瀏覽量
638518 -
監測系統
+關注
關注
8文章
2756瀏覽量
81530
原文標題:基于 STM32 的智能睡眠呼吸監測系統設計
文章出處:【微信號:單片機Protues仿真,微信公眾號:單片機Protues仿真】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論