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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6028|回復: 10
打印 上一主題 下一主題
收起左側

stm32電子秤源碼

  [復制鏈接]
跳轉到指定樓層
樓主
ID:226985 發表于 2017-8-17 15:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本人親試,可以實現,電子秤制作學習

所有資料51hei提供下載:
電子秤.rar (587.49 KB, 下載次數: 173)

單片機源程序如下:
  1. #include <stm32f10x_lib.h>
  2. #include "STM32_Init.h"
  3. #include "stm32f10x_it.h"
  4. #include "main.h"
  5. #include "delay.h"
  6. #include "sys.h"
  7. #include "lcd12864.h"
  8. #include "scale_key.h"
  9. #include "scale_lcd.h"
  10. #include "keyboard.h"
  11. #include "hx711.h"
  12. #include "timer.h"

  13. #define weightNum        0x1FF22

  14. //定義變量
  15. u8 keyNum;        //按鍵位
  16. u16 outWeightNum;          //去皮重
  17. u8 pointNum; //小數點的位置
  18. u8 saveMoneyFlag;  //保存單價的次數
  19. u8 countNum;        //當前數的位置


  20. Thing  curr, moneyOne, moneyTwo, moneyThree;

  21. //按鍵反應函數
  22. void funManage(void)
  23. {
  24.         switch(keyNum)
  25.         {
  26.                 case Clear :                   //清除:去皮指示、去皮量、單價、E2PROM價格
  27.                         Skey_Clear();
  28.                         break;       

  29.                 case Total :                   //多次單次金額總價
  30.                         Skey_Total();
  31.                         break;

  32.                 case OutWeight :         //去皮:當前重量,去皮后每次的AD值都要減去當前值才計算重量
  33.                         Skey_OutWeight();
  34.                         break;

  35.                 case SetZero :                 //清掉價格
  36.                         Skey_SetZero();
  37.                         break;

  38.                 case Save :                         //存儲當前金額
  39.                         Skey_Save();
  40.                         break;
  41.        
  42.                 case Zero :        break;
  43.                 case One : break;
  44.                 case Two : break;
  45.                 case Three :break;
  46.                 case Four :        break;
  47.                 case Five :        break;
  48.                 case Six : break;
  49.                 case Server :break;
  50.                 case Eight :break;
  51.                 case Nine :break;
  52.                 case Point :
  53.                         Skey_OneToNine();
  54.                         break;

  55.                 default : break;
  56.         }
  57.                        
  58. }


  59. //12864 顯示函數
  60. void disManage(void)
  61. {
  62.         switch(keyNum)
  63.         {
  64.                 case Clear :                   //清除:去皮指示、去皮量、單價、E2PROM價格
  65.                         DIS_Init();
  66.                         break;       
  67.                 case Total :                   //多次單次金額總價
  68.                         DIS_Body();
  69.                         break;

  70.                 case OutWeight :         //去皮:當前重量,去皮后每次的AD值都要減去當前值才計算重量
  71.                         DIS_OutWeight();
  72.                         break;

  73.                 case SetZero :                 //清掉價格
  74.                         DIS_Body();
  75.                         break;

  76.                 case Save :                         //存儲當前金額
  77.                         DIS_Save();
  78.                         break;
  79.                 case Money1 :                         //金額1
  80.                         DIS_Money1();
  81.                         break;

  82.                 case Money2 :                         //金額2
  83.                         DIS_Money2();
  84.                         break;

  85.                 case Money3 :                         //金額3
  86.                         DIS_Money3();
  87.                         break;
  88.        
  89.                 case Zero :
  90.                 case One :
  91.                 case Two :
  92.                 case Three :
  93.                 case Four :
  94.                 case Five :
  95.                 case Six :
  96.                 case Server :
  97.                 case Eight :
  98.                 case Nine :
  99.                 case Point :
  100.                         if(countNum > 5)
  101.                         {
  102.                                 DIS_MoreLimit();       
  103.                         }
  104.                         else
  105.                         {
  106.                                 DIS_Body();
  107.                         }                       
  108.                         break;

  109.                 default :  //顯示重量的值                       
  110.                         DIS_Body();
  111.                         break;
  112.         }       
  113. }

  114. unsigned long temp;
  115. int main()
  116. {       
  117.         u8 i = 0;
  118.        

  119.         stm32_Init();
  120.         SysTickInit();               
  121.     LCD_Init();       

  122.         DIS_Init();
  123. //        Timerx_Init(5000,7199);//10Khz的計數頻率,計數到5000為500ms

  124.         curr.weight = 0;
  125.         curr.weightZero = 0;
  126.         curr.money = 0;

  127. //        DIS_Init();
  128. //        LCD_WriteCMD(0x01);        //清屏
  129. //        while(1);
  130.        
  131. //        while(1)
  132. //        {
  133. //               
  134. //                temp = GetValueMidTui();
  135. //                //temp >>= 6;
  136. //                LCD_WriteCMD(0x90);
  137. //                LCD_WriteNum(temp);
  138. //
  139. //                LCD_WriteCMD(0x80);
  140. //                if(temp < 0x20085)
  141. //                {
  142. //                        LCD_WriteNum(0);
  143. //                } else
  144. //                {                                               
  145. //                        temp -= 0x20080;
  146. //                        LCD_WriteNum(temp);
  147. //                }               
  148. //                delay_ms(100);
  149. //                LCD_WriteCMD(0x80);
  150. //                LCD_WriteString("                  ");
  151. //        }                                          
  152.     while(1)
  153.     {       
  154.                 keyNum = Key_Scan();   // 鍵盤掃描
  155.        
  156.                 if(keyNum != 255)
  157.                 {
  158.                         funManage();
  159.                         //功能實現
  160.                 }
  161.                 else
  162.                 {
  163.                         curr.weight = GetValueMidTui();                //重量  濾波
  164.                         if(curr.weight > (weightNum - outWeightNum))
  165.                         {
  166.                                 curr.weight = 0;
  167.                         } else
  168.                         {                                               
  169.                                 curr.weight = (weightNum - outWeightNum) - curr.weight;                               
  170.                         }               
  171.                         //AD采集
  172.                 }
  173.                
  174.                 if(keyNum != 255)
  175.                 {
  176.                         disManage();
  177.                 }
  178.                 else
  179.                 {
  180.                         DIS_Body();
  181.                 }


  182.     }       
  183. }
