久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 21715|回復(fù): 45
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)與st188制作的心率測試儀全套設(shè)計(jì)資料(12864顯示) 含源碼,原理圖等

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
        第一次發(fā)帖紀(jì)念一下        作為一個(gè)初學(xué)者,今天查閱了網(wǎng)上的資料,用用傳統(tǒng)20引腳12864屏幕制作了一款心率測試儀。
        傳感器用的是檢測血液上的脈搏轉(zhuǎn)換成心率,在資料里面有C語言程序、板子所用的元器件的清單等。非常適合初學(xué)者買回來自己制作和練習(xí)。
        運(yùn)用的芯片是89C52單片機(jī)。
        資料里面包含了AD教學(xué)、單片機(jī)基本原理教學(xué)、protel基礎(chǔ)教學(xué)等。也可以說是一個(gè)學(xué)習(xí)資料庫。
        文檔里面都是網(wǎng)上資料,在完成1602屏幕后,可以運(yùn)用12864去嘗試做。
        資料里面是傳統(tǒng)20引腳的12864,作為初學(xué)者的我,首先碰到的是普中開發(fā)板的16個(gè)引腳的12864,里面資料少之又少,僅有例程。。。
        不過在其他帖子上也有介紹這塊12864的,可以先在此資料里面學(xué)習(xí)傳統(tǒng)的20引腳的使用,之后再把mini12864屏幕運(yùn)用起來!!
        希望這份資料能幫助到大家!!!!
使用時(shí)把右手食指指肚放在st188反射式紅外傳感器上,放置合適時(shí)會(huì)看到指示燈隨心跳同時(shí)閃動(dòng),如果沒有閃爍請適當(dāng)調(diào)節(jié)手指壓力,調(diào)節(jié)完后在測試過程中手指壓力不要變,保持穩(wěn)定,當(dāng)指示燈有規(guī)律閃爍時(shí)表示信號(hào)正確。當(dāng)單片機(jī)檢測到大約第五次信號(hào)時(shí)開始顯示這五次信號(hào)算出的平均心率。當(dāng)超過大約3秒沒有檢測到信號(hào),清除心率。
如果手指抖動(dòng)或者不穩(wěn)定會(huì)看到指示燈亂閃,這樣測得的數(shù)據(jù)不準(zhǔn),在測試過程中保持穩(wěn)定!

st188傳感器引腳圖:

電路原理圖如下:


論文內(nèi)容截圖(附件可下載完整版)




