欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6720|回復(fù): 3
收起左側(cè)

STM32 Nucleo板-無線心率心電監(jiān)測設(shè)計(jì)方案

[復(fù)制鏈接]
ID:127084 發(fā)表于 2016-6-17 17:06 | 顯示全部樓層 |閱讀模式
   拿到手STM32F072的板子已經(jīng)到手很久了,直到今天才來這里寫這個(gè)方案分享,是因?yàn)檫@個(gè)項(xiàng)目的編程比較復(fù)雜,周期也比較長,現(xiàn)在大體上有不少進(jìn)展,沐紫編輯也很關(guān)心方案進(jìn)度總是在督促我,哈哈好吧。之前沒寫過嘛。申請這個(gè)板子主要是想試用F0的單片機(jī),之前一直是在用F1系列的單片機(jī)進(jìn)行項(xiàng)目的開發(fā),但是F1系列的單片機(jī)雖然功能強(qiáng)大適用性強(qiáng)但是很多開發(fā)用不了這么多的資源,而STM32F0在低功耗和成本上對于可穿戴設(shè)備或者電池供電的系統(tǒng)都有很大的優(yōu)勢。

   STM32F0系列的單片機(jī)不僅帶來了低廉的價(jià)格而且?guī)砹烁碌墓牡切阅軈s沒有打多大的折扣,低于得成本和低功耗的設(shè)計(jì)是十分合適的。我的項(xiàng)目本身是在F1系列上開發(fā),但是考慮到其以后的成本,想在開發(fā)后再移植到F0單片機(jī)上,所以以下的一些介紹可能跟F1單片機(jī)聯(lián)系比較多,而F0系列的單片機(jī)我是通過了學(xué)習(xí)掌握了其基本用法,利用MX和MBED進(jìn)行了一些基本的例程的使用,還沒用將我所有的程序移植到我們的F0單片上,畢竟一個(gè)新的產(chǎn)品還是先在自己熟悉的片子上跑比較合適,這樣畫PCB板子的時(shí)候會(huì)成功率高一些。


  我的預(yù)想方案是基于F0單片機(jī)的無線心率心電監(jiān)測系統(tǒng),病人或者老人通過將電極放在身體的測量位置就可以讀取心電圖和心率通過無線的方式將其傳送到網(wǎng)絡(luò)中,監(jiān)護(hù)人員可以通過檢測被檢測人員的心率和心電圖可以對他的身體狀況作出判斷,其優(yōu)勢是便攜,可以有很多結(jié)點(diǎn)同時(shí)采集,這個(gè)可能用到ZIGBEE組網(wǎng)技術(shù)這里先不提到了,這是后面的工作了。接下來我從電路和編程兩個(gè)方面來分享我的開發(fā)方案。


先上一張實(shí)物圖。
153740x2zpvarp25sffsz1.jpg

之所以沒有用開發(fā)板板子連接器件的原因我之前已經(jīng)說過了,在F1上完成設(shè)計(jì)后只需要移植核心代碼就可以在F0上繼續(xù)運(yùn)行所以不必糾結(jié)于是否在開發(fā)板上開發(fā),再者我使用的心率檢測芯片是BGA封裝的芯片,我只能為其設(shè)計(jì)新的電路板才能讓其正常工作。而電路板的反復(fù)設(shè)計(jì)修改測試也花費(fèi)了不少的時(shí)間,只要功能能夠完成,程序的移植是很方便的。
接下來是硬件電路的設(shè)計(jì):

     這個(gè)設(shè)計(jì)的難點(diǎn)在于采用的心率檢測芯片的電路設(shè)計(jì)和驅(qū)動(dòng)程序的編寫,之前采用了一款BMD101的心率采集芯片其只有一路心率的檢測也能提供很好的中文支持但是我的設(shè)計(jì)需求是能有多路的采集,如果用BMD101來完成設(shè)計(jì)就會(huì)讓開發(fā)成本變得很高,也就沒有意義,所以經(jīng)過考慮采用了TI出的ADS1293來采集心率數(shù)據(jù)。這樣就要自己根據(jù)全英文的官方說明書來設(shè)計(jì)硬件電路和編寫驅(qū)動(dòng)程序了。這樣降低了硬件成本但是大大加大了開發(fā)難度。
  這個(gè)是STM32的基本系統(tǒng)電路圖:
153027muhbur8br1tadezb.png
SWD下載調(diào)試電路:
153027s8v5sa0z8zdmun7d.png
采用TPS系列3.3V穩(wěn)壓芯片來獲得工作電壓電源用了簡單的濾波設(shè)計(jì),給芯片更穩(wěn)定的模擬電壓:
152949pb1rdhw44s4krr0f.png

USB通信電路:
153451vqpufp12xjf9162o.png

