版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
目錄
1設(shè)計(jì)背景及內(nèi)容.....................................................................................................1
2設(shè)計(jì)方案遴選.........................................................................................................1
2.1單片機(jī)的選擇..............................................................................................1
2.2顯示模塊的選擇..........................................................................................1
2.3系統(tǒng)框圖設(shè)計(jì)..............................................................................................2
3產(chǎn)品硬件設(shè)計(jì).........................................................................................................2
3.1STC89C52RC單片機(jī)核心電路設(shè)計(jì).............................................................2
3.2按鍵電路設(shè)計(jì)..............................................................................................3
3.3LCD1602液晶顯示模塊電路.......................................................................4
4產(chǎn)品軟件設(shè)計(jì).........................................................................................................5
4.1主程序流程圖..............................................................................................5
4.2程序開(kāi)發(fā)軟件環(huán)境......................................................................................6
4.3產(chǎn)品程序清單..............................................................................................6
5產(chǎn)品使用說(shuō)明.........................................................................................................6
5.1產(chǎn)品裝配圖..................................................................................................6
5.2產(chǎn)品調(diào)試......................................................................................................7
5.3產(chǎn)品使用說(shuō)明..............................................................................................8
6產(chǎn)品設(shè)計(jì)技術(shù)標(biāo)準(zhǔn)...................................................................................................8
7參考資料...................................................................................................................8
附錄...............................................................................................................................9
附錄1元器件清單...............................................................................................9
附錄2電路...........................................................................................................9
附錄3PCB設(shè)計(jì)圖............................................................................................11
附錄4產(chǎn)品實(shí)物圖...........................................................................................12
附錄5主程序代碼..........................................................................................12
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
基于51單片機(jī)的心率計(jì)設(shè)計(jì)與制作
1設(shè)計(jì)背景及內(nèi)容
近年來(lái),我國(guó)心血管疾病的病發(fā)率和致死率分別占46%和44%,每五例死亡
中就有兩例死于心血管疾病,并且我國(guó)人口老齡化逐年加重,心臟病風(fēng)險(xiǎn)越來(lái)
月高。
并且當(dāng)今社會(huì),熬夜已經(jīng)成為了常態(tài),而熬夜會(huì)導(dǎo)致心臟病幾率上升,人
們醒著時(shí),心臟無(wú)時(shí)無(wú)刻都在工作,只有進(jìn)入深度睡眠才能得到休息,現(xiàn)在人
們睡眠質(zhì)量越來(lái)越低,熬夜次數(shù)越來(lái)越多,我覺(jué)得,一款簡(jiǎn)單、方便、能檢測(cè)
心率的產(chǎn)品能幫助許多人更清楚的了解自己的情況,在心臟出現(xiàn)問(wèn)題的前期起
到提醒作用,避免造成心臟病的發(fā)生。
本產(chǎn)品是一款便攜式數(shù)字人體心率計(jì),是一款采用紅外功能的傳感器,通
過(guò)軟件和硬件的協(xié)調(diào)配合來(lái)對(duì)人體心率信號(hào)進(jìn)行檢測(cè)的專業(yè)儀器。將心率計(jì)放
在脈搏處,通過(guò)按鍵調(diào)節(jié)測(cè)量,在超過(guò)范圍后,將會(huì)自動(dòng)報(bào)警。
2設(shè)計(jì)方案遴選
2.1單片機(jī)的選擇
(1)AT89C51單片機(jī)
(2)AT89C52單片機(jī)
AT89C52與AT89C51單片機(jī)都是比較常用的單片機(jī)。高性能、低功耗、功能
豐富且功能性強(qiáng)、成本低,AT89C51單片機(jī)外接晶振為24MHz、4k字節(jié),AT89C52
單片機(jī)最高外接晶振為33MHz、8k字節(jié),且AT89C52比AT89C51單片機(jī)多了一
個(gè)定時(shí)器。綜合考慮兩種單片機(jī)的優(yōu)缺點(diǎn),由于成本相差無(wú)幾,因此此次設(shè)計(jì)
選用性能更高的AT89C52單片機(jī)。
2.2顯示模塊的選擇
(1)液晶顯示
1
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
LCD1602液晶顯示屏是容性負(fù)載,液晶的電阻,液晶顯示的信息量較大、
長(zhǎng)壽命、低壓、分辨率高、可顯示范圍大、價(jià)格相對(duì)稍高但顯示清晰度和直觀
程度都存在絕對(duì)優(yōu)勢(shì)。
(2)LED動(dòng)態(tài)顯示
數(shù)碼管動(dòng)態(tài)顯示是單片機(jī)中應(yīng)用廣泛的顯示方式,且價(jià)格便宜,但顯示效
果和效率均偏低,且編程比較復(fù)雜。
根據(jù)以上兩種方案相比較,考慮到使用心率計(jì)的人群中老人占比較高,而
液晶顯示具有效果更好,操控更簡(jiǎn)單等優(yōu)點(diǎn)。所以就選擇液晶顯示屏來(lái)作為顯
示模塊的使用。
2.3系統(tǒng)框圖設(shè)計(jì)
心率計(jì)的總體設(shè)計(jì)主要包括信號(hào)的采集電路和放大電路、比較電路、單片
機(jī)信號(hào)處理電路和液晶顯示電路,處理結(jié)果在LCD1602液晶模塊上顯示出
來(lái)。系統(tǒng)框圖如圖2-1所示。
圖2-1系統(tǒng)框圖
3產(chǎn)品硬件設(shè)計(jì)
3.1STC89C52RC單片機(jī)核心電路設(shè)計(jì)
51單片機(jī)作為整個(gè)系統(tǒng)的核心部位,所以使用性能更強(qiáng),功能更強(qiáng),范圍
更廣的STC89C52RC作為本產(chǎn)品的核心部位,原理圖如圖3-1所示。
2
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖3-1單片機(jī)的電路原理圖
3.2按鍵電路設(shè)計(jì)
鍵盤(pán)采用線性鍵盤(pán)的設(shè)計(jì),引腳通過(guò)按鍵接地,有掃描程序控制。分為三
個(gè)設(shè)置按鍵和一個(gè)復(fù)位按鍵,設(shè)置按鍵分別接到CPU的P30、P31、P32上的,
正常心率范圍設(shè)置,以便在超出限制時(shí)報(bào)警提示。
第一個(gè)按鍵:為設(shè)置報(bào)警的上下限心率。
第二個(gè)按鍵:按下可以增加心率上限。
第三個(gè)按鍵:按下可以降低心率下限。
第四個(gè)按鍵:復(fù)位按鍵。
如圖3-2所示。
3
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖3-2按鍵電路原理圖
3.3LCD1602液晶顯示模塊電路
LCD1602主要是顯示當(dāng)前測(cè)量的心率,單位是心率/分鐘。字符型液晶顯示
網(wǎng)格模塊,是專門(mén)用來(lái)顯示數(shù)字及字母,還能夠顯示多個(gè)國(guó)家的語(yǔ)言和一般符
號(hào)的點(diǎn)陣形式液晶屏幕。
原理圖如圖3-3所示:
圖3-3顯示器原理圖
4
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
4產(chǎn)品軟件設(shè)計(jì)
4.1主程序流程圖
主程序工作的大致流程是先進(jìn)行系統(tǒng)初始化,確定中斷入口地址,確定程
序入口,進(jìn)行while循環(huán),然后進(jìn)入設(shè)置階段,可加減報(bào)警值或切換模式,然后
開(kāi)始測(cè)量或設(shè)置上下限。如圖4-1所示。
圖4-1主程序流程圖
5
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
4.2程序軟件開(kāi)發(fā)環(huán)境
我采用的是用Keil5軟件進(jìn)行源代碼的編寫(xiě),因?yàn)镵eil5軟件安裝簡(jiǎn)單,使
用方便,C語(yǔ)言代碼可以兼容在在Keil5軟件里面進(jìn)行調(diào)試和編譯,且平時(shí)學(xué)習(xí)
和使用Keil5次數(shù)較多,更加熟練。
4.3產(chǎn)品程序清單
產(chǎn)品程序清單如圖4-2所示。
圖4-2產(chǎn)品程序清單圖
5產(chǎn)品使用說(shuō)明
5.1產(chǎn)品裝配圖
產(chǎn)品裝配圖如圖5-1所示。
6
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-1產(chǎn)品裝配圖
5.2產(chǎn)品調(diào)試
整體系統(tǒng)上電調(diào)試前,觀察導(dǎo)線是否脫落,是否過(guò)長(zhǎng),是否破損等問(wèn)題,
各個(gè)部分的位置是否正確,當(dāng)接電時(shí)開(kāi)發(fā)板是否通電。
選擇調(diào)試平臺(tái),將程序帶入軟件進(jìn)行調(diào)試,如果程序調(diào)試沒(méi)有存在問(wèn)題,
下一步就可以開(kāi)始驗(yàn)證系統(tǒng)功能能不能滿足要求,如果功能存在問(wèn)題,那就要
重新調(diào)試,反復(fù)進(jìn)行調(diào)試,直到所有問(wèn)題都解決,達(dá)到想要效果。
產(chǎn)品調(diào)試圖如圖5-2所示。
圖5-2產(chǎn)品調(diào)試圖
7
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
5.3產(chǎn)品使用說(shuō)明
本產(chǎn)品是基于STC89C52單片機(jī)設(shè)計(jì)的心率計(jì),當(dāng)把手指放到紅外對(duì)管中
時(shí),兩秒內(nèi)讀出心率,LCD1602液晶顯示當(dāng)前心率,單位是心率/分鐘。按鍵可
以設(shè)置報(bào)警的上下限心率,按鍵一設(shè)置,按鍵二加,按鍵三減。
(1)使用前檢查產(chǎn)品導(dǎo)線和接口是否完全接好,有沒(méi)有脫落的情況,使用
時(shí)清除桌面雜物。
(2)使用USB線給板子上電,打開(kāi)開(kāi)關(guān)后心率計(jì)啟動(dòng),先進(jìn)行心率報(bào)警值
和上下限的設(shè)置,隨后在心率檢測(cè)器處檢測(cè),短暫延遲后在LCD1602液晶顯示
屏上顯示檢測(cè)數(shù)值,若達(dá)到心率報(bào)警值則報(bào)警燈亮起且蜂鳴器發(fā)聲,若為正常
范圍則相反。
(3)試用結(jié)束后收好產(chǎn)品,輕拿輕放,切記不要暴力操作。
6產(chǎn)品設(shè)計(jì)技術(shù)標(biāo)準(zhǔn)
[1]J-STD-001E電氣與電子組件的焊接要求
[2]IPC-A-610D(中文版),IPC-A-610E電子組件的可接受性要求
[3]IPC-7711/21電子組件和電路板的返工&返修
[4]GB/T11457-2006信息技術(shù)軟件工程術(shù)語(yǔ);
[5]GB/T8566-2007信息技術(shù)軟件生存周期過(guò)程標(biāo)準(zhǔn);
[6]GB/T8567-2006計(jì)算機(jī)軟件文檔編制規(guī)范。
7參考資料
[1]智能心率監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)[J].劉宇紅,李月婷,何國(guó)鋒,姜成旭.現(xiàn)代電
子技術(shù).2017(20)
[2]基于單片機(jī)的智能SMS心率計(jì)設(shè)計(jì)[J].張建民,郭伙令,龍佳樂(lè),李燁.
現(xiàn)代電子技術(shù).2017(06)
[3]一種基于STM32和PPG技術(shù)的腕戴式心率計(jì)設(shè)計(jì)[J].劉勁松,朱純午,
楊莉.電子技術(shù)應(yīng)用.2016(10)
[4]基于Web服務(wù)的物聯(lián)接入系統(tǒng)設(shè)計(jì)[J].于洪波,劉鴻飛,方麗英,陳道
新,王普.電子技術(shù)應(yīng)用.2015(07)
8
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
[5]基于ZigBee技術(shù)的便攜式心率計(jì)的設(shè)計(jì)[J].李戰(zhàn)勝,萬(wàn)葉麗.電子世
界.2015(13)
[6]便攜式心率監(jiān)測(cè)計(jì)的設(shè)計(jì)[J].管芳,黃新,胡鴻志.儀表術(shù).2014(01)
[7]基于單片機(jī)的數(shù)字心率計(jì)設(shè)計(jì)[J].黃川.科技資訊.2013(26)
[8]數(shù)字心率計(jì)的單片機(jī)設(shè)計(jì)與實(shí)現(xiàn)[J].石建飛.自動(dòng)化技術(shù)與應(yīng)
用.2013(05)
[9]基于AT89C51單片機(jī)的心率體溫測(cè)量?jī)x設(shè)計(jì)[J].蘭羽.國(guó)外電子測(cè)量技
術(shù).2013(03)
[10]基于光電技術(shù)的心率測(cè)量?jī)x[J].駱文,劉陽(yáng),熊俊俏.工業(yè)儀表與自動(dòng)
化裝置.2012(01)
附錄
附錄1元器件清單
9
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
附錄2電路原理圖
10
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
附錄3PCB設(shè)計(jì)圖
11
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
附錄4產(chǎn)品實(shí)物圖
附錄5主程序代碼
#include<reg52.h>
#include<intrins.h>//包含頭文件
#defineuintunsignedint
#defineucharunsignedchar
#defineulongunsignedlong//宏定義
#defineLCD_DATAP0//定義P0口為L(zhǎng)CD_DATA
sbitLCD_RS=P2^5;
sbitLCD_RW=P2^6;
sbitLCD_E=P2^7;//定義LCD控制引腳
12
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
sbitXintiao=P3^2;//脈搏檢測(cè)輸入端定義
sbitspeaker=P2^4;//蜂鳴器引腳定義
voiddelay5ms(void);//誤差0us
voidLCD_WriteData(ucharLCD_1602_DATA);/********LCD1602數(shù)據(jù)寫(xiě)入
***********/
voidLCD_WriteCom(ucharLCD_1602_COM);/********LCD1602命令寫(xiě)
入***********/
voidlcd_1602_word(ucharAdress_Com,ucharNum_Adat,uchar*Adress_Data);
/*1602字符顯示函數(shù),變量依次為字符顯示首地址,顯示字符長(zhǎng)度,所顯示的
字符*/
voidInitLcd();//液晶初始化函數(shù)
voidTim_Init();
ucharXintiao_Change=0;//
uintXintiao_Jishu;
ucharstop;
ucharView_Data[3];
ucharView_L[3];
ucharView_H[3];
ucharXintiao_H=100;//脈搏上限
ucharXintiao_L=40;//脈搏下限
ucharnum[10];
uintnum_OK=0;
ucharXT=0;
ucharKey_Change;
ucharKey_Value;//按鍵鍵值
ucharView_Con;//設(shè)置的位(0正常工作,1設(shè)置上限,2設(shè)置下限)
ucharView_Change;
voidmain()//主函數(shù)
{
InitLcd();
Tim_Init();
lcd_1602_word(0x80,16,"HeartRate:");//初始化顯示
TR0=1;
TR1=1;//打開(kāi)定時(shí)器
while(1)//進(jìn)入循環(huán)
{
if(Key_Change)//有按鍵按下并已經(jīng)得出鍵值
{
13
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
Key_Change=0;//將按鍵使能變量清零,等待下次按鍵按下
View_Change=1;
switch(Key_Value)//判斷鍵值
{
case1://設(shè)置鍵按下
{
View_Con++;//設(shè)置的位加
if(View_Con==3)//都設(shè)置好后將此變量清零
View_Con=0;
break;//跳出,下同
}
case2://加鍵按下
{
if(View_Con==2)//判斷是設(shè)置上限
{
if(Xintiao_H<150)//上限數(shù)值小于150
Xintiao_H++;//上限+
}
if(View_Con==1)//如果是設(shè)置下限
{
if(Xintiao_L<Xintiao_H-1)//下限值小于上限-1(下限值
不能超過(guò)上限)
Xintiao_L++;//下限值加
}
break;
}
case3://減鍵按下
{
if(View_Con==2)//設(shè)置上限
{
if(Xintiao_H>Xintiao_L+1)//上限數(shù)據(jù)大于下限+1(同樣
上限值不能小于下限)
Xintiao_H--;//上限數(shù)據(jù)減
}
if(View_Con==1)//設(shè)置下限
{
if(Xintiao_L>30)//下限數(shù)據(jù)大于30時(shí)
Xintiao_L--;//下限數(shù)據(jù)減
}
break;
}
}
}
14
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
if(View_Change)//顯示變量
{
View_Change=0;//變量清零
if(stop==0)//心率正常時(shí)
{
if(View_Data[0]==0x30)//最高位為0時(shí)不顯示
View_Data[0]='';
}
else//心率不正常(計(jì)數(shù)超過(guò)5000,也就是兩次信
號(hào)時(shí)間超過(guò)5s)不顯示數(shù)據(jù)
{
View_Data[0]='';
View_Data[1]='';
View_Data[2]='';
}
switch(View_Con)
{
case0://正常顯示
{
lcd_1602_word(0x80,16,"HeartRate:");//顯示一行數(shù)據(jù)
lcd_1602_word(0xc0,16,"");//顯示第二行
數(shù)據(jù)
if(num_OK!=0)
lcd_1602_word(0xcd,3,View_Data);//第二行顯示
心率
break;
}
case1://設(shè)置下限時(shí)顯示
{
lcd_1602_word(0x80,16,"HeartRate:");//第一行顯示心
率
lcd_1602_word(0x8d,3,View_Data);
View_L[0]=Xintiao_L/100+0x30;//將下限數(shù)據(jù)拆字
View_L[1]=Xintiao_L%100/10+0x30;
View_L[2]=Xintiao_L%10+0x30;
if(View_L[0]==0x30)//最高位為0時(shí),不
顯示
View_L[0]='';
lcd_1602_word(0xC0,16,"WarningL:");//第二行顯示下
限數(shù)據(jù)
15
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
lcd_1602_word(0xCd,3,View_L);
break;
}
case2://設(shè)置上限時(shí)顯示(同上)
{
lcd_1602_word(0x80,16,"HeartRate:");
lcd_1602_word(0x8d,3,View_Data);
View_H[0]=Xintiao_H/100+0x30;
View_H[1]=Xintiao_H%100/10+0x30;
View_H[2]=Xintiao_H%10+0x30;
if(View_H[0]==0x30)
View_H[0]='';
lcd_1602_word(0xC0,16,"WarningH:");
lcd_1602_word(0xCd,3,View_H);
break;
}
}
}
}
}
voidTime1()interrupt3//定時(shí)器1服務(wù)函數(shù)
{
staticucharKey_Con,Xintiao_Con;
uchari,j;
ucharzancun;
bitflag_break;
TH1=0xd8;//10ms
TL1=0xf0;//重新賦初值
switch(Key_Con)//無(wú)按鍵按下時(shí)此值為0
{
case0://每10ms掃描此處
{
if((P1&0x07)!=0x07)//掃描按鍵是否有按下
{
Key_Con++;//有按下此值加1,值為1
}
break;
}
case1://10ms后二次進(jìn)入中斷后掃描此處(Key_Con
16
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
為1)
{
if((P1&0x07)!=0x07)//第二次進(jìn)入中斷時(shí),按鍵仍然是按下(起到按
鍵延時(shí)去抖的作用)
{
Key_Con++;//變量加1,值為2
switch(P1&0x07)//判斷是哪個(gè)按鍵按下
{
case0x06:Key_Value=1;break;//判斷好按鍵后將鍵值賦
值給變量Key_Value
case0x05:Key_Value=2;break;
case0x03:Key_Value=3;break;
}
}
else//如果10ms時(shí)沒(méi)有檢測(cè)到按鍵按下
(按下時(shí)間過(guò)短)
{
Key_Con=0;//變量清零,重新檢測(cè)按鍵
}
break;
}
case2://20ms后檢測(cè)按鍵
{
if((P1&0x07)==0x07)//檢測(cè)按鍵是否還是按下?tīng)顟B(tài)
{
Key_Change=1;//有按鍵按下使能變量,(此變
量為1時(shí)才會(huì)處理鍵值數(shù)據(jù))
Key_Con=0;//變量清零,等待下次有按鍵按
下
}
break;
}
}
switch(Xintiao_Con)//此處與上面按鍵的檢測(cè)類似
{
case0://默認(rèn)Xintiao_Con是為0的
{
if(!Xintiao)//每10ms(上面的定時(shí)器)檢測(cè)一次脈搏是否有信號(hào)
{
Xintiao_Con++;//如果有信號(hào),變量加一,程序就會(huì)往下走了
}
break;
}
17
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
case1:
{
if(!Xintiao)//每過(guò)10ms檢測(cè)一下信號(hào)是否還存在
{
Xintiao_Con++;//存在就加一
}
else
{
Xintiao_Con=0;//如果不存在了,檢測(cè)時(shí)間很短,說(shuō)明檢測(cè)到的
不是脈搏信號(hào),可能是其他干擾,將變量清零,跳出此次檢測(cè)
}
break;
}
case2:
{
if(!Xintiao)
{
Xintiao_Con++;//存在就加一
}
else
{
Xintiao_Con=0;//如果不存在了,檢測(cè)時(shí)間很短,說(shuō)明檢測(cè)到的
不是脈搏信號(hào),可能是其他干擾,將變量清零,跳出此次檢測(cè)
}
break;
}
case3:
{
if(!Xintiao)
{
Xintiao_Con++;//存在就加一
}
else
{
Xintiao_Con=0;//如果不存在了,檢測(cè)時(shí)間很短,說(shuō)明檢測(cè)到的
不是脈搏信號(hào),可能是其他干擾,將變量清零,跳出此次檢測(cè)
}
break;
}
case4:
{
if(Xintiao)//超過(guò)30ms一直有信號(hào),判定此次是脈搏信號(hào),執(zhí)行以下
程序
18
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
{
if(Xintiao_Change==1)//心率計(jì)原理為檢測(cè)兩次脈沖間隔時(shí)間計(jì)
算心率,變量Xintiao_Change第一次脈沖時(shí)為0的,所有走下面的else,第二次
走這里
{
if(60000/Xintiao_Jishu<200)//心跳小于200是
正常心跳,否則認(rèn)為是干擾,不計(jì)
{
num[XT]=(60000/Xintiao_Jishu);//將心跳數(shù)值保存
到數(shù)組num[XT]內(nèi)
XT++;//保存好后將XT值
加1
if(XT>=5)//XT加到5時(shí)
{
XT=0;//XT清零
for(i=0;i<5;i++)//for循環(huán)5次(這個(gè)for
循環(huán)是為了將5次的數(shù)據(jù)進(jìn)行冒泡法取平均值)
{//就是將5個(gè)數(shù)據(jù)
排序,然后去掉一個(gè)最大值和一個(gè)最小值,剩下的取平均值,使結(jié)果更穩(wěn)定。
flag_break=0;//跳出變量清零,如
果執(zhí)行完下面的for循環(huán),此變量仍為1,則說(shuō)明num數(shù)組內(nèi)數(shù)據(jù)已經(jīng)是依次排
列,跳出for循環(huán)。
for(j=0;j<5;j++)//內(nèi)循環(huán)5次
{
if(num[j]>num[j+1])//num[j]的數(shù)據(jù)如
果大于num[j+1]的數(shù)據(jù)
{
zancun=num[j];//將num[j]的數(shù)據(jù)
暫存到zancun變量
num[j]=num[j+1];//將num[j+1]的數(shù)
據(jù)保存到num[j]內(nèi)
num[j+1]=zancun;//將zancun的數(shù)據(jù)
保存到num[j+1]內(nèi),完成num[j]和num[j+1]的數(shù)據(jù)位置調(diào)換
flag_break=1;//只要進(jìn)入當(dāng)前的
if函數(shù)里就說(shuō)明num數(shù)組內(nèi)的數(shù)據(jù)還沒(méi)有完成依次排列,此變量置1,繼續(xù)在for
循環(huán)內(nèi)執(zhí)行。
}
}
if(flag_break==0)break;//如果數(shù)據(jù)已經(jīng)或經(jīng)
過(guò)調(diào)換已經(jīng)是依次排列了,那么跳出變量置1
}
num_OK=(num[1]+num[2]+num[3])/3;//將最大值和
最小值去掉,中間三個(gè)值相加,除以3得到平均值
19
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
if((num_OK>=Xintiao_H)||(num_OK<=Xintiao_L))//
心率不在范圍內(nèi)報(bào)警
speaker=0;//蜂鳴器響
else
speaker=1;//不響
}
View_Data[0]=num_OK/100+0x30;//計(jì)算心跳
并拆字顯示:心跳計(jì)時(shí)是以10ms為單位,兩次心跳中間計(jì)數(shù)如果是100次,也
就是100*10ms=1000ms=1s
View_Data[1]=num_OK%100/10+0x30;//那么計(jì)算
出的一分鐘(60s)心跳數(shù)就是:60*1000/(100*10ms)=60次其中60是一
分鐘60s,1000是一秒有1000ms,100是計(jì)數(shù)值,10是一次計(jì)數(shù)對(duì)應(yīng)的時(shí)間是
10ms
View_Data[2]=num_OK%10+0x30;//計(jì)算出的
心跳數(shù)/100得到心跳的百位,%100是取余的,就是除以100的余數(shù),再除以10
就得到十位了,以此類推
//數(shù)字后的單
個(gè)數(shù)據(jù)+0x30的目的是得到對(duì)應(yīng)數(shù)字的液晶顯示碼,數(shù)字0對(duì)應(yīng)的液晶顯示碼是
0x30,1是0x30+1,以此類推
}
if(num_OK>200)
{
View_Data[0]='-';
View_Data[1]='-';
View_Data[2]='-';
speaker=1;//不響
}
View_Change=1;//計(jì)算出心率后啟動(dòng)顯示
Xintiao_Jishu=0;//心跳計(jì)數(shù)清零
Xintiao_Change=0;//計(jì)算出心率后該變量清零,準(zhǔn)備下次
檢測(cè)心率
stop=0;//計(jì)算出心率后stop邈
}
else//第一次脈沖時(shí)Xintiao_Change為0
{
Xintiao_Jishu=0;//脈沖計(jì)時(shí)變量清零,開(kāi)始計(jì)時(shí)
Xintiao_Change=1;//Xintiao_Change置1,準(zhǔn)備第二次檢測(cè)到
脈沖時(shí)計(jì)算心率
}
Xintiao_Con=0;//清零,準(zhǔn)備檢測(cè)下一次脈沖
break;
}
20
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
}
}
}
/
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度牛肉產(chǎn)品綠色認(rèn)證與環(huán)保標(biāo)識(shí)合同4篇
- 二零二五版暖通設(shè)備研發(fā)與制造合同4篇
- 2025年度農(nóng)業(yè)品牌授權(quán)合作合同范本4篇
- 2025年度嬰幼兒奶粉線上線下融合營(yíng)銷合作合同范本
- 2025年度門(mén)臉?lè)课葑赓U與新能源汽車充電站建設(shè)合同4篇
- 2025年度土地流轉(zhuǎn)收益分配合同示范文本
- 二零二五年度房地產(chǎn)公司打字員招聘合同4篇
- 二零二五年度互聯(lián)網(wǎng)+期權(quán)合約合同范本4篇
- 二零二五年度智能安防系統(tǒng)技術(shù)服務(wù)合同協(xié)議書(shū)2篇
- 2025年度蘋(píng)果出口貿(mào)易合同模板4篇
- 2024-2025學(xué)年高二上學(xué)期期末數(shù)學(xué)試卷(新題型:19題)(基礎(chǔ)篇)(含答案)
- 下運(yùn)動(dòng)神經(jīng)元損害綜合征疾病演示課件
- 北師大版三年級(jí)數(shù)學(xué)(上冊(cè))看圖列式計(jì)算(完整版)
- 2023中考地理真題(含解析)
- 麻醉藥品、精神藥品月檢查記錄表
- 浙江省寧波市海曙區(qū)2022學(xué)年第一學(xué)期九年級(jí)期末測(cè)試科學(xué)試題卷(含答案和答題卡)
- 高考英語(yǔ)詞匯3500電子版
- 建院新聞社成立策劃書(shū)
- JJF 1101-2019環(huán)境試驗(yàn)設(shè)備溫度、濕度參數(shù)校準(zhǔn)規(guī)范
- GB/T 25000.51-2016系統(tǒng)與軟件工程系統(tǒng)與軟件質(zhì)量要求和評(píng)價(jià)(SQuaRE)第51部分:就緒可用軟件產(chǎn)品(RUSP)的質(zhì)量要求和測(cè)試細(xì)則
- 外科學(xué)試題庫(kù)及答案(共1000題)
評(píng)論
0/150
提交評(píng)論