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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5465|回復: 3
收起左側

STM32 HX711+LCD12864電子秤程序

[復制鏈接]
ID:223876 發表于 2017-8-1 16:20 | 顯示全部樓層 |閱讀模式
從別處找的電子秤程序STM32單片機主控 hx711芯片+12864液晶顯示 希望對大家有幫助
0.png

stm32單片機主程序如下:
  1. /******************** (C) COPYRIGHT 2012 WildFire Team **************************
  2. * 文件名  :main.c
  3. * 描述    :3個LED在 SysTick 的控制下,以500ms的頻率閃爍。         
  4. * 實驗平臺:野火STM32開發板
  5. * 庫版本  :ST3.5.0
  6. * 作者    :wildfire team
  7. **********************************************************************************/
  8. #include "stm32f10x.h"
  9. #include "SysTick.h"
  10. #include "12864.h"
  11. #include "HX711.h"

  12. uint32_t ticktime;
  13. unsigned long HX711_Buffer = 0;
  14. unsigned int Weight_Maopi = 0,Weight_Shiwu = 0;
  15. char Price_Count = 0;
  16. unsigned char KEY_NUM = 0;
  17. unsigned char Price_Buffer[5] = {0x00,0x00,0x00,0x00,0x00};
  18. unsigned long Money = 0;
  19. unsigned char Flag_OK = 0;

  20. unsigned char temp = 0,temp1 = 0xf7;
  21. /*
  22. * 函數名:main
  23. * 描述  :主函數
  24. * 輸入  :無
  25. * 輸出  :無
  26. */

  27. void Key_GPIO_Config(void)
  28. {         GPIO_InitTypeDef GPIO_InitStructTRIG;
  29.         RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA, ENABLE);
  30.           GPIO_InitStructTRIG.GPIO_Pin = GPIO_Pin_1|GPIO_Pin_2;        
  31.           GPIO_InitStructTRIG.GPIO_Mode = GPIO_Mode_Out_PP;      
  32.           GPIO_InitStructTRIG.GPIO_Speed = GPIO_Speed_50MHz;
  33.           GPIO_Init(GPIOA, &GPIO_InitStructTRIG);
  34.         GPIO_SetBits(GPIOA, GPIO_Pin_1|GPIO_Pin_2 );
  35. }
  36. /********************************************************/

  37. void Led_GPIO_Config(void)
  38. {
  39.                 GPIO_InitTypeDef GPIO_InitStructure;
  40.         RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC, ENABLE);
  41.           GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;        
  42.           GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;      
  43.           GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  44.           GPIO_Init(GPIOC, &GPIO_InitStructure);
  45.         GPIO_SetBits(GPIOC, GPIO_Pin_3 );        
  46. }
  47. /************************************************************/
  48. void Get_Weight()
  49. {
  50.         HX711_Buffer = HX711_Read();
  51.         HX711_Buffer = HX711_Buffer/100;
  52.         if(HX711_Buffer >= Weight_Maopi)                        
  53.         {
  54.                 Weight_Shiwu = HX711_Buffer;
  55.                 Weight_Shiwu = Weight_Shiwu - Weight_Maopi;                                //獲取實物的AD采樣數值。
  56.         
  57.                 Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/2.135+0.05);         //計算實物的實際重量
  58.                                                                                                                                                 //因為不同的傳感器特性曲線不一樣,因此,每一個傳感器需要矯正這里的2.15這個除數。
  59.                                                                                                                                                 //當發現測試出來的重量偏大時,增加該數值。
  60.                                                                                                                                                 //如果測試出來的重量偏小時,減小改數值。
  61.                                                                                                                                                 //該數值一般在2.15附近調整之間。因傳感器不同而定。
  62.                                                                                                                                                 //+0.05是為了四舍五入百分位
  63.                
  64.                 if(  Weight_Shiwu > 20000 )
  65.                 {
  66.                 GPIO_ResetBits(GPIOC, GPIO_Pin_3 );                                //打開警報        
  67.                 }
  68.                 else
  69.                 {
  70.                         GPIO_SetBits(GPIOC, GPIO_Pin_3 );                        //關閉警報
  71.                 }
  72.         }
  73.         else if(HX711_Buffer < Weight_Maopi - 30)
  74.         {
  75.                 GPIO_ResetBits(GPIOC, GPIO_Pin_3 );                                //負重量報警
  76.         }

  77. }

  78. //****************************************************
  79. //獲取毛皮重量
  80. //****************************************************
  81. void Get_Maopi()
  82. {
  83.         HX711_Buffer = HX711_Read();
  84.         Weight_Maopi = HX711_Buffer/100;                                 
  85. }
  86. /******************************************************************/
  87. /******************************************************************/

  88. int main(void)
  89. {        

  90.         Led_GPIO_Config();
  91.         Key_GPIO_Config();

  92.         /* 配置SysTick 為10us中斷一次 */
  93.         SysTick_Init();
  94.         /*********************************************************************/
  95.         /************************************************************************/
  96.     LCD12864_InitPort(); //端口初始化
  97.         LCD12864_Init();         //液晶初始化
  98.         HX711_init();

  99.   //  LCD12864_Pos(3,5);
  100.     LCD_ShowString(1,0,"初始化……");

  101. /*        LCD12864_NoWaitIdle_COM_Write(0x80);                                                //指針設置
  102.         LCD12864_write_word("※※※※※※※※");
  103.         LCD12864_NoWaitIdle_COM_Write(0x90);                                                //指針設置
  104.         LCD12864_write_word("※※歡迎使用※※");                        
  105.         LCD12864_NoWaitIdle_COM_Write(0x88);                                                //指針設置
  106.         LCD12864_write_word("※20公斤電子秤※");
  107.         LCD12864_NoWaitIdle_COM_Write(0x98);                                                //指針設置
  108.         LCD12864_write_word("※※※※※※※※");                   */

  109.         Get_Maopi();                                //稱毛皮重量
  110.                                 
  111.         delay_ms(10000);                 //延時10s,等待傳感器穩定
  112.         Price_Count = 0;
  113.         Price_Buffer[0] = 0;
  114.         Price_Buffer[1] = 0;
  115.         Price_Buffer[2] = 0;
  116.         Price_Buffer[3] = 0;
  117.         Price_Buffer[4] = 0;
  118.         Money = 0;
  119.         Flag_OK = 0;

  120.         Get_Maopi();                                //稱毛皮重量
  121.         LCD12864_Clr();                        //清空
  122.         
  123.         while(1)
  124.         {
  125.                 delay_ms(500);
  126.                 LCD12864_Clr();
  127.                 LCD_ShowString(1,0,"上海工程技術大學");
  128.                 LCD_ShowString(2,0,"大學生創新項目");
  129.         //        LCD12684_Wdat(i+0x30);
  130.                         Get_Weight();                        //稱重
  131.         
  132.                         //顯示當前重量
  133.                         LCD_ShowString(3,0,"重量");
  134.                         LCD12864_Pos(3,2);
  135.                 //        LCD12684_Wdat('');
  136.                         if( Weight_Shiwu/10000 != 0)
  137.                         {
  138.                                 LCD12684_Wdat(Weight_Shiwu/10000 + 0x30);
  139.                         }
  140.                         else
  141.                         {
  142.                                 LCD12684_Wdat(' ');        
  143.                         }
  144.                         LCD12684_Wdat(Weight_Shiwu%10000/1000 + 0x30);
  145.                         LCD12684_Wdat('.');
  146.                         LCD12684_Wdat(Weight_Shiwu%1000/100 + 0x30);
  147.                         LCD12684_Wdat(Weight_Shiwu%100/10 + 0x30);
  148.                         LCD12684_Wdat(Weight_Shiwu%10 + 0x30);

  149.                 LCD_ShowString(3,6,"kg");

  150.                 }  


  151. }


  152. /******************* (C) COPYRIGHT 2012 WildFire Team *****END OF FILE************/