單片機(jī)源程序如下:
  1. #include <reg52.h>                 //調(diào)用單片機(jī)頭文件
  2. #define uchar unsigned char  //無符號(hào)字符型 宏定義        變量范圍0~255
  3. #define uint  unsigned int         //無符號(hào)整型 宏定義        變量范圍0~65535



  4. sbit rs=P2^5;         //寄存器選擇信號(hào) H:數(shù)據(jù)寄存器          L:指令寄存器
  5. sbit rw=P2^6;         //寄存器選擇信號(hào) H:數(shù)據(jù)寄存器          L:指令寄存器
  6. sbit e =P2^7;         //片選信號(hào)   下降沿觸發(fā)

  7. unsigned char i=0,timecount=0,displayOK=0,rate=0,aa=0;
  8. unsigned int time[6]={0};


  9. /***********************1ms延時(shí)函數(shù)*****************************/
  10. void delay_1ms(uint q)
  11. {
  12.         uint i,j;
  13.         for(i=0;i<q;i++)
  14.                 for(j=0;j<120;j++);
  15. }

  16.                                           
  17. /************ 延時(shí)函數(shù)  *****************/
  18. void delay_uint(uint z)
  19. {
  20.    while(z--);
  21. }


  22. /************ 寫命令函數(shù)  *****************/
  23. void write_com(uchar com)
  24. {

  25.    P0=com;
  26.    rw=0;
  27.    rs=0;
  28.    delay_uint(25);
  29.    e=1;
  30.    delay_uint(50);
  31.    e=0;
  32. }
  33. /************ 寫數(shù)據(jù)函數(shù)  *****************/
  34. void write_data(uchar dat)
  35. {

  36.    P0=dat;;
  37.    rw=0;
  38.    rs=1;
  39.    delay_uint(25);
  40.    e=1;
  41.    delay_uint(50);
  42.    e=0;
  43. }

  44. /**********************************************************
  45. *函數(shù)名: addr_12864
  46. *功能:寫地址
  47. *說明:寫漢字時(shí)要寫個(gè)地址
  48. *輸入:無
  49. *返回:無
  50. **********************************************************/
  51. void addr_12864(uchar hang,uchar lie)          //地址轉(zhuǎn)換
  52. {
  53.         uchar address;
  54.         switch(hang)
  55.         {
  56.                 case 1: address=0x80 + lie ;
  57.                                 break;
  58.                 case 2: address=0x90 + lie ;
  59.                                 break;
  60.                 case 3: address=0x88 + lie ;
  61.                                 break;
  62.                 case 4: address=0x98 + lie ;
  63.                                 break;
  64.                 default :
  65.                                 break;
  66.         }        
  67.         write_com(address);
  68. }

  69. /***********************lcd1602上顯示兩位十進(jìn)制數(shù)************************/
  70. void write_sfm3(uchar hang,uchar add,uint date)
  71. {
  72.         addr_12864(hang,add);         
  73.         write_data(':');
  74.         write_data(0x30+date/100%10);
  75.         write_data(0x30+date/10%10);
  76.         write_data(0x30+date%10);        
  77. }


  78. /**********************************************************
  79. *函數(shù)名: write_string
  80. *功能:在12864上顯示字符數(shù)據(jù)
  81. *說明:
  82. *輸入:無
  83. *返回:無
  84. **********************************************************/

  85. void write_string(uchar hang,uchar lie,uchar *p)
  86. {
  87.         addr_12864(hang,lie);          //地址轉(zhuǎn)換
  88.         while(*p != '\0')
  89.         {
  90.                 write_data(*p);
  91.                 p++;
  92.                 delay_uint(50);
  93.         }
  94. }

  95. /********************************************************************
  96. * 名稱 : init_12864()
  97. * 功能 : 初始化函數(shù)
  98. * 輸入 : cmdcode
  99. * 輸出 : 無
  100. ***********************************************************************/
  101. void init_12864()
  102. {  
  103.     write_com(0x30);
  104.     write_com(0x0c);
  105.     write_com(0x01);
  106.     delay_uint(5000);
  107.         write_string(1,0,"               ");
  108.         write_string(2,0," 心率:000/min  ");
  109.         write_string(3,0,"               ");
  110.         write_string(4,0,"               ");
  111. }

  112. /*************定時(shí)器0初始化程序***************/
  113. void time_init()         
  114. {
  115.         EA   = 1;                   //開總中斷
  116.         TMOD = 0X01;          //定時(shí)器0、定時(shí)器1工作方式1
  117.         ET0  = 1;                  //開定時(shí)器0中斷
  118.         TR0  = 1;                  //允許定時(shí)器0定時(shí)
  119. }


  120. /***********外部中斷0初始化程序****************/
  121. void init_int0()          //外部中斷0初始化程序
  122. {
  123.         EX0=1;                          //允許外部中斷0中斷
  124.         EA=1;                           //開總中斷
  125.         IT0 = 1;                   //外部中斷0負(fù)跳變中斷
  126. }

  127. /****************主函數(shù)***************/
  128. void main()
  129. {        
  130.         init_12864();     //12864初始化        
  131.         time_init();      //初始化定時(shí)器
  132.         init_int0();          //外部中斷0初始化程序
  133.         while(1)
  134.         {                        
  135.                 if(displayOK==0)//如果顯示關(guān)
  136.                 {
  137.                          rate = 0;
  138.                 }
  139.                 else//如果顯示開
  140.                 {
  141.                         rate=60000/(time[1]/5+time[2]/5+time[3]/5+time[4]/5+time[5]/5);
  142.                 }
  143.                 write_sfm3(2,5,rate);

  144.                 delay_1ms(300);
  145.         }
  146. }

  147. void int0() interrupt 0
  148. {
  149.         if(timecount<8)   //當(dāng)連續(xù)兩次檢測時(shí)間間隔小于8*50ms=400ms不處理
  150.         {
  151.                         TR0=1;//開定時(shí)器
  152.         }
  153.         else
  154.         {
  155.                 time[i]=timecount*50+TH0+TL0;//算出間隔時(shí)間
  156.                 TH0 = 0x3c;
  157.                 TL0 = 0xb0;     // 50ms         12M
  158.                 timecount=0;//50ms計(jì)數(shù)清零
  159.                 i++;
  160.                 if(i==6)//記錄到超過等于6次時(shí)間
  161.                 {
  162.                         i=1;//計(jì)數(shù)從1開始
  163.                         displayOK=1;    //測得5次開始顯示?
  164.                 }                                                               
  165.         }
  166. }

  167. /*************定時(shí)器0中斷服務(wù)程序***************/
  168. void time0_int() interrupt 1
  169. {        
  170.         TH0 = 0x3c;
  171.         TL0 = 0xb0;     // 50ms         12M
  172.         timecount++;//每50ms一次計(jì)數(shù)
  173.         if(timecount>25)     //當(dāng)超過25*50ms=1.5s沒有檢測到信號(hào)停止顯示
  174.         {
  175.                         i=0;//數(shù)據(jù)個(gè)數(shù)清零
  176.                         timecount=0;//50ms計(jì)數(shù)清零
  177.                         displayOK=0;//顯示關(guān)
  178.                         TR0=0;//定時(shí)器關(guān)
  179.                         TH0 = 0x3c;
  180.                         TL0 = 0xb0;     // 50ms         12M
  181.         }
  182. }
  183. ……………………

  184. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼


