已结贴√
问题点数:20 回复次数:1
利用MSP430F149和HX711模块制作体重秤?
以下代码是我从另一个论坛大拿那里看来的,如何改动才能只保留数码管显示体重呢?不需要蓝牙模块等等。救救毕设做不出来的孩子吧,以下是我贴的大神的设计:
智能体重秤主要由压力秤模块、MPU 模块和 App 模块构成,将智能体重秤放置在床边,每日清晨起床时站在秤上测量一下自己的体重,体重秤会通过数码管将体重显示出来,并与已知数据比较,系统会自动发出提示语音,然后通过内置在体重秤内的蓝牙模块将数据传送到手机App 客户端,将数据记录下来,坚持每日测量的话,系统会根据每日的测量数据绘制体重曲线,进而通过曲线分析人体健康状况,并给出合理建议。用户还可以随时查询之前的体重数据,通过对比来更好地把握自己的健康状况。
通过人体体重变化来监测人体健康情况已有相关文献研究,我们可以借鉴相关的一些研究成果来对人体健康状况进行分析。
模块划分:
①定时器模块:定时期间只记录一次数据,两次计数之间用定时器定时。
②HX711 数据采集模块:采集来自 HX711 的串行数据。
③串口模块:单片机与手机蓝牙串口助手交互功能。
④数码管模块:依据不同的工作模式显示不同的数据。
⑤按键功能模块:根据不同的按键,进入不同的工作模式。共包括:测量模式、记录模式、查询模式、清零模式。
#include "io430.h"
#include "in430.h"
unsigned long int HX711_Read(); //HX711数据采集函数声明
void Segshow(int n,int a,int b,int c,int d); //数码管显示函数声明
void HC595SendData(unsigned char SendVal); //HC5955数据移入函数声明
void HC595ShowData(); //HC5955数据发送函数声明
void HX711_delay(); //HX711采集延迟函数声明
void USCIA0_init(); //蓝牙设置初始化函数声明
void HX711_init(); //HX711设置初始化函数声明
void TAO_init(); //定时器设置初始化函数声明
void GPIO_init(); //GPIO设置初始化函数声明
char int_char(int n); //数据格式转换函数声明
void delay(); //延时按键防抖函数声明
char buffer[32]; //蓝牙收发数据缓冲区
char advice1[50]="more exercise and less meat!”;//建议1字符串
char advice2[50]="good body and keep on!”; //建议2字符串
int weightdata[32]; //记录体重数据的数据串
unsigned int j=0; //计数变量i、j、k、l、p
unsigned int i=0;
unsigned int k=0;
unsigned int l=0;
unsigned int p=0;
int num1,num2,num3,num4,n; //数码管参数
int count1=0; //两次采集数据之间间隔计时
int flag1=0; //测量模式
int flag2=0; //记录模式
int flag3=0;