復制代碼




評分

參與人數 1黑幣 +5 收起 理由
SHUTLY + 5 絕世好帖!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:163574 發表于 2017-9-15 17:59 | 只看該作者
最近實習正想坐這個,參考下樓主的&#128515;
回復

使用道具 舉報

板凳
ID:238738 發表于 2017-10-11 22:53 | 只看該作者
有沒有電路圖
回復

使用道具 舉報

地板
ID:356388 發表于 2018-6-21 21:23 | 只看該作者
真的好,就是沒有黑幣下載
回復

使用道具 舉報

5#
ID:356203 發表于 2018-6-22 10:39 | 只看該作者
好貼,謝謝。
回復

使用道具 舉報

6#
ID:18591 發表于 2019-1-20 20:38 | 只看該作者

好貼,謝謝
回復

使用道具 舉報

7#
ID:439057 發表于 2019-3-27 10:30 | 只看該作者
謝謝樓主的資源。
回復

使用道具 舉報

8#
ID:518449 發表于 2019-5-9 10:26 | 只看該作者
太棒了
回復

使用道具 舉報

9#
ID:662262 發表于 2019-12-13 18:20 | 只看該作者
非常感謝
回復

使用道具 舉報

10#
ID:978581 發表于 2021-11-13 10:29 | 只看該作者
怎么一編譯顯示有8個錯誤
回復

使用道具 舉報

11#
ID:978581 發表于 2021-11-13 10:30 | 只看該作者
這是用32哪個板子
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91在线精品秘密一区二区 | 亚洲精选一区二区 | 国产精品久久国产精品 | 欧美激情在线播放 | 亚洲视频中文字幕 | www.国产91 | 亚洲免费观看视频网站 | 亚洲女人天堂成人av在线 | 农村真人裸体丰满少妇毛片 | 免费国产视频在线观看 | 日韩在线视频免费观看 | 欧美三级网站 | 久久黄色网 | 一级黄色影片在线观看 | 亚洲视频欧美视频 | www.国产精| 人人玩人人添人人澡欧美 | 亚洲3p | 精品一区二区三区四区视频 | 美日韩精品 | 宅男伊人 | 欧美日韩精品区 | 免费欧美| 欧美一区二区三区在线观看视频 | 日韩喷潮 | 综合激情网 | 九九热最新地址 | 成人性生交大片免费看中文带字幕 | 午夜视频一区 | 国产亚洲成av人片在线观看桃 | 日韩一区在线播放 | 国产精品久久久久久久一区探花 | 日韩中文字幕在线视频观看 | 午夜私人影院在线观看 | 欧美精品在线播放 | 久色网| 7777久久| 中文字幕av一区 | 欧美日韩精品在线免费观看 | 日韩久久综合网 | 亚洲欧美中文日韩在线v日本 |