找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1653|回复: 2
打印 上一主题 下一主题
收起左侧

新手求教51单片机电子称设计

[复制链接]
跳转到指定楼层
楼主
ID:347714 发表于 2018-6-8 16:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
做学校里的一个单片机项目
源程序都考进去了但是显示 不出来东西
最顶上一行白色方框
下面一行不显示

源程序附件里

部分截取
  1. #include "main.h"
  2. #include "HX711.h"
  3. #include "uart.h"
  4. #include "LCD1602.h"
  5. unsigned long HX711_Buffer = 0;
  6. unsigned long Weight_Maopi = 0;
  7. long Weight_Shiwu = 0;
  8. unsigned char flag = 0;
  9. bit Flag_ERROR = 0;
  10. sbit speak= P1^7;
  11. #define GapValue 400

  12. //****************************************************
  13. //??????
  14. //****************************************************
  15. void main()
  16. {
  17.     Uart_Init();
  18.     Send_Word("Welcome to use!\n");
  19.     Send_Word("Made by Beetle Electronic Technology!\n");

  20. Init_LCD1602();
  21. LCD1602_write_com(0x80);
  22. LCD1602_write_word("Welcome to use!");
  23. Delay_ms(1000);   //???,????????????
  24. Get_Maopi();    //????????

  25. while(1)
  26. {
  27.   EA = 0;
  28.   Get_Weight();   //????
  29.   EA = 1;
  30.   Scan_Key();
  31.   //??????????
  32.   if( Flag_ERROR == 1)
  33.   {
  34.             Send_Word("ERROR\n");
  35.    
  36.    LCD1602_write_com(0x80+0x40);
  37.    LCD1602_write_word("ERROR ");
  38.    speak=0;
  39.   }  
  40.   else
  41.   {         
  42.          speak=1;
  43.             Send_ASCII(Weight_Shiwu/1000 + 0X30);
  44.             Send_ASCII(Weight_Shiwu%1000/100 + 0X30);
  45.             Send_ASCII(Weight_Shiwu%100/10 + 0X30);
  46.             Send_ASCII(Weight_Shiwu%10 + 0X30);
  47.             Send_Word(" g\n");
  48.    
  49.    LCD1602_write_com(0x80+0x40);
  50.    LCD1602_write_data(Weight_Shiwu/1000 + 0X30);
  51.             LCD1602_write_data(Weight_Shiwu%1000/100 + 0X30);
  52.             LCD1602_write_data(Weight_Shiwu%100/10 + 0X30);
  53.             LCD1602_write_data(Weight_Shiwu%10 + 0X30);
  54.    LCD1602_write_word(" g");
  55.   }
  56.   
  57. }
  58. }
  59. //??谴??
  60. void Scan_Key()
  61. {
  62. if(KEY1 == 0)
  63. {
  64.   Delay_ms(5);
  65.   if(KEY1 == 0)
  66.   {
  67.    while(KEY1 == 0);
  68.    Get_Maopi();   //??
  69.   }
  70. }
  71. }
  72. //****************************************************
  73. //????
  74. //****************************************************
  75. void Get_Weight()
  76. {
  77. Weight_Shiwu = HX711_Read();
  78. Weight_Shiwu = Weight_Shiwu - Weight_Maopi;  //???????
  79. if(Weight_Shiwu > 0)   
  80. {
  81.   Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/GapValue);  //???????????????
  82.                   
  83.                   
  84.   if(Weight_Shiwu > 5000)  //???????
  85.   {
  86.    Flag_ERROR = 1;
  87.   }
  88.   else
  89.   {
  90.    Flag_ERROR = 0;
  91.   }
  92. }
  93. else
  94. {
  95.   Weight_Shiwu = 0;
  96. // Flag_ERROR = 1;    //???????
  97. }

  98. }
  99. //****************************************************
  100. //?????????
  101. //****************************************************
  102. void Get_Maopi()
  103. {
  104. Weight_Maopi = HX711_Read();
  105. }
  106. //****************************************************
  107. //MS???????(12M?????2???)
  108. //****************************************************
  109. void Delay_ms(unsigned int n)
  110. {
  111. unsigned int  i,j;
  112. for(i=0;i<n;i++)
  113.   for(j=0;j<123;j++);
  114. }

复制代码


(1)5Kg电子秤程序(LCD1602显示)推荐使用.zip

74.39 KB, 下载次数: 23

源程序

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:303383 发表于 2018-6-8 19:23 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

板凳
ID:347714 发表于 2018-6-8 22:51 | 只看该作者
小猫猫爱吃鱼 发表于 2018-6-8 19:23
你好!源代码通过实物测试,显示正常;
检查你的硬件连接的是不是对。。。

刚刚搞定了 LCD的关系
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表