復制代碼

完整源碼51黑下載地址:
HX711+lcd12864.rar (286.38 KB, 下載次數: 166)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:148337 發表于 2018-3-7 09:37 | 顯示全部樓層
串行還是并行
回復

使用道具 舉報

ID:290014 發表于 2019-1-3 16:48 | 顯示全部樓層
正需要這樣的程序,下來看看
回復

使用道具 舉報

ID:395289 發表于 2019-4-27 20:29 | 顯示全部樓層
wjh_004 發表于 2019-1-3 16:48
正需要這樣的程序,下來看看

能給我發一份嗎。謝謝1799835116@qq.com
回復

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕成人av | a视频在线观看 | 成人片免费看 | 欧美在线综合 | 欧洲精品视频一区 | 亚洲精品一区二区在线观看 | 国产精品久久久久久福利一牛影视 | 久久精品小视频 | 中日韩av| 黑人一级黄色大片 | 久久97精品 | av片网站| 久久五月婷 | 人人鲁人人莫人人爱精品 | www.色午夜.com | 一区影院 | 97视频在线观看网站 | 成人欧美一区二区三区在线观看 | 国产婷婷色一区二区三区 | 精品一二三区 | 日韩视频在线免费观看 | 国产亚洲日本精品 | 激情一区 | 亚洲精品久久久久久久久久久久久 | 日韩一区二区三区在线看 | 国产精品欧美一区二区 | 蜜桃视频在线观看免费视频网站www | 久久久观看 | 一区二区免费在线观看 | 一本一道久久a久久精品蜜桃 | 亚洲美女网站 | 国产欧美一区二区三区久久 | 色综合一区二区 | 日韩精品免费一区二区在线观看 | 日本精品一区二区三区在线观看视频 | 欧美一级欧美一级在线播放 | 精精国产xxxx视频在线野外 | 亚洲精品一区二区三区丝袜 | 黑人一级黄色大片 | 久久狠狠| 老司机67194精品线观看 |