簡易電池充電電路:
153522r1k3lyum0khm8wfm.png

模擬前端信號(hào)采集電路:
153608x2j41iie2455i151.png
最后是測試用的無線通信模塊:
153934zl6k52kff27ca413.png
接下上電路板的正面:

154251daz7tijp84pna4qp.jpg

反面:

154257emp3gzx7m88jmvii.jpg
接下來介紹這次設(shè)計(jì)的核心器件ADS1293,他是TI出的一款低成本的心率檢測芯片:
154741n44ez24xm64uzxe3.png

利用它優(yōu)異的性能和低廉的價(jià)格可以開發(fā)出低成本你的應(yīng)用。
這是他的引腳介紹。 155052aq4njjd41iia5nid.png
實(shí)物連接圖:
161426rxs8de7x8rcf73qv.png

上位機(jī)效果圖:
161521n01yaocg21c40oxc.png

接下來是程序設(shè)計(jì)啦:

利用數(shù)據(jù)書冊中的SPI時(shí)序模擬通信寫出基本的讀取程序之后的開發(fā)將建立在這樣的基礎(chǔ)上。
下面是STM32的附件程序,使用MDK5.1編寫。實(shí)現(xiàn)了基本的數(shù)據(jù)讀寫和采集,之后項(xiàng)目將轉(zhuǎn)向ZIGBEE組網(wǎng)開發(fā),將獲取的數(shù)據(jù)經(jīng)過網(wǎng)絡(luò)再傳輸?shù)娇偡⻊?wù)器上。希望對大家有所幫助。


  1. #include "stm32f10x.h"
  2. #include "SPI_NRF.h"
  3. #include "usart1.h"
  4. #include "delay.h"
  5. #include "misc.h"
  6. #include "Stm32_Ads1293_spi.h"
  7. #include "TI_ADS1293.h"


  8. u8 txbuf[32]= {6,0x88,0xA1,0x02,0x00,0x00,0x00};                                       //發(fā)送緩沖
  9. u8 rxbuf[32];                                                                                          
  10. u8 crc;                                                                                      


  11. int main(void)
  12. {
  13.    u8 i,j;
  14.          uint8_t reg_write_data, reg_read_data, reg_read_default;
  15.    SPI_NRF_Init();
  16. // USART1_Config();
  17.    TI_ADS1293_SPISetup();        
  18.         
  19.         reg_read_default = TI_ADS1293_SPIReadReg(TI_ADS1293_CONFIG_REG);             // Read default config register value     
  20.   reg_write_data = 0x02;                                                       // new value to write
  21.   TI_ADS1293_SPIWriteReg(0x01, reg_write_data);               // Write to register
  22.   reg_read_data = TI_ADS1293_SPIReadReg(0x11);                // Read back the value written
  23.         
  24. //        
  25. //        if (reg_write_data == reg_read_data)
  26. //  {
  27. //    TI_ADS1293_SPIWriteReg(TI_ADS1293_CONFIG_REG, reg_read_default);           // Write to CONFIG register default value
  28. //    while (1)                                                                  // no error: blink LED continuously
  29. //    {
  30. //        __delay_cycles(250000);
  31. //        __delay_cycles(250000);
  32. //        TI_ADS1293_LED_PxOUT ^= TI_ADS1293_LED_PIN;        
  33. //    }      

  34. //  } else
  35. //  {
  36. //        TI_ADS1293_LED_PxOUT &= ~TI_ADS1293_LED_PIN;                               // error: Set LED OFF  
  37. //  }
  38.     txbuf[4] = reg_read_default;
  39.                 txbuf[5] = reg_read_data;
  40. while(1)
  41.                 {
  42.                     crc=0;
  43.                                 crc=0x88+0xA1+0x02+txbuf[4]+txbuf[5];
  44.                                 txbuf[6]=crc;        
  45.                         
  46.       NRF_TX_Mode();
  47.             NRF_Tx_Dat(txbuf);
  48.                         Delay(5000000);
  49.   
  50.                                 
  51.            }
  52.         
  53.         
  54. }
復(fù)制代碼

項(xiàng)目開發(fā)程序.rar (1.64 MB, 下載次數(shù): 89)

回復(fù)

使用道具 舉報(bào)

ID:184767 發(fā)表于 2017-3-30 12:48 | 顯示全部樓層
能幫我做一個(gè)嗎。價(jià)格好說
回復(fù)

使用道具 舉報(bào)

ID:258520 發(fā)表于 2019-4-14 17:35 | 顯示全部樓層
上位機(jī)呢  
回復(fù)

使用道具 舉報(bào)

ID:824459 發(fā)表于 2020-9-29 08:47 | 顯示全部樓層
好東西,thank u very much!!
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表