所有資料51hei提供下載:
##單片機(jī)脈搏計(jì) 12864.zip (5.9 MB, 下載次數(shù): 686)


評(píng)分

參與人數(shù) 2黑幣 +55 收起 理由
不知道111 + 5 11
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏16 分享淘帖 頂5 踩1
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:303539 發(fā)表于 2018-5-8 15:25 | 只看該作者
下載之后為什么不是壓縮包形式?解壓不了,也查看不了

修改擴(kuò)展名就好了
回復(fù)

使用道具 舉報(bào)

板凳
ID:254395 發(fā)表于 2018-5-8 20:01 | 只看該作者
老哥  你這是什么  這個(gè)格式不對(duì)的吧
回復(fù)

使用道具 舉報(bào)

地板
ID:325570 發(fā)表于 2018-5-8 23:06 | 只看該作者
大家下載以后改一下文件名就可以打開了.
回復(fù)

使用道具 舉報(bào)

5#
ID:329690 發(fā)表于 2018-5-14 16:22 | 只看該作者
很好
回復(fù)

使用道具 舉報(bào)

6#
ID:329690 發(fā)表于 2018-5-14 16:26 | 只看該作者
51電子丶 發(fā)表于 2018-5-8 15:25
下載之后為什么不是壓縮包形式?解壓不了,也查看不了

您好!
回復(fù)

使用道具 舉報(bào)

7#
ID:336740 發(fā)表于 2018-5-23 19:59 | 只看該作者
好資料
回復(fù)

使用道具 舉報(bào)

8#
ID:344600 發(fā)表于 2018-11-14 12:24 | 只看該作者

好資料,謝謝分享
回復(fù)

使用道具 舉報(bào)

9#
ID:147492 發(fā)表于 2018-11-14 15:00 | 只看該作者
不斷學(xué)習(xí),很不錯(cuò)
回復(fù)

使用道具 舉報(bào)

10#
ID:426726 發(fā)表于 2018-11-15 07:56 來自觸屏版 | 只看該作者
好資源
回復(fù)

使用道具 舉報(bào)

