|
最終實(shí)現(xiàn)步數(shù)測(cè)量、距離測(cè)量、溫度測(cè)量,并且在手機(jī)和OLED屏幕上實(shí)時(shí)顯示當(dāng)前的運(yùn)動(dòng)信息,心電圖由于無(wú)心電圖模擬設(shè)備,無(wú)心電測(cè)量標(biāo)準(zhǔn)線線,不好調(diào)試,但有波在手機(jī)上顯示,可能需要自己調(diào)試
藍(lán)牙上位機(jī).jpg (101.77 KB, 下載次數(shù): 51)
下載附件
2020-10-17 16:55 上傳
STM32單片機(jī)源程序如下:
- //-----------------------------------------------------------------
- // 程序描述:
- // - ADS1292模塊測(cè)試實(shí)驗(yàn)
- // 版 本: V1.0
- // 調(diào)試工具: 凌智STM32核心開發(fā)板、LZE_ST LINK2、USB轉(zhuǎn)串口模塊、ADS1292模塊
- // 說(shuō) 明:
- // (1)接口說(shuō)明
- // ADS1292模塊 核心板
- // PWDN -> PA0
- // START -> PA1
- // CS -> PA2
- // DRDY -> PA3
- // SCLK -> PA5
- // DOUT -> PA6
- // DIN -> PA7
- // 5V -> +5V
- // GND -> GND
- //
- // USB轉(zhuǎn)串口模塊 核心板
- // RXD -> PA9
- // TXD -> PA10
- // GND -> GND
- // (2)顯示說(shuō)明
- // 使用串口調(diào)試助手顯示
- //-----------------------------------------------------------------
- //-----------------------------------------------------------------
- // 頭文件包含
- //-----------------------------------------------------------------
- #include "stm32f10x.h"
- #include "Delay.h"
- #include "EXTInterrupt.h"
- #include "LED.h"
- #include "lze_lcd.h"
- #include "usart.h"
- #include "ADS1292.h"
- #include "spi.h"
- #include "PeripheralInit.h"
- #include "usart3.h"
- #include "adc.h"
- #include "exti.h"
- #include "lmt70.h"
- #include "oled.h"
- #include "mpu6050.h"
- #include "mpuiic.h"
- #include "inv_mpu.h"
- #include "inv_mpu_dmp_motion_driver.h"
- #include "algorithm.h"
- s32 p_Temp[2]; //數(shù)據(jù)緩存(有符號(hào))
- extern int heart_test;
- int read_data(void);
- unsigned long step_num=0;
- extern int meter;
- extern int temp_usart;
- //-----------------------------------------------------------------
- // 主程序
- //-----------------------------------------------------------------
- int main(void)
- {
- NVIC_Configuration();
- uart3_init(115200); // 串口初始化
- GPIO_ADS1292_Configuration(); // ADS1292引腳初始化
- SPI1_Init(); // SPI1初始化
- ADS1292_PowerOnInit();
- OLED_Init(); //=====OLED初始化
- OLED_Clear(); //=====OLED清屏
- MPU_Init(); //=====初始化MPU6050
- mpu_dmp_init(); //=====初始化MPU6050的DMP模式
-
- MPU6050_EXTI_Init();
- Adc_Init();
- OLED_ShowString(0,0,"Pitch:",12);
- OLED_ShowString(0,2,"meter:",12);
- OLED_ShowString(0,4,"temp:",12);
- OLED_ShowString(0,6,"step:",12);
- dmp_set_pedometer_step_count(step_num);
- while (1);
- }
- int read_data()
- {
- static u8 read_data[9]; // 數(shù)據(jù)緩存區(qū)
- static u32 ch1_data;
- static u32 ch2_data;
- static u32 ch1_data_del;
- static u32 ch2_data_del;
-
- int quyu;
-
- ch1_data=0;
- ch2_data=0;
- ADS1292_Read_Data(read_data);
-
- // 計(jì)算ADS1292通道1的數(shù)據(jù)-呼吸阻抗測(cè)量
- ch1_data |= (uint32_t)read_data[3] << 16;
- ch1_data |= (uint32_t)read_data[4] << 8;
- ch1_data |= (uint32_t)read_data[5] << 0;
- // 計(jì)算ADS1292通道2的數(shù)據(jù)-心電圖測(cè)量
- ch2_data |= (uint32_t)read_data[6] << 16;
- ch2_data |= (uint32_t)read_data[7] << 8;
- ch2_data |= (uint32_t)read_data[8] << 0;
-
- ch1_data_del=ch1_data^0x800000;
- ch2_data_del=ch2_data^0x800000;
-
- // ch1_data_del=ch1_data_del%32760;
- // quyu=ch2_data_del%30000;
- p_Temp[0] = get_volt(ch1_data_del); //把采到的3個(gè)字節(jié)轉(zhuǎn)成有符號(hào)32位數(shù) 為什么要變成4個(gè)字節(jié)?
- p_Temp[1] = get_volt(ch2_data_del); //把采到的3個(gè)字節(jié)轉(zhuǎn)成有符號(hào)32位數(shù)
-
- x_test();
-
- quyu=heart_test;
-
- return quyu;
- }
- //-----------------------------------------------------------------
- // End Of File
- //-----------------------------------------------------------------
復(fù)制代碼
51hei.png (3.91 KB, 下載次數(shù): 44)
下載附件
2020-10-17 17:28 上傳
所有資料51hei提供下載:
51黑電子.7z
(2.21 MB, 下載次數(shù): 173)
2020-10-17 17:31 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|