![自動(dòng)稱量參考程序_第1頁(yè)](http://file4.renrendoc.com/view/7e6ccb032b457e6d99d6cd750fb3f0aa/7e6ccb032b457e6d99d6cd750fb3f0aa1.gif)
![自動(dòng)稱量參考程序_第2頁(yè)](http://file4.renrendoc.com/view/7e6ccb032b457e6d99d6cd750fb3f0aa/7e6ccb032b457e6d99d6cd750fb3f0aa2.gif)
![自動(dòng)稱量參考程序_第3頁(yè)](http://file4.renrendoc.com/view/7e6ccb032b457e6d99d6cd750fb3f0aa/7e6ccb032b457e6d99d6cd750fb3f0aa3.gif)
![自動(dòng)稱量參考程序_第4頁(yè)](http://file4.renrendoc.com/view/7e6ccb032b457e6d99d6cd750fb3f0aa/7e6ccb032b457e6d99d6cd750fb3f0aa4.gif)
![自動(dòng)稱量參考程序_第5頁(yè)](http://file4.renrendoc.com/view/7e6ccb032b457e6d99d6cd750fb3f0aa/7e6ccb032b457e6d99d6cd750fb3f0aa5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——自動(dòng)稱量參考程序自動(dòng)稱量參考程序.c
#include#defineFOSC22118400L/***定義通訊協(xié)議***/#definesend_zhen_tousend_data1(0xEE);#definesend_zhen_wen
send_data1(0xFF);send_data1(0xFC);send_data1(0xFF);send_data1(0xFF);
/*************定義程序必需有的變量********************************/bitbusy=0;//COM1使用
sbitsck=P0^3;//定義HX711的SCK
sbitd_out=P0^2;//定義HX711的D_0UT引腳sbitk_1=P3^2;sbitk_2=P3^3;sbitk_3=P3^4;sbitk_4=P3^5;
sbitk_5=P2^0;//定義了5個(gè)開關(guān)量輸入sbitstep_en=P2^2;sbitstep_dir=P2^3;
//sbitstep_pul=P2^4;//定義步進(jìn)電機(jī)驅(qū)動(dòng)引腳sbitjd1=P1^7;
sbitjd2=P1^6;//定義繼電器驅(qū)動(dòng)引腳
/************通信使用命令********************/xdataunsignedcharread_hua_mian_id[8]=
{0XEE,0XB1,0X01,0XFF,0XFC,0XFF,0XFF,0xcc};xdataunsignedchar
shua_xin_off[8]={0xee,0xb3,0x00,0xff,0xfc,0xff,0xff,0xcc};xdataunsignedchar
shua_xin_on[8]={0xee,0xb3,0x01,0xff,0xfc,0xff,0xff,0xcc};xdataunsignedchar
feng_ming[8]={0XEE,0X61,0X32,0XFF,0XFC,0XFF,0XFF,0XCC};/**********聲明無(wú)需存入EEPROM的變量******************/unsignedcharsend_message[20]=0;//發(fā)送幀消息專用數(shù)組unsignedcharread_message[20]=0;//接收消息專用緩沖區(qū)unsignedcharuart_read_f=0;
unsignedcharuart_read_count=0;
unsignedlonghx711_ad=0;//HX711AD轉(zhuǎn)換結(jié)果unsignedlongad_bi_jiao=0;
unsignedintstep_f=0;//存放頻率計(jì)算結(jié)果unsignedintlin_step_f=10;unsignedcharhua_mian_id=0;floatxi_shu_xiao=0.0;floatxi_shu_da=0.0;
unsignedlongmu_biao_liang_1=0;//實(shí)際進(jìn)料時(shí),去掉提前量的數(shù)值
第1頁(yè)
自動(dòng)稱量參考程序.c
unsignedlongmu_biao_liang_8=0;//X0.8的數(shù)值unsignedlongshi_shi_zhi_liang=0;//動(dòng)態(tài),實(shí)時(shí)質(zhì)量/***********聲明需要存入EEPROM的變量**********/unsignedintmi_ma=0;
unsignedintstep_fast=0;//步進(jìn)電機(jī)快速運(yùn)行的頻率unsignedintstep_low=0;//步進(jìn)電機(jī)慢速運(yùn)行的頻率unsignedlongmu_biao_liang=0;//目標(biāo)量unsignedlongpian_yi=0;//質(zhì)量偏移unsignedcharlv_bo=0;//濾波系數(shù)
unsignedintfa_ma_da=0;//校準(zhǔn)時(shí)大砝碼的
unsignedintfa_ma_zhong=0;//校準(zhǔn)時(shí)中砝碼質(zhì)量unsignedintfa_ma_xiao=0;//校準(zhǔn)時(shí)小砝碼質(zhì)量
unsignedlongcai_yang_da=0;//校準(zhǔn)時(shí),大砝碼采樣值unsignedlongcai_yang_zhong=0;//較準(zhǔn)時(shí),中砝碼采樣值unsignedlongcai_yang_xiao=0;//較準(zhǔn)時(shí),小砝碼采樣值unsignedcharliang_du=130;//默認(rèn)亮度130floatpi_zhong=0;//定義皮重
/************聲明子函數(shù)********************/voiduse_k(void);
voidsend_data1(unsignedchardat);voidsend_str1(char*s);
voidnum_to_message(unsignedlongdat);unsignedlonghx711_10(void);
voidstep_control(unsignedchark,unsignedintf);voidupdata_zhong_liang(unsignedlongke);voiddelay_1ms(unsignedchark);voiddelay_50ms(unsignedintm);
voidset_txt(unsignedcharscreen_id,unsignedcharcontrol_id,unsignedlongdat,unsignedcharcounter);voidying_jian_ce_shi(void);
unsignedinttft_read_txt(unsignedcharhua_mian,unsignedchartxt);
voidshu_ru_mi_ma(void);
voidtft_show_6bit(unsignedcharhua_mian,unsignedchartxt,unsignedlongnum);
voidcan_shu_she_zhi(void);
voidtft_show_4bit(unsignedcharhua_mian,unsignedchartxt,unsignedintnum);voidjiao_cheng(void);
unsignedintass_to_num_4bit(unsignedchar*p);unsignedlongass_num_dot(unsignedchar*p);voidte_shu_mi_ma(void);
voidsave_eeprom(unsignedintadd,unsignedlongdat);unsignedlongread_eeprom(unsignedintadd);
第2頁(yè)
自動(dòng)稱量參考程序.c
voidget_xi_shu(void);floatget_zhi_liang(void);
unsignedlongshi_ji_zhong_liang(void);
voidmao_pao_pai_xu(unsignedlong*a,unsignedcharchang_du);voidzheng_chang_xia_liao(void);voidkuai_su_qing_liao(void);voidset_mu_biao_liang(void);
/*************主函數(shù)**********************/voidmain(){
P0M1=0;P0M0=0;jd1=0;jd2=0;
P1M1=0;P1M0=0xff;jd1=0;jd2=0;
P2M1=0x10;P2M0=0;P3M1=0;P3M0=0;P4M1=0;P4M0=0;P5M1=0;P5M0=0;SCON=0x50;
AUXR=0x15;//COM1,COM2,控制波特率發(fā)生器T2L=0xD0;
T2H=0xFF;//波特率設(shè)置AUXR1|=0X40;PS=1;
ES=1;//允許串行口中斷AUXR1|=0X20;CMOD=0X02;
step_f=FOSC/4/3000;CCON=0;CH=0;
CL=0;
CCAP0L=step_f;
CCAP0H=step_f>>8;CCAPM0=0x4d;CR=0;
/**********************************/EA=1;//允許CPU總中斷
step_en=1;step_dir=1;
delay_1ms(250);//250ms/
*********讀取**EEPROM**********/
mi_ma=read_eeprom(1);step_fast=read_eeprom(2);step_low=read_eeprom(3);
mu_biao_liang=read_eeprom(4);
第3頁(yè)
自動(dòng)稱量參考程序.c
pian_yi=read_eeprom(5);lv_bo=read_eeprom(6);
fa_ma_da=read_eeprom(7);fa_ma_zhong=read_eeprom(8);fa_ma_xiao=read_eeprom(9);cai_yang_da=read_eeprom(10);cai_yang_zhong=read_eeprom(11);cai_yang_xiao=read_eeprom(12);liang_du=read_eeprom(13);pi_zhong=read_eeprom(14);
/**************************/
k_1=1;k_2=1;k_3=1;k_4=1;
/k_5=1;
****************停留在開機(jī)畫面*****************/while(hua_mian_id==0){
send_str1(read_hua_mian_id);//獲取有效的畫面ID結(jié)果
if((read_message[1]==0xB1)
}
/*********發(fā)送亮度控制信號(hào)**********/
send_zhen_tou;send_data1(0x60);send_data1(liang_du);
send_zhen_wen;//將亮度調(diào)暗到130
delay_1ms(100);//200ms,使傳感器電源供給穩(wěn)定get_xi_shu();//計(jì)算稱重系數(shù)pi_zhong=hx711_10();
set_txt(1,6,mu_biao_liang,6);//工作界面的目標(biāo)量delay_1ms(100);
mu_biao_liang_1=mu_biao_liang-pian_yi;//計(jì)算去掉提前量
的值
mu_biao_liang_8=mu_biao_liang_1*8/10;//0.8send_str1(feng_ming);jd1=1;
/*****************主循環(huán)*******************/while(1){
send_str1(read_hua_mian_id);delay_1ms(5);
if((read_message[1]==0xB1)
switch(hua_mian_id)hua_mian_id=0xfe;
{
//case0x01:工作界面{
use_k();//處理按鍵按下結(jié)果}/break;
updata_zhong_liang(shi_ji_zhong_liang());
case0x02:/輸入密碼界面,設(shè)置各項(xiàng)參數(shù){
}break;
shu_ru_mi_ma();
/case0x03:/硬件功能測(cè)試{
}break;ying_jian_ce_shi();
/case0x04:/參數(shù)設(shè)置{
}break;
can_shu_she_zhi();
/case0x05:/傳感器校準(zhǔn){
}break;
jiao_cheng();
/case0x06:/特別密碼界面{
}break;te_shu_mi_ma();
case0xfe:{
}
}break;
;
第5頁(yè)
自動(dòng)稱量參考程序.c
CCF0=0;
CH=0;CL=0;
}
voiduart1_inte(void)interrupt4using1{
if(RI){
if(SBUF==0XAA)
IAP_CONTR=0X60;
if(SBUF==0XEE)
{
uart_read_f=1;
for(uart_read_count=0;uart_read_counta[i+1]){
temp=a[i];a[i]=a[i+1];a[i+1]=temp;
}
}
}
}
//讀取HX711
unsignedlonghx711_10(void){
unsignedlongcount[3]=0;
第9頁(yè)
自動(dòng)稱量參考程序.c
while(d_out==1);//等待芯片準(zhǔn)備好.sck=1;
NOP2();//芯片上升沿讀取數(shù)據(jù)。sck=0;NOP2();
for(i=0;i自動(dòng)稱量參考程序.c
else{
CR=0;
step_f=FOSC/4/f+0.5;CH=0;CL=0;
CCAP0L=step_f;
CCAP0H=step_f>>8;
}
if(k==1){}else{}
CR=1;CR=0;
}
voidupdata_zhong_liang(unsignedlongke){
unsignedlongi=0;
unsignedchara,b,c,d,e;i=ke;
a=i/10000;
b=i/1000%10;c=i/100%10;d=i/10%10;e=i%10;
//send_str1(shua_xin_off);set_txt(1,1,a,1);set_txt(1,2,b,1);set_txt(1,3,c,1);set_txt(1,4,d,1);set_txt(1,5,e,1);
//send_str1(shua_xin_on);
}
//更新某畫面,某號(hào)控件,某個(gè)字節(jié)長(zhǎng)度的數(shù)字
voidset_txt(unsignedcharscreen_id,unsignedcharcontrol_id,unsignedlongdat,unsignedcharcounter){
unsignedcharp[8]=0;unsignedchari=0;if(counter==1){
send_zhen_tou;
第11頁(yè)
自動(dòng)稱量參考程序.c
send_data1(0XB1);send_data1(0X10);send_data1(0X00);send_data1(screen_id);send_data1(0X00);send_data1(control_id);
send_data1(dat+0x30);send_zhen_wen;
}else{
p[7]=dat%10+0x30;//
p[6]=dat%100/10+0x30;//p[5]=dat%1000/100+0x30;//p[4]=dat%10000/1000+0x30;//p[3]=dat%100000/10000+0x30;//p[2]=dat%1000000/100000+0x30;//p[1]=dat%10000000/1000000+0x30;//p[0]=dat/10000000+0x30;//
}
if(counter==8){
send_zhen_tou;send_data1(0XB1);send_data1(0X10);send_data1(0X00);send_data1(screen_id);send_data1(0X00);send_data1(control_id);
for(i=0;i>8;IAP_DATA=dat;IAP_TRIG=0x5a;IAP_TRIG=0xa5;_nop_();close_iap();}
unsignedcharread_byte(unsignedintaddr){
unsignedchardat=0;
IAP_CONTR=0x82;IAP_CMD=0x01;IAP_ADDRL=addr;
IAP_ADDRH=addr>>8;IAP_TRIG=0x5a;IAP_TRIG=0xa5;_nop_();_nop_();_nop_();_nop_();dat=IAP_DATA;
close_iap();
第15頁(yè)
自動(dòng)稱量參考程序.c
unsignedintnum=0;//組合好的數(shù)字unsignedchari=0;//循環(huán)使用tong_xin[4]=hua_mian;tong_xin[6]=txt;send_str1(tong_xin);
if(read_message[4]==hua_mian){
for(i=0;i自動(dòng)稱量參考程序.c
}
//在某扇區(qū)寫入一個(gè)4字節(jié)數(shù)據(jù)
voidsave_eeprom(unsignedintadd,unsignedlongdat){
unsignedintaddr=0;unsignedlongdat1=0;unsignedcharp[4]=0;unsignedchari=0;addr=add*512+1;dat1=dat;p[0]=dat1;dat1>>=8;p[1]=dat1;dat1>>=8;p[2]=dat1;dat1>>=8;p[3]=dat1;for(i=0;i}
//慢進(jìn)料速度設(shè)置
if((read_message[6]==4)while(read_message[i+8]){
p[i]=read_message[i+8]-0x30;i++;
}
for(k=0;k}
//中砝碼值
if((read_message[6]==2)read_message[6]=0xff;while(read_message[i+8]){
p[i]=read_message[i+8]-0x30;i++;
}
for(k=0;kmu_biao_liang_8){
step_control(1,step_low*80);break;
}
//假使按鍵按了K3,則馬上終止本次進(jìn)料if(scan_k()=='3'){
i=0;
step_control(0,0);
send_str1(feng_ming);break;
}
}
while(i){
shi_shi_zhi_liang=shi_ji_zhong_liang();
updata_zhong_liang(shi_shi_zhi_liang);//畫面更新if(shi_shi_zhi_liang>mu_biao_liang_1){
step_control(0,0);break;
}
//假使按鍵按了K3,則馬上終止本次進(jìn)料if(scan_k()=='3'){
第30頁(yè)
}
自動(dòng)稱量參考程序.c
send_zhen_wen;break;
}
//清料程序??焖偾辶?0分鐘,按取消鍵中止voidkuai_su_qing_liao(void){
unsignedintm=0;
step_control(1,step_fast*80);while(1){
m++;
if(scan_k()=='3'){
send_str1(feng_ming)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 渤海石油職業(yè)學(xué)院《中醫(yī)骨傷中藥方劑學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年度太陽(yáng)能光伏系統(tǒng)定期檢查與維修合同
- 2025年度互聯(lián)網(wǎng)職業(yè)經(jīng)理人專項(xiàng)培養(yǎng)與聘用合同
- 二零二五年度水果配送質(zhì)量保證服務(wù)合同3篇
- 《購(gòu)物策略》課件
- 《其他貨幣資金》課件
- 《白血病臨床表現(xiàn)》課件
- 鄉(xiāng)村教育可持續(xù)發(fā)展評(píng)估機(jī)制
- 提升研究生導(dǎo)師隊(duì)伍的建設(shè)與素質(zhì)策略
- 適老化閱讀環(huán)境的建設(shè)原則
- 數(shù)學(xué)-安徽省皖南八校2025屆高三上學(xué)期12月第二次大聯(lián)考試題和答案
- 退市新規(guī)解讀-上海證券交易所、大同證券
- 融資報(bào)告范文模板
- 桃李面包盈利能力探析案例11000字
- GB/Z 30966.71-2024風(fēng)能發(fā)電系統(tǒng)風(fēng)力發(fā)電場(chǎng)監(jiān)控系統(tǒng)通信第71部分:配置描述語(yǔ)言
- 腦梗死的護(hù)理查房
- 2025高考數(shù)學(xué)專項(xiàng)復(fù)習(xí):概率與統(tǒng)計(jì)的綜合應(yīng)用(十八大題型)含答案
- 產(chǎn)后抑郁癥講課課件
- 2024-2030年中國(guó)紫蘇市場(chǎng)深度局勢(shì)分析及未來(lái)5發(fā)展趨勢(shì)報(bào)告
- 銷售人員課件教學(xué)課件
- LED大屏技術(shù)方案(適用于簡(jiǎn)單的項(xiàng)目)
評(píng)論
0/150
提交評(píng)論