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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

ADXL345+STM32的智能運(yùn)動(dòng)手環(huán)程序+原理圖設(shè)計(jì)

[復(fù)制鏈接]
ID:755772 發(fā)表于 2020-5-20 19:18 | 顯示全部樓層 |閱讀模式
基于STM32的智能運(yùn)動(dòng)手環(huán)原理圖:
屏幕截圖(176).png

單片機(jī)源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "usart.h"
  5. #include <stdio.h>
  6. #include "timer.h"
  7. #include "key.h"
  8. #include "exti.h"
  9. #include "adxl345.h"
  10. #include "lcd1602.h"
  11. #include "ds18b20.h"

  12. unsigned char ReadAdxl345;           //定時(shí)讀取adxl345數(shù)據(jù)
  13. unsigned char ErrorNum=0;   //記錄錯(cuò)誤次數(shù)
  14. unsigned char CheckNum=0;   //檢測(cè)次數(shù)
  15.          
  16. char dis0[16];//液晶數(shù)組顯示暫存
  17. char dis1[35];

  18. unsigned int xlTab[5];//心率數(shù)組
  19. unsigned char count=0;        //心率濾波計(jì)數(shù)
  20. unsigned int xinLater=0;//        心率延時(shí)處理
  21. unsigned int xinLv =0;    //心率值

  22. unsigned int BuShu=0;//步數(shù)
  23. unsigned int Normal_num=0;                        //正常次數(shù)
  24. unsigned int Error_num=0;                        //傾斜次數(shù)

  25. unsigned int disBuShu = 0;  //顯示步數(shù)
  26. float disJuLi = 0;//顯示距離
  27. float temperature;  //溫度
  28. unsigned char readTemp = 0;        //讀取溫度標(biāo)志

  29. int main(void)
  30. {
  31.         delay_init();                     //延時(shí)函數(shù)初始化         
  32.         uart_init(9600);                 //串口初始化為9600
  33.   TIM3_Int_Init(49,7199);//50ms         
  34.         EXTIX_Init();                // 初始化外部中斷
  35.         LED_Init();                                  //初始化與LED連接的硬件接口
  36.         KEY_Init();                        //初始化按鍵

  37.         Lcd_GPIO_init();  //初始化lcd引腳
  38.         Lcd_Init();                  //初始化lcd屏幕
  39.         delay_ms(200);
  40.          
  41.   Init_ADXL345();
  42.   if(Single_Read_ADXL345(0X00)==0xe5)        
  43.   {
  44.     delay_ms(5);
  45.   }
  46.   else
  47.   {
  48.     delay_ms(3);
  49.   }
  50.          
  51.         while(1)
  52.         {

  53.     if(ReadAdxl345== 1)   //定時(shí)讀取adxl345數(shù)據(jù)
  54.     {
  55.       ReadAdxl345= 0;
  56.       ReadData_x();                                                  //三軸檢測(cè)函數(shù)
  57.       CheckNum++;
  58.       if((temp_Y>450)||(temp_Y<-450)) //查看正常次數(shù)     
  59.       {
  60.         Normal_num++;  //正常次數(shù)++
  61.       }
  62.       else
  63.       {
  64.         Error_num++;//傾斜次數(shù)
  65.       }
  66.       if((Error_num!=0)&&(Normal_num!=0))//檢測(cè)到步數(shù)
  67.       {
  68.                                 BuShu++;   //步數(shù)脈沖量++
  69.         Error_num=0;    //清除一個(gè)周期檢測(cè)
  70.         Normal_num=0;
  71.       }
  72.     }
  73.                
  74.                 if(disFlag==1)           //顯示標(biāo)志
  75.                 {
  76.                         disFlag = 0;

  77.                         readTemp++;  //定時(shí)計(jì)數(shù)
  78.                         if(readTemp >= 8)//約800ms處理一次數(shù)據(jù) 溫度
  79.                         {
  80.                                 readTemp =0;//重新計(jì)數(shù)
  81.                                 temperature=(float)DS18B20_Get_Temp()/10;        //縮小10倍為實(shí)際值                        
  82.                         }
  83.                                                 
  84.                         disBuShu = BuShu/2;  //顯示步數(shù)
  85.                         disJuLi = disBuShu*0.45;//顯示距離
  86.                         
  87.                         sprintf(dis0,"X:%03d/min %4.1f C",xinLv,temperature);//打印
  88.                         Lcd_Puts(0,0,(unsigned char *)dis0);        //顯示
  89.                         Lcd_1Put(14,0,0xdf);//顯示符號(hào)
  90.                         sprintf(dis1,"BS:%03d JL:%4.1fm  ",disBuShu,disJuLi);//打印
  91.                         Lcd_Puts(0,1,(unsigned char *)dis1);        //顯示
  92.         
  93.                 }        
  94.         }                                                                                            
  95. }        
復(fù)制代碼

所有資料51hei提供下載:
原理圖.zip (98.08 KB, 下載次數(shù): 98)
stm32-35、程序及功能.7z (200.08 KB, 下載次數(shù): 127)



評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:569729 發(fā)表于 2020-5-24 14:04 | 顯示全部樓層
你好,想問一下脈搏傳感器的輸出接LM393的反相器的負(fù)端,即2管腳可以嗎
回復(fù)

使用道具 舉報(bào)

ID:295874 發(fā)表于 2020-5-25 20:08 | 顯示全部樓層
請(qǐng)問圖中的脈搏傳感器型號(hào)具體是哪一款?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产色婷婷精品综合在线播放 | 国产999精品久久久久久绿帽 | av永久免费| 国产成人99久久亚洲综合精品 | 免费a大片 | 免费观看一级特黄欧美大片 | 欧美区日韩区 | 国产午夜精品一区二区三区嫩草 | 免费v片在线观看 | 欧美激情精品久久久久久 | 国产精品日韩欧美一区二区三区 | 久久久久久久久久久成人 | 亚洲欧美国产精品一区二区 | 久久新 | av男人的天堂在线 | 久久一级大片 | 婷婷色在线 | 国产激情视频网站 | 久久精品视频一区二区 | 久久久国产亚洲精品 | 亚洲国产看片 | 日韩一区二区三区在线播放 | 最近日韩中文字幕 | 日韩一区二区三区在线 | 一区二区精品 | xxxxxx国产| 91麻豆精品国产91久久久资源速度 | 亚洲一区| 在线观看亚洲专区 | 91九色麻豆 | 午夜影院 | 黄色大全免费看 | 91视频88av| 夜夜骑首页| 精品亚洲国产成av人片传媒 | 久久久久久久久久久一区二区 | 欧美精品在线免费观看 | 91免费观看| 夜夜操天天艹 | 日韩精品视频在线 | 日韩手机在线视频 |