关于hx711的资料
display12864.c文件中的WaitBusy()函数被修改过,12864的显示可能会出现单片机复位时,没有显示,要复位很多次才有显示的问题。到最后定产品时,可以改回来,如下,把 while(GPIO_ReadInputData(DisIO) & 0x0080); 句前的注释符号去掉即可。
void WaitBusy(void)
{
IOInitIn();
GPIO_ResetBits(DisIO,RS); //RS = 0.
GPIO_SetBits(DisIO,RW); //RW = 1.
GPIO_SetBits(DisIO,EN); //EN = 1.
// while(GPIO_ReadInputData(DisIO) & 0x0080);
GPIO_ResetBits(DisIO,EN); //EN = 0;
IOInitOut();
}
单片机源程序如下:
- #include "stm32f10x.h"
- #include "delay.h"
- #include "usart1.h"
- #include "ad_hx711.h"
- #include "display12864.h"
- #include "transform.h"
- #include "alarm.h"
- #include "init.h"
- #include "mass.h"
- #include "key.h"
- int main(void)
- {
- int i=0;
-
- init(); //进行系统的初始化。
-
- DisStr("预热中,请等待40秒。"); //延时40秒,同时显示倒计时。
- for(i=40;i>0;i--)
- {
- locate16(4,4);
- DisStr(" ");
- locate16(4,4);
- DisInt(i);
- delay_ms(1000);
- }
- WriteCmd(0x01); //清除所有显示。
- locate16(1,1);
- DisStr("重量: 0.00 g"); //初始化显示。
-
- while(1)
- {
- mass();
- HandleKey();
- }
- }
复制代码
所有资料51hei提供下载:
电子天平程序.rar
(539.18 KB, 下载次数: 34)
|