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

標題: 基于51單片機藍牙電子秤程序設計 包含原理圖手機APP [打印本頁]

作者: 覺新的三弟    時間: 2022-4-18 17:48
標題: 基于51單片機藍牙電子秤程序設計 包含原理圖手機APP
制作出來的實物圖如下:

如圖所示


電路原理圖如下:

元件清單:
            
電源電路            
電源DC端子    J1    1套   
開關    S1    1個   
指示燈    D1    1個   
電阻1K    R2    1個   
            
            
單片機最小系統            
IC座子40P    U1    1個   
單片機    U1    1個   
晶振11.0592M    Y1    1個   
獨石電容22P    C1、C2    2個    元件上標:220
按鍵    K0 、K1    2個   
電解電容    C3    1個   
電阻 10K    R1    1個   
            
蜂嚀器電路            
蜂嚀器    B1    1個   
三極管S8550    Q1    1個   
電阻1K    R3    1個   
            
藍牙電路            
藍牙模塊    U3    1個   
4P排座        1個    插藍牙模塊
            
液晶電路            
16P排座    LCD1    1個   
液晶1602    LCD1    1個   
電位器 10K    W1    1個    高檔電位器
            
壓力傳感器電路            
壓力傳感器(套裝)    U2    1個   
4P杜邦線        1條   
            
主板            
萬能板    7cm*9cm    1張   



單片機源程序如下:
  1. #include "main.h"
  2. #include "HX711.h"
  3. #include "uart.h"
  4. #include "LCD1602.h"
  5. #include <intrins.h>
  6. #define uchar unsigned char  //無符號字符型 宏定義        變量范圍0~255
  7. #define uint  unsigned int         //無符號整型 宏定義        變量范圍0~65535

  8. unsigned long HX711_Buffer = 0;
  9. unsigned long Weight_Maopi = 0;
  10. long Weight_Shiwu = 0;

  11. unsigned char flag = 0;
  12. bit Flag_ERROR = 0;
  13. sbit beep= P1^7;

  14. #define GapValue 405



  15. //****************************************************
  16. //主函數
  17. //****************************************************
  18. void main()
  19. {
  20.     Uart_Init();
  21.   
  22.         Init_LCD1602();
  23.         LCD1602_write_com(0x80);
  24.         LCD1602_write_word("Welcome to use!");
  25.         Delay_ms(1000);                 //延時,等待傳感器穩定

  26.         Get_Maopi();                                //稱毛皮重量
  27.        
  28.         while(1)
  29.         {
  30.                 EA = 0;
  31.                 Get_Weight();                        //稱重
  32.                 EA = 1;

  33.                 Scan_Key();

  34.                 //顯示當前重量
  35.                 if( Flag_ERROR == 1)
  36.                 {
  37.          
  38.                        

  39.                         LCD1602_write_com(0x80+0x40);
  40.                         LCD1602_write_word("ERROR ");
  41.                         beep=0;
  42.                 }               
  43.                 else
  44.                 {         
  45.                         beep=1;
  46.             Send_ASCII(0x82);
  47.             Send_ASCII(0x4);
  48.             Send_ASCII(Weight_Shiwu >> 8);
  49.             Send_ASCII(Weight_Shiwu);
  50.                        


  51.                         LCD1602_write_com(0x80+0x40);
  52.                         LCD1602_write_data(Weight_Shiwu/1000 + 0X30);
  53.             LCD1602_write_data(Weight_Shiwu%1000/100 + 0X30);
  54.             LCD1602_write_data(Weight_Shiwu%100/10 + 0X30);
  55.             LCD1602_write_data(Weight_Shiwu%10 + 0X30);
  56.                         LCD1602_write_word(" g");



  57.                 }

  58.        

  59.                
  60.         }
  61. }

  62. //掃描按鍵
  63. void Scan_Key()
  64. {
  65.         if(KEY1 == 0)
  66.         {
  67.                 Delay_ms(5);
  68.                 if(KEY1 == 0)
  69.                 {
  70.                         while(KEY1 == 0);
  71.                         Get_Maopi();                        //去皮
  72.                 }       
  73.         }
  74. }

  75. //****************************************************
  76. //稱重
  77. //****************************************************
  78. void Get_Weight()
  79. {
  80.         Weight_Shiwu = HX711_Read();
  81.         Weight_Shiwu = Weight_Shiwu - Weight_Maopi;                //獲取凈重
  82.         if(Weight_Shiwu > 0)                       
  83.         {       
  84.                 Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/GapValue);         //計算實物的實際重量
  85.                                                                                                                                                
  86.                                                                                                                                                
  87.                 if(Weight_Shiwu > 5000)                //超重報警
  88.                 {
  89.                         Flag_ERROR = 1;       
  90.                         Send_ASCII(0x82);
  91.       Send_ASCII(0x4);
  92.       Send_ASCII(5000 >> 8);

  93.                 }
  94.                 else
  95.                 {
  96.                         Flag_ERROR = 0;
  97.                 }
  98.         }
  99.         else
  100.         {
  101.                 Weight_Shiwu = 0;
  102.     Send_ASCII(0x82);
  103.     Send_ASCII(0x4);
  104.     Send_ASCII(0 >> 8);


  105.         }
  106.        
  107. }

  108. //****************************************************
  109. //獲取毛皮重量
  110. //****************************************************
  111. void Get_Maopi()
  112. {
  113.         Weight_Maopi = HX711_Read();       
  114. }

  115. //****************************************************
  116. //MS延時函數(12M晶振下測試)
  117. //****************************************************
  118. void Delay_ms(unsigned int n)
  119. {
  120.         unsigned int  i,j;
  121.         for(i=0;i<n;i++)
  122.                 for(j=0;j<123;j++);
  123. }
復制代碼

Keil代碼下載+app(無代碼)下載:
藍牙電子稱.7z (3.17 MB, 下載次數: 168)


作者: abcd1212    時間: 2022-11-8 10:54
nice實用
作者: irico58    時間: 2022-11-22 22:43
壓力傳感器用多少kg的合適
作者: 1790995069    時間: 2023-3-3 11:03
求app制作的教程哇
作者: wbwcf13e    時間: 2023-12-31 09:00
傳感器用哪種規格?




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1