11#
ID:426726 發(fā)表于 2018-11-15 09:06 來自觸屏版 | 只看該作者
如何調(diào)格式
回復(fù)

使用道具 舉報(bào)

12#
ID:448673 發(fā)表于 2018-12-18 10:26 | 只看該作者
有沒有好心人發(fā)一份給我郵箱1173507270@qq.com,拜謝
回復(fù)

使用道具 舉報(bào)

13#
ID:449394 發(fā)表于 2018-12-19 13:39 | 只看該作者
有沒有proteus的仿真圖
回復(fù)

使用道具 舉報(bào)

14#
ID:449394 發(fā)表于 2018-12-19 13:40 | 只看該作者
有沒有proteus仿真圖?
回復(fù)

使用道具 舉報(bào)

15#
ID:448105 發(fā)表于 2018-12-19 14:16 | 只看該作者
頂一個(gè) 謝兄弟
回復(fù)

使用道具 舉報(bào)

16#
ID:439149 發(fā)表于 2018-12-19 15:16 來自觸屏版 | 只看該作者
YLsl349889 發(fā)表于 2018-5-8 23:06
大家下載以后改一下文件名就可以打開了.

有Protues仿真圖不?
回復(fù)

使用道具 舉報(bào)

17#
ID:464872 發(fā)表于 2019-1-8 20:25 | 只看該作者
有沒有好心人給我發(fā)一份啊,2415092757@qq.com,有償&#128521;
回復(fù)

使用道具 舉報(bào)

18#
ID:464872 發(fā)表于 2019-1-8 20:27 | 只看該作者
qq936064662 發(fā)表于 2018-12-18 10:26
有沒有好心人發(fā)一份給我郵箱,拜謝

有沒有好心人給我發(fā)一份,2415092757@qq.com,拜謝,有償
回復(fù)

使用道具 舉報(bào)

19#
ID:374552 發(fā)表于 2019-1-9 10:20 | 只看該作者
大佬,帶我飛
回復(fù)

使用道具 舉報(bào)

20#
ID:448673 發(fā)表于 2019-1-15 09:49 | 只看該作者
st188的程序是哪一部分,可以解釋一下怎么來的嗎?大佬
回復(fù)

使用道具 舉報(bào)

21#
ID:469105 發(fā)表于 2019-1-16 14:15 來自觸屏版 | 只看該作者
這是啥文件
回復(fù)

使用道具 舉報(bào)

22#
ID:478092 發(fā)表于 2019-2-19 14:28 | 只看該作者
有仿真圖嗎
回復(fù)

使用道具 舉報(bào)

23#
ID:254673 發(fā)表于 2019-3-21 23:33 | 只看該作者
我想問一下放大倍數(shù)怎么計(jì)算
回復(fù)

使用道具 舉報(bào)

24#
ID:502478 發(fā)表于 2019-4-3 17:19 | 只看該作者
感謝分享。。。。
回復(fù)

使用道具 舉報(bào)

25#
ID:502478 發(fā)表于 2019-4-3 17:23 | 只看該作者
很好感謝分享。
回復(fù)

使用道具 舉報(bào)

26#
ID:520222 發(fā)表于 2019-4-24 10:08 | 只看該作者
很好 感謝分享~
回復(fù)

使用道具 舉報(bào)

27#
ID:510258 發(fā)表于 2019-4-24 11:24 | 只看該作者
原來這個(gè)也可以用單片機(jī)做呀
回復(fù)

使用道具 舉報(bào)

28#
ID:512205 發(fā)表于 2019-4-29 23:56 | 只看該作者
好資料 謝謝分享!
回復(fù)

使用道具 舉報(bào)

29#
ID:375715 發(fā)表于 2019-4-30 14:10 來自觸屏版 | 只看該作者
好好學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

30#
ID:415633 發(fā)表于 2019-5-23 18:57 | 只看該作者
謝謝分享,你的資料給我?guī)砹撕艽髱椭c(diǎn)贊
回復(fù)

使用道具 舉報(bào)

