|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
使用LPC932制作的一款電表---PulseParse |
| 作者:雁舞白沙 欄目:MCU技術(shù) |
#include <REG932.H> #include <define.h> #include <Stdio.h> #include <Intrins.h> //數(shù)據(jù)累加 void SumData(void) { //總電量累加 PulseData=PulseData+1; if(PulseData==16) { SumPulseData[0]=SumPulseData[0]+1; if(SumPulseData[0]==0x64) { SumPulseData[0]=0x00; SumPulseData[1]=SumPulseData[1]+1; if(SumPulseData[1]==0x64) { SumPulseData[1]=0x00; SumPulseData[2]=SumPulseData[2]+1; if(SumPulseData[2]==0x64) { SumPulseData[2]=0x00; SumPulseData[3]=SumPulseData[3]+1; if(SumPulseData[3]==0x64) { SumPulseData[0]=0x00; SumPulseData[1]=0x00; SumPulseData[2]=0x00; SumPulseData[3]=0x00; } } } } } //反向電量累加 if(ReverseFgToData) { if(PulseData==16) { ReversePulseData[0]=ReversePulseData[0]+1; if(ReversePulseData[0]==0x64) { ReversePulseData[0]=0x00; ReversePulseData[1]=ReversePulseData[1]+1; if(ReversePulseData[1]==0x64) { ReversePulseData[1]=0x00; ReversePulseData[2]=ReversePulseData[2]+1; if(ReversePulseData[2]==0x64) { ReversePulseData[2]=0x00; ReversePulseData[3]=ReversePulseData[3]+1; if(ReversePulseData[3]==0x64) { ReversePulseData[0]=0x00; ReversePulseData[1]=0x00; ReversePulseData[2]=0x00; ReversePulseData[3]=0x00; } } } } } } //峰電量累加 if(FengFg) { if(PulseData==16) { FengPulseData[0]=FengPulseData[0]+1; if(FengPulseData[0]==0x64) { FengPulseData[0]=0x00; FengPulseData[1]=FengPulseData[1]+1; if(ReversePulseData[1]==0x64)< |
| 2樓: | >>參與討論 |
| 作者: zemezemed 于 2005/3/28 11:46:00 發(fā)布:
電量脈沖是低電平觸發(fā)? 會不會重復(fù)計量? |
|
| 3樓: | >>參與討論 |
| 作者: 雁舞白沙 于 2005/3/28 23:10:00 發(fā)布:
不會的!如果您仔細(xì)閱讀程序的話,會發(fā)現(xiàn)有地方是自鎖的! |
|
| 4樓: | >>參與討論 |
| 作者: zemezemed 于 2005/4/4 16:02:00 發(fā)布:
為什么要用低電平觸發(fā)? 用下降沿不可以嗎? |
|
| 5樓: | >>參與討論 |
| 作者: zemezemed 于 2005/4/4 16:22:00 發(fā)布:
問題 if(SumBit) { SumData(); SumBit=0; } ReverseFgToData=0; ReverseFgToLcd=0; KBMASK=KBMASK|0x30; EKBI=1; SumBit是用來自鎖的嗎?低電平中斷子程序是怎么寫的? 采集正向反向電量的硬件是怎么接的,也不明白。 在ZLG網(wǎng)站上,電量小數(shù)的累計采用多區(qū)域的辦法,你這個是怎么處理的? |
|
| 6樓: | >>參與討論 |
| 作者: 雁舞白沙 于 2005/4/6 21:34:00 發(fā)布:
內(nèi)有中斷,外有查詢,等待改變后計數(shù)! |
|
| 7樓: | >>參與討論 |
| 作者: zemezemed 于 2005/4/7 16:18:00 發(fā)布:
用下跳沿觸發(fā),在中斷程序里置位標(biāo)志位行不? 老兄上面說的,我不明白是什么意思,希望能詳細(xì)點 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入 |
Copyright © 1998-2006 www.udpf.com.cn 浙ICP證030469號 |