音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

張版主請看依你說的方式編的初步程序有否問題?

作者:wenlw 欄目:單片機(jī)
張版主請看依你說的方式編的初步程序有否問題?
這是我初步編的程序,還沒有進(jìn)行調(diào)試,請指正看那里還有問題,再次感謝了!
;******************************************************************
;
;                         try skin program
;
;                             designed by wenlw
;                                2005.01.18
;
;******************************************************************
;Variable setup
TMR0    EQU    1H
PCL     EQU    2H
STATUS  EQU    3H
FSR     EQU    4H
PORTA   EQU    5H
PORTB   EQU    6H
;fan level
fanlevel equ   8H    ;0:LEVEL1,1:LEVEL2,2:LEVEL3,記憶風(fēng)扇檔位
;delay time,將10ms的半波分為50個時間段,每段0.2ms
FAN1 equ 0  ;第一檔,0-63,驅(qū)動脈沖延遲時間等于fan1*0.2ms,以過零點(diǎn)為基準(zhǔn)點(diǎn)
FAN2 equ 0  ;第二檔,請?jiān)诖苏{(diào)整相位角
FAN3 equ 0  ;第三檔

;hot level
hotlevel equ 9H    ;0:OFF,1:LEVEL1,2:LEVEL2,3LEVEL3,記憶加熱檔位
;delay time,改變其值可調(diào)整相位角
HOT1 equ 0  ;第一檔
HOT2 equ 0  ;第二檔
HOT3 equ 0  ;第三檔

;LED助記符
LED EQU PORTB
LEDFAN1 EQU 1
LEDFAN2 EQU 2
LEDFAN3 EQU 3
LEDHOT1 EQU 4
LEDHOT2 EQU 5
LEDHOT3 EQU 6
LEDHOTOFF EQU 7

FKEYSTATE EQU 10H ;保存FANKEY輸入狀態(tài),0 NO INPUT,1 INPUT但未消抖,2已消抖等待按鍵釋放
HKEYSTATE EQU 11H ;保存HOTKEY輸入狀態(tài)
LOOPCOUNTER EQU 12H  ;循環(huán)指針
TEMP EQU 13H         ;臨時寄存器
MINU501 EQU 14H       ;5MIN計(jì)數(shù)器低字節(jié)
MINU502 EQU 15H       ;5MIN計(jì)數(shù)器高字節(jié)
DRVON EQU 16H       ;驅(qū)動開啟標(biāo)志

;KEY和驅(qū)動助記符
KEYFAN EQU 0
KEYHOT EQU 1
DRVFAN EQU 2
DRVHOT EQU 3
AC0 EQU 0

;C EQU 0
;DC EQU 1
;Z EQU 2



;******************************************************************
;program start
            org 000h

start:      NOP
            CALL   INIT
MAINLOOP:   CALL    pulsetest
            MOVF    DRVON,0
            BTFSC   STATUS,Z ;Z清除,DRVON開,執(zhí)行輸出程序
            GOTO    MN1       ;Z有效,DRVON關(guān),不執(zhí)行輸出程序
            CALL    FANSET
            CALL    HOTSET
MN1:        CALL    KEYSCAN
            GOTO    MAINLOOP
;******************************************************************
;            init program
init:        nop
;PORT SET
             MOVLW    b'00000001'   ;RB0 INPUT,RB1-RB7 OUTPUT
             TRIS     LED
             MOVLW    b'00001100'   ;RA0,RA1 INPUT,RA2,RA3 OUTPUT
             TRIS     PORTA

;SET ALL OUTPUT AS 0
             CLRF     PORTA
             MOVLW    0FFH
             IORWF    PORTB,1
;HOT OFF,FAN LEVLE1
             CLRF     FANLEVEL
             CLRF     HOTLEVEL
;TURN ON LED
             BSF      LED,LEDFAN1;First setup fan1,hot1 as hight
             BSF      LED,LEDHOT1

;SET TIMER USE PRESCALE,1:128,INTERAL,UPEDGE
;00000110
             MOVLW    6
             OPTION
             RETLW    0

;******************************************************************
;key scan
keyscan:     nop
             CLRF     TMR0
             MOVLW    40        ;5ms到了嗎?
             SUBWF    TMR0,
             BTFSS    STATUS,C  ;C有效,無借位。TMR0>W時間到,掃描按鍵
             GOTO     KEND       ;未到,結(jié)束
             MOVLW    2
             SUBWF    FKEYSTATE ;FANKEY在等待釋放嗎?
             BTFSC    STATUS,Z  ;Z清除,不相等。繼續(xù)執(zhí)行后續(xù)指令
             GOTO     FKP        ;是,執(zhí)行按鍵功能。
             MOVLW    2
             SUBWF    HKEYSTATE ;HOTKEY在等待釋放嗎?
             BTFSC    STATUS,Z  ;Z清除,不相等。繼續(xù)執(zhí)行后續(xù)指令
             GOTO  &
2樓: >>參與討論
XIEYUANBIN
如果不試,我也不知道好壞。
幾個簡單的問題:
第一,除ICD調(diào)試外,第1句不必是NOP,你現(xiàn)在每個子程序都有,更加不必。
第二,程序最后沒有結(jié)束符“END”,這將導(dǎo)致編譯錯誤。
第三,你的檔位查詢使用實(shí)際值做減法比較,這樣效率比較低,不如用查表的方法。
另外,你可以問經(jīng)銷商(比如北京集萬訊010-68716090)申請幾個16F54樣品先試燒,這樣就不用怕程序?qū)戝e。

其它錯誤沒時間看,你要試了才知道。
還有,現(xiàn)在張明峰版主因?yàn)榈絼e的公司高升,所以不再擔(dān)任這里的版主。
下次提問,請不要“直接尋址”,給其他網(wǎng)友一個機(jī)會。這也是張版主的一貫宗旨。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
有人用過lcd么
關(guān)于多個頻率采樣的問題?
急急,求助
大家?guī)兔纯催@個程序?yàn)楹卫鲜莵y跳?
我有一個問題想請教一下,急急,請斑主幫忙
免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號