31#
ID:561427 發(fā)表于 2019-6-13 11:51 | 只看該作者
您好!剛剛打開您分享的壓縮包一看,沒想到無償分享這么多資料。我想再加黑幣時(shí)系統(tǒng)已經(jīng)提示不能重復(fù)了,所以,口頭再次用信息感謝感謝您!祝您工作順利!生活愉快!心想事成!我是做天然乳膠枕頭業(yè)務(wù)的,如果有緣,可加我18989483286手微同號(hào)
回復(fù)

使用道具 舉報(bào)

32#
ID:261045 發(fā)表于 2019-6-14 23:42 | 只看該作者
非常感謝!很詳實(shí)的全套資料,涉及到的軟件硬件都有。還有文字說明等。正好需要它,真的是非常感謝樓主!棒棒噠!
回復(fù)

使用道具 舉報(bào)

33#
ID:234889 發(fā)表于 2019-10-3 22:00 | 只看該作者
1306液晶屏能用不?
回復(fù)

使用道具 舉報(bào)

34#
ID:623885 發(fā)表于 2019-11-7 12:39 來自觸屏版 | 只看該作者
為什么c語言教程的視頻被刪除了啊,我急需這個(gè)
回復(fù)

使用道具 舉報(bào)

35#
ID:651495 發(fā)表于 2019-12-27 17:25 來自觸屏版 | 只看該作者
18741527880 發(fā)表于 2019-11-7 12:39
為什么c語言教程的視頻被刪除了啊,我急需這個(gè)

急需加一,朋友有找到能用的么
回復(fù)

使用道具 舉報(bào)

36#
ID:651495 發(fā)表于 2019-12-27 18:37 來自觸屏版 | 只看該作者
艾拉物優(yōu)菟 發(fā)表于 2018-11-15 07:56
好資源

你好,可以分享一下資源么,他過期了
回復(fù)

使用道具 舉報(bào)

37#
ID:651495 發(fā)表于 2019-12-27 19:27 來自觸屏版 | 只看該作者
有的朋友麻煩分享一份資料,1274302976@qq.com
回復(fù)

使用道具 舉報(bào)

38#
ID:677050 發(fā)表于 2019-12-30 22:26 | 只看該作者
問問 可以直接用1602代替掉12864液晶屏嗎?
回復(fù)

使用道具 舉報(bào)

39#
ID:702286 發(fā)表于 2020-3-4 14:12 | 只看該作者
正需要,謝謝樓主分享
回復(fù)

使用道具 舉報(bào)

40#
ID:648281 發(fā)表于 2020-3-4 14:38 | 只看該作者
krysdreamer 發(fā)表于 2019-12-30 22:26
問問 可以直接用1602代替掉12864液晶屏嗎?

你好!
不能直接代替,需要重新寫顯示部分的程序
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕国 | 91麻豆产精品久久久久久 | 中文字幕亚洲视频 | 日韩精品区 | 一级网站 | 精品一区二区免费视频 | 欧美精品二区三区 | 国产伦精品一区二区三区高清 | 欧美成人h版在线观看 | 午夜免费福利电影 | 亚洲精品乱码久久久久久按摩观 | 国产精品久久久亚洲 | 亚洲看片网站 | 亚洲精品色| 欧美女优在线观看 | 久久成人精品视频 | 美女黄色在线观看 | 欧美性一区二区三区 | 狠狠天天 | 国产婷婷在线视频 | 日本xx视频免费观看 | 亚洲一区二区三区四区五区午夜 | 天天天操操操 | 8x国产精品视频一区二区 | 久久精品国产亚洲一区二区 | 国产精品视频一区二区三区, | 91.色| 在线观看中文字幕av | 蜜臀久久 | 亚洲人a | 天天操夜夜操 | 国产九九精品视频 | 狠狠操狠狠干 | 亚洲精品一区av在线播放 | 91免费小视频 | 一个色在线 | 一区在线播放 | 91精品国产91久久久久久吃药 | 久久亚洲国产精品日日av夜夜 | 国产精品国产三级国产aⅴ原创 | 日韩午夜场 |