資源簡介
脈搏傳感器采樣脈搏信號,采用STC89C51單片機作為控制器,脈搏傳感器輸出方波傳入單片機,觸發單片機進去外部中斷函數,每接收一個脈沖波形,顯示屏就計數一次。如果脈搏次數超過設定值是,用蜂鳴器報警提示。

代碼片段和文件信息
/*************************************************
更多51單片機資料請關注微信公眾號:電子應用學習館
**************************************************
*****************《電子應用學習館》***************
***************************************************/
#include
#include
#include
#include“lcd1602.H“
#define?uchar?unsigned?char
#define?uint?unsigned?int
#define?ulong?unsigned?long?
unsigned?int?incidd[11]jjjktmp;
bit?w=0;
uchar?bh;
ulong?time;
sbit?spd?=?P2^0;
external0()?interrupt?0//外部中斷服務程序
{?
?? w=~w;
if(w==0)
{
??EX0=0;?
??ET0=1;
??TH0=0x0;
??????TL0=0x0;
??n=0;
}
else?
{
time=n*65536+TH0*256+TL0;
dd[jj]=30000000/time;
jj++;
if(jj>10)
{
???jj=0;
???for(j=0;j<11;j++)
??????for(k=0;k<11-j;k++)
?????{
?????if(dd[k]>dd[k+1])
??{
?? ?tmp=dd[k];
? ?dd[k]=dd[k+1];
?dd[k+1]=tmp;
?
??}
? ??
?
?}
???if(dd[5]>50&&dd[5]<200)ci=((dd[4]+dd[5]+dd[6])/3)+11;
}
TH0=0x0;
????????TL0=0x0;
n=0;
}
}
void?timer0(void)?interrupt?1
{
?n++;
}
void?delay(void)???//誤差?0us
{
???unsigned?char?abc;
????for(c=123;c>0;c--)
????????for(b=116;b>0;b--)
????????????for(a=9;a>0;a--);
}?
/////////////////////////////////////////////////////////////////
void?main(void)
{
InitLcd();//
DelayMs(15);
IT0=1;?????//INT0下降沿中斷
EX0=1;?????//允許INT1中斷
TMOD=0x1;
TH0=0x0;
TL0=0x0;?
TR0=1;
ET0=1;
EA=1;
while(1)
{
?if(n>10)
?{
?n=0; ?
?jj=0;
?ci=0;
??? ?????TimeNum[0]=‘N‘;?
?????????TimeNum[1]=‘O‘?;
?????TimeNum[2]=‘?‘?;
?????TimeNum[3]=‘I‘?;
?????TimeNum[4]=‘N‘?;
?TimeNum[5]=‘P‘?;
?TimeNum[6]=‘U‘?;
?TimeNum[7]=‘T‘?;
?TimeNum[8]=‘?‘?;
? ?ShowString(0TimeNum);
?????ShowString(1Test1);
??}
??else
??{
??if(w==0&&EX0==0)
????{
??delay();
??EX0=1;
}??
??TimeNum[0]=‘?‘;?
?????????TimeNum[1]=‘?‘?;
?????TimeNum[2]=‘?‘?;
?????TimeNum[3]=‘?‘?;
?????TimeNum[4]=‘?‘?; ?
?TimeNum[5]=‘?‘?;?
??
??if(ci/100>0)TimeNum[6]=ci/100+‘0‘?;?else?TimeNum[6]=‘?‘?;?
??if(ci/100==0&&ci%100/10>0)TimeNum[7]=ci%100/10+‘0‘?;?else?TimeNum[7]=‘?‘?;?
??TimeNum[8]=ci%10+‘0‘?;
??ShowString(0TimeNum);
??ShowString(1Test1);
??if(ci>100)spd=0;else?spd=1;
?? ??}
??
???}
;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????101289??2019-01-11?21:20??心率脈搏儀\心率脈搏儀原理圖\原理圖.pdf
?????文件?????123392??2019-01-11?21:35??心率脈搏儀\心率脈搏儀原理圖\原理圖.Sch
?????文件?????????44??2018-12-07?00:00??心率脈搏儀\心率脈搏儀原理圖\更多嵌入式資料.txt
?????文件????????742??2009-05-02?18:23??心率脈搏儀\心率脈搏儀源碼\程序\1602.PWI
?????文件??????84495??2009-04-01?16:16??心率脈搏儀\心率脈搏儀源碼\程序\Last?Loaded?1602.DBK
?????文件??????11118??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602
?????文件???????1018??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.build_log.htm
?????文件???????2374??2019-01-11?21:39??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.c
?????文件???????2408??2019-01-11?21:39??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.H
?????文件???????4330??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.hex
?????文件?????????46??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.lnp
?????文件???????5104??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.LST
?????文件??????14484??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.M51
?????文件??????12744??2019-01-10?22:00??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.OBJ
?????文件????????388??2013-01-11?16:04??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.plg
?????文件??????85881??2019-01-11?21:39??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.uvgui.Administrator
?????文件???????6320??2019-01-10?22:44??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.uvopt
?????文件??????13859??2019-01-10?22:44??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602.uvproj
?????文件???????1066??2013-01-11?14:34??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602_Opt.Bak
?????文件???????2118??2009-04-01?16:37??心率脈搏儀\心率脈搏儀源碼\程序\lcd1602_Uv2.Bak
?????文件?????????44??2018-12-07?00:00??心率脈搏儀\心率脈搏儀源碼\程序\更多嵌入式資料.txt
?????文件?????????44??2018-12-07?00:00??心率脈搏儀\更多嵌入式資料.txt
?????目錄??????????0??2019-01-11?21:40??心率脈搏儀\心率脈搏儀源碼\程序
?????目錄??????????0??2019-01-11?21:41??心率脈搏儀\心率脈搏儀原理圖
?????目錄??????????0??2019-01-11?21:40??心率脈搏儀\心率脈搏儀源碼
?????目錄??????????0??2019-01-11?21:40??心率脈搏儀
-----------?---------??----------?-----??----
???????????????473308????????????????????26
- 上一篇:軟件工程課程設計 基于Web汽車租賃系統 全部文檔
- 下一篇:VNC密碼破解
評論
共有 條評論