資源簡介
430稱重.zip

代碼片段和文件信息
#include?
#include?“OLED.h“
#include?
#include?
#include?
#include?
#define?uchar unsigned?char
#define?uint unsigned?int
#define?ulong unsigned?long
#define?CPU_F?(?(double)?8000000)
#define?delay_us(?x?) __delay_cycles(?(long)?(CPU_F?*?(double)?x?/?1000000.0)?)
#define?delay_ms(?x?) __delay_cycles(?(long)?(CPU_F?*?(double)?x?/?1000.0)?)
#define?GapValue?4.45
unsigned?long Weight_Maopi;
unsigned?long HX711_Buffer;
unsigned?long Weight_Shiwu;
uchar Flag_Error?=?0;
/*?初始化HX711端口?*/
void?hx711_port_init()
{
P2DIR |=?BIT2;
P2OUT &=?~BIT2;
P2DIR &=?~BIT3;
P2REN |=?BIT3;
P2OUT |=?BIT3;
}
/*?3.3V供電?????????????????2.2接SCK??2.3接DT?*/
unsigned?long?HX711_Read(?void?)
{
unsigned?long Count;
unsigned?char i;
P2OUT &=?~BIT2;???????????????/*?SCL=0;使能AD(PD_SCL?置低)?*/
Count =?0;
while?(?P2IN?&?BIT3?)
;
/*?AD轉換未結束則等待,否則開始讀取?*/
for?(?i?=?0;?i?24;?i++?)
{
P2OUT |=?BIT2;????????/*?SCL?=?1;?PD_SCL?置高(發送脈沖)?*/
Count =?Count?<1;???/*下降沿來時變量Count左移一位,右側補零?*/
delay_us(?1?);
P2OUT?&=?~BIT2;?????????/*?SCL=0;?PD_SCL?置低?*/
if?(?P2IN?&?BIT3?)
Count++;????????/*?if(SDA)?Count++;?*/
delay_us(?1?);
}
P2OUT |=?BIT2;????????????????/*?SCL=1;?*/
Count =?Count?^?0x800000;?????/*?第25個脈沖下降沿來時,轉換數據?*/
delay_us(?1?);
P2OUT?&=?~BIT2;?????????????????/*?SCL=0;?*/
return(Count);
}
/*
?*?****************************************************
?*?獲取毛皮重量
?*?****************************************************
?*/
void?Get_Maopi(?void?)
{
Weight_Maopi?=?HX711_Read();
}
/*
?*?****************************************************
?*?稱重
?*?****************************************************
?*/
void?Get_Weight(?void?)
{
ulong?maopia?=?0;
HX711_Buffer?=?HX711_Read();
if?(?HX711_Buffer?>?Weight_Maopi?)
{
Weight_Shiwu =?HX711_Buffer;
Weight_Shiwu =?Weight_Shiwu?-?Weight_Maopi;??????????????????/*?獲取實物的AD采樣數值。?*/
Weight_Shiwu?=?(ulong)?(?(float)?Weight_Shiwu?/?GapValue);??????/*?計算實物的實際重量?*/
/*
?*?因為不同的傳感器特性曲線不一樣,因此,每一個傳感器需要矯正這里的GapValue這個除數。
?*?當發現測試出來的重量偏大時,增加該數值。
?*?如果測試出來的重量偏小時,減小改數值。
?*?該數值一般在4.0-5.0之間。因傳感器不同而定。
?*?+0.05是為了四舍五入百分位
?*/
}
HX711_Buffer =?(ulong)?(?(float)?HX711_Buffer?/?GapValue);
maopia =?(ulong)?(?(float)?Weight_Maopi?/?GapValue);
if?(?5000000?(maopia?+?HX711_Buffer)?)
{
Flag_Error?=?1;
}?else?{
Flag_Error?=?0;
}
}
/*
?*?????????/|\|??????????????XIN|-
?*??????????|?|?????????????????|?32kHz
?*??????????--|RST??????????XOUT|-
?*????????????|?????????????????|
?*????????????|?????P1.2/UCA0TXD|------------>
?*????????????|?????????????????|?9600?-?8N1
?*????????????|?????P1.1/UCA0RXD|<------------
?*/
void?uart_init()
{
P1DIR =?0xFF;?????????????????/*?All?P1.x?outputs?*/
P1OUT =?0;????????????????????/*?All?P1.x?reset?*/
P2DIR =?0xFF;?????????????????/*?All?P2.x?outputs?*/
P2OUT =?0;????????????????????/*?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-04-16?12:25??HX711\
?????文件?????????545??2019-04-10?11:36??HX711\.ccsproject
?????文件???????24712??2019-04-10?11:36??HX711\.cproject
?????目錄???????????0??2019-04-16?12:25??HX711\.launches\
?????文件????????4209??2019-04-13?10:53??HX711\.launches\HX711.launch
?????文件????????4202??2019-03-29?16:38??HX711\.launches\TEMP.launch
?????文件?????????835??2019-04-10?10:27??HX711\.project
?????目錄???????????0??2019-04-16?12:25??HX711\.settings\
?????文件??????????62??2019-03-29?08:59??HX711\.settings\org.eclipse.cdt.codan.core.prefs
?????文件?????????123??2019-03-29?08:59??HX711\.settings\org.eclipse.cdt.debug.core.prefs
?????文件?????????208??2019-03-29?08:59??HX711\.settings\org.eclipse.core.resources.prefs
?????目錄???????????0??2019-04-16?12:25??HX711\Debug\
?????文件??????????49??2019-04-13?11:44??HX711\Debug\ccsObjs.opt
?????文件???????26192??2019-04-13?11:44??HX711\Debug\HX711.map
?????文件???????92924??2019-04-13?11:44??HX711\Debug\HX711.out
?????文件??????239777??2019-04-13?11:44??HX711\Debug\HX711_li
?????文件???????72444??2019-04-13?11:44??HX711\Debug\main.obj
?????文件????????1975??2019-04-13?11:44??HX711\Debug\main.pp
?????文件????????3678??2019-04-13?11:44??HX711\Debug\makefile
?????文件?????????250??2019-04-10?10:32??HX711\Debug\ob
?????文件????????1920??2019-04-13?11:44??HX711\Debug\sources.mk
?????文件?????????846??2019-04-10?11:43??HX711\Debug\subdir_rules.mk
?????文件?????????513??2019-04-10?11:43??HX711\Debug\subdir_vars.mk
?????文件???????19284??2019-03-29?16:38??HX711\Debug\TEMP.map
?????文件???????55200??2019-03-29?16:38??HX711\Debug\TEMP.out
?????文件??????156447??2019-03-29?16:38??HX711\Debug\TEMP_li
?????文件???????10532??2019-03-29?08:59??HX711\lnk_msp430f2617.cmd
?????文件????????8352??2019-03-29?08:59??HX711\lnk_msp430g2553.cmd
?????文件????????9094??2019-04-13?11:44??HX711\main.c
?????文件????????6165??2019-04-10?11:57??HX711\OLED.h
?????文件???????15263??2019-04-10?11:41??HX711\oledfont.h
............此處省略23個文件信息
- 上一篇:KY-040 旋轉編碼器
- 下一篇:2給客戶做的仿真圖和代碼文件夾現公布.zip
評論
共有 條評論