全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1997
推到 Plurk!
推到 Facebook!

請問直流馬達正反轉程式碼轉換

缺席
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-16 11:56:20 IP:61.30.xxx.xxx 未訂閱
1我想問我寫的EM78P156程式轉換問題用12C508A燒錄還是用12C509A好呢? 2這個是裝入手錶內控制微型振動馬達正反運轉時間 3控制時間1分鐘3分鐘後馬達停止 ,, 也可以控制正反轉 , 按一下如附程式一樣問題 ,, 按一下可以控制馬達正反轉變 , 2分鐘內變化正反轉方向 , 便停止 4你們應該看程式便知道我意思 , 不過我想說如上述功能簡化而已 5 你說零件我要找找看 , 不一定恰好有或者離幾個編料號 , 謝謝你感謝你 6({版主大大請幫忙我貼圖 ,, 已經寄到你信箱了謝謝你}) 俊秀
------
俊秀

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-16 12:17:24 IP:59.113.xxx.xxx 未訂閱
在下有個疑問ㄟ... 您怎麼會跟會員JOHNNY7,問這麼類似的問題呢? 不同的是,他問細部且分開來問.您是一次問齊...    重申,CPU不同語法不同,I/O也不一樣程式必須重寫! 至於要用508A好還是509A要看你的須求,基本上這兩個很近似    
12C508A:
Program Memory Size (bytes)   768
RAM Size (bytes)               25     12C509A
Program Memory Size (bytes)  1536 
RAM Size (bytes)               41     
只有差在程式記憶體與RAM,看你的須求,不須要太大的話508A就行了
==================================== 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ====================================
發表人 - ㊣ 於 2005/04/16 12:35:55
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-16 14:03:45 IP:61.30.xxx.xxx 未訂閱
我跟她JOHNNY7不認識 , 我只是恰好看到她討論 , 而想到我3年前做的成品吧! 圖在版主信箱M 俊秀
------
俊秀
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-04-16 14:14:06 IP:61.30.xxx.xxx 未訂閱
圖在MYMJ信箱 , 正版主你信箱帳號多少 , {正}版主哪如果用PIC16C505也可以囉 ! 如上述討論功能簡略 , 不過我不會PIC程式碼 ! 寄圖給正 俊秀
------
俊秀

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-04-16 14:15:51 IP:59.113.xxx.xxx 未訂閱
引言: 圖在MYMJ信箱 , 正版主你信箱帳號多少 , {正}版主哪如果用PIC16C505也可以囉 ! 如上述討論功能簡略 , 不過我不會PIC程式碼 ! 寄圖給正 俊秀
PIC16C505也可以 你寄這一個吧 q934@ms9.url.com.tw
==================================== 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ====================================
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-04-16 14:25:34 IP:61.30.xxx.xxx 未訂閱
圖跟程式已經寄到正板主信箱 , 請幫忙轉jpg圖襠 俊秀
------
俊秀

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-04-16 14:26:36 IP:59.113.xxx.xxx 未訂閱
PIC程式碼不會可以學.datasheet裡都有支援的指令說明. 這裡會的人相信應該不少,不懂或有問題再來這裡問. 直接要求程式碼,那你去招標委外case會比較快.這邊po大概沒有人會理你        
==================================== 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ====================================
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-04-16 14:41:36 IP:59.113.xxx.xxx 未訂閱
幫貼圖 To 樂天派: 程式碼自己貼吧!敝人只會解"部分"問題,轉碼不會. Coding更差...
==================================== 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ====================================
    PRODUCT      : MOTOR.DT
;
;FUNTION      : AUTO MODE & MENUAL MODE
;               IF SCAN POWER_ON 0.3S KEYIN GOTO REAL_MODE TIMEING SET 1~15 MIN,
;               IF SCAN POWER_ON 0.3S NO_KEYIN GOTO CONTROL_MODE TIMEING SET 1~4 MIN,
;               KEY_RUN AUTO_RUN
;               KEY_TIME MOTOR_OFF TIME SETUP
;               KEY_MFF MENU_MOTOR FF
;               KEY_MREEW MENU_MOTOR REW
;
;
;ROCESSOR     : EM78P156N
;                                                                    
;WRITRN BY    : W.F.CHIU
;
;DATA         : 93/8/10
;
;CHECKSUM     : BADC
;
;CRYSTAL      : 4MHZ
;
;CodeOption   : OSCILLATOR      C       R:RC            C:CRYSTAL
;               WATCHDOG        E       E:ENABLE        D:DISABLE
;               CLOCK           4       2:2CLOCK        4:4CLOCK
;               PROTECT         E       E:ENABLE        D:DISABLE
;               FREQUENCY       H       L:LOW           H:HIGH
;               POWER           H       L:LOW           H:HIGH
;----------------------------------------------------------------------
;System Specific Register definition
;----------------------------------------------------------------------
INDIRCT         ==      0X00    ;INDIRCT REGISTER
TCC             ==      0X01    ;TIMEER/COUNT
PC              ==      0X02    ;PROGRAM COUNT
PSW             ==      0X03    ;PROGRAM STATUS WODR
RSR             ==      0X04    ;REGISTER SELECT_REGISTER
PORT5           ==      0X05    ;I/O PORT5 REGISTER
PORT6           ==      0X06    ;I/O PORT6 REGISTER
IOCB            ==      0X0B    ;PULL-DOWN CONTROL REGISTER
IOCC            ==      0X0C    ;OPEN-DRAIN CONTROL REGISTER
IOCD            ==      0X0D    ;PULL-HIGH CONTROL REGISTER
IOCE            ==      0X0E    ;WDT CONTROL REGISTER
IOCF            ==      0X0F    ;INTERRUPT MASK REGISTER
ISR             ==      0X0F    ;INTERRUPT FLAG
;----------------------------------------------------------------------
;PSW(STATUS REGISTER) bit definition
;----------------------------------------------------------------------
C               ==      0X0     ;CARRY/BORROW FLAG
DC              ==      0X1     ;AUXILIARY CARRY/BORROW FLAG
Z               ==      0X2     ;ZERO FLAG
PD              ==      0X3     ;POWER DOWN FLAG
TO              ==      0X4     ;TIME OUT FLAG
PA0             ==      0X5     ;ROM PAGE 1
PA1             ==      0X6     ;ROM PAGE 2
;----------------------------------------------------------------------
;PORT5 bit definition
;----------------------------------------------------------------------
MREW            ==      0X0     ;
MFF             ==      0X1     ;
LED_RUN         ==      0X2     ;
LED_STOP        ==      0X3     ;
;----------------------------------------------------------------------
;PORT6 bit definition
;----------------------------------------------------------------------
LED_MIN1        ==      0X0     ;
LED_MIN2        ==      0X1     ;
LED_MIN3        ==      0X2     ;
LED_MIN4        ==      0X3     ;
SW_TIME         ==      0X4     ;
SW_RUN          ==      0X5     ;
SW_MREW         ==      0X6     ;
SW_MFF          ==      0X7     ;
;----------------------------------------------------------------------
;ISR bit definition
;----------------------------------------------------------------------
TCIF            ==      0X0     ;TCC INTERRUPT FLAG 1=ACT
ICIF            ==      0X1     ;I/O CHANGE INTERRUPT FLAG 1=ACT
EXIF            ==      0X2     ;EXI/O INTERRUPT FLAG 1=ACT
;----------------------------------------------------------------------
;CONT bit definition
;----------------------------------------------------------------------
PSRO            ==      0X0     ;PRESCALER BITO
PSR1            ==      0X1     ;PRESCALER BIT1
PSR2            ==      0X2     ;PRESCALER BIT2
PAB             ==      0X3     ;PRESCALER 0=TCC 1=WDT
TE              ==      0X4     ;0=LOW↑HI , 1=HI↓LOW
TS              ==      0X5     ;TCC SIGN SELECT 0=SYS_CLK P54=I/O ,1=EXT_TCC_IN
INTE            ==      0X6     ;INT ENABLE MARK BIT 1=ENABLE ,0=DISABLE
;----------------------------------------------------------------------
;IOCD (PULL_HIGH CTRL) bit definition
;----------------------------------------------------------------------
PH0             ==      0X0     ;P60 0=ENABLE , 1=DISABLE
PH1             ==      0X1     ;P61 0=ENABLE , 1=DISABLE
PH2             ==      0X2     ;P62 0=ENABLE , 1=DISABLE
PH3             ==      0X3     ;P63 0=ENABLE , 1=DISABLE
PH4             ==      0X4     ;P64 0=ENABLE , 1=DISABLE
PH5             ==      0X5     ;P65 0=ENABLE , 1=DISABLE
PH6             ==      0X6     ;P66 0=ENABLE , 1=DISABLE
PH7             ==      0X7     ;P67 0=ENABLE , 1=DISABLE
;----------------------------------------------------------------------
;IOCE (WDT CTRL) bit definition
;----------------------------------------------------------------------
ROC             ==      0X4     ;1=ENABLE , 0=DISABLE
EIS             ==      0X6     ;P60 FUN_SELECT 0=IO , 1=/INT
WDTE            ==      0X7     ;1=ENABLE WDT, 0=DISABLE WDT
;----------------------------------------------------------------------
;IOCF bit definition
;----------------------------------------------------------------------
TCIE            ==      0X0     ;TCC INTERRUPT MARK 1=ENABLE 0=DISABLE
ICIE            ==      0X1     ;I/O CHANGE INTERRUPT MARK 1=ENABLE 0=DISABLE
EXIE            ==      0X2     ;EXI/O INTERRUPT MARK 1=ENABLE 0=DISABLE
;----------------------------------------------------------------------
;System General Register definition
;----------------------------------------------------------------------
STATUSFG        ==      0X10    ;SYSTEM STATUS_FLAG
A_BUF           ==      0X12    ;SAVE A_VALUE
PSW_BUF         ==      0X13    ;SWVE PSW_VALUE
TIME_CNT        ==      0X14    ;
MIN_CNT         ==      0X15    ;
MIN_BUF         ==      0X16    ;
SEC_CNT         ==      0X17    ;
DLY_CNT0        ==      0X19    ;FOR DELAY_PRG
DLY_CNT1        ==      0X1A    ;FOR DELAY_PRG
DLY_CNT2        ==      0X1B    ;FOR DELAY_PRG
TCC_CNT0        ==      0X1C    ;FOR TCC_INT_PRG
TCC_CNT1        ==      0X1D    ;FOR TCC_INT_PRG
TCC_CNT2        ==      0X1E    ;FOR TCC_INT_PRG
SET_TIME_BUF    ==      0X1F    ;
;----------------------------------------------------------------------
PORT6_BUF       ==      0X20    ;
;----------------------------------------------------------------------
;STATUSFG bit definition
;----------------------------------------------------------------------
CTRL_F          ==      0X0     ;0=CTRL_ON 1=CTRL_OFF
MODE_F          ==      0X1     ;1=AUTO 0=MENU
RUN_F           ==      0X2     ;1=ON 0=OFF
MFF_F           ==      0X3     ;1=ON 0=OFF
MREW_F          ==      0X4     ;1=ON 0=OFF
;----------------------------------------------------------------------
;SYSTEM_K definition
;----------------------------------------------------------------------
MIN1_K          ==      0D1     ;1MIN
MIN2_K          ==      0D2     ;2MIN
MIN3_K          ==      0D3     ;3MIN
MIN4_K          ==      0D4     ;5MIN
LED_FLASH_K     ==      0D5     ;5SEC
;================================================================================
;================================================================================
                ORG     0X0                     ;POWER_ON RESET ADDRESS
                JMP     START                   ;
                ORG     0X08                    ;INTERRUPT ADDRESS
                ORG     0X10                    ;PROGRAM ROM START ADDRESS
;================================================================================
AUTO_TIME_TABL:                                 ;
                ADD     PC,A                    ;
                RETL    0D1                     ;0
                RETL    0D2                     ;1
                RETL    0D3                     ;2
                RETL    0D4                     ;3
;================================================================================
TIME_TABL:                                      ;
                ADD     PC,A                    ;
                RETL    0D15                    ;0000
                RETL    0D7                     ;0001
                RETL    0D11                    ;0010
                RETL    0D3                     ;0011
                RETL    0D13                    ;0100
                RETL    0D5                     ;0101
                RETL    0D9                     ;0110
                RETL    0D1                     ;0111
                RETL    0D14                    ;1000
                RETL    0D6                     ;1001
                RETL    0D10                    ;1010
                RETL    0D2                     ;1011
                RETL    0D12                    ;1100
                RETL    0D4                     ;1101
                RETL    0D8                     ;1110
;================================================================================
;================================================================================
;DELAY PROGRAM
;================================================================================
DLY_01S:                                        ;100MS*1
                MOV     A,@0D1                  ;
DLY_01X:                                        ;100MS*X
                MOV     DLY_CNT0,A              ;
;----------------------------------------------------------------------
DLY_LP0:                                        ;
                MOV     A,@0D100                ;1MS*100=100MS
                MOV     DLY_CNT1,A              ;
;----------------------------------------------------------------------
DLY_LP1:                                        ;
                MOV     A,@0D250                ;4US*250=1MS
                MOV     DLY_CNT2,A              ;
;----------------------------------------------------------------------
DLY_LP2:                                        ;
                WDTC                            ;1US
                DJZ     DLY_CNT2                ;1US
                JMP     DLY_LP2                 ;1US
                DJZ     DLY_CNT1                ;1US
                JMP     DLY_LP1                 ;1US
                DJZ     DLY_CNT0                ;1US
                JMP     DLY_LP0                 ;1US
                RETL    0X0                     ;2US
;================================================================================
SCAN_SW:
                WDTC                            ;1US
                JBS     PORT6,SW_RUN            ;
                JMP     RUN_PRG                 ;
                JBS     PORT6,SW_TIME           ;
                JMP     SET_TIME_PRG            ;
                JBS     PORT6,SW_MFF            ;
                JMP     MFF_PRG                 ;
                JBS     PORT6,SW_MREW           ;
                JMP     MREW_PRG                ;
                RETL    0X0                     ;
;----------------------------------------------------------------------
RUN_PRG:                                        ;
                JBC     STATUSFG,MFF_F          ;
                RETL    0X0                     ;
                JBC     STATUSFG,MREW_F         ;
                RETL    0X0                     ;
                BS      STATUSFG,RUN_F          ;
                BS      STATUSFG,MODE_F         ;SET AUTO MODE
                RETL    0X0                     ;
;----------------------------------------------------------------------
SET_TIME_PRG:                                   ;
                BC      STATUSFG,MODE_F         ;
                BC      STATUSFG,MFF_F          ;
                BC      STATUSFG,MREW_F         ;
                CALL    OFF_ALLLED              ;
                BS      PORT5,LED_STOP          ;
                JBS     STATUSFG,RUN_F          ;
                JMP     SETUP_TIME_SPRG0        ;
                CLR     SET_TIME_BUF            ;
                JMP     SETUP_TIME_SPRG1        ;
;----------------------------------------------------------------------
SETUP_TIME_SPRG0:                               ;
                INC     SET_TIME_BUF            ;
                JBC     SET_TIME_BUF,2          ;
                CLR     SET_TIME_BUF            ;
;----------------------------------------------------------------------
SETUP_TIME_SPRG1:                               ;
                JBC     SET_TIME_BUF,1          ;
                JMP     SET_TIME_LP0            ;
                JBS     SET_TIME_BUF,0          ;
                BS      PORT6,LED_MIN1          ;
                JBC     SET_TIME_BUF,0          ;
                BS      PORT6,LED_MIN2          ;
                JMP     CHK_OPEN_SW_TIME        ;
;----------------------------------------------------------------------
SET_TIME_LP0:                                   ;
                JBS     SET_TIME_BUF,0          ;
                BS      PORT6,LED_MIN3          ;
                JBC     SET_TIME_BUF,0          ;
                BS      PORT6,LED_MIN4          ;
                JMP     CHK_OPEN_SW_TIME        ;
;----------------------------------------------------------------------
CHK_OPEN_SW_TIME:                               ;
                BC      STATUSFG,RUN_F          ;
                CALL    DLY_01S                 ;
                JBS     PORT6,SW_TIME           ;
                JMP     CHK_OPEN_SW_TIME        ;
                RETL    0X0                     ;
;----------------------------------------------------------------------
MFF_PRG:                                        ;
                JBC     STATUSFG,MODE_F         ;CHK MENU MODE
                RETL    0X0                     ;
                BS      STATUSFG,RUN_F          ;
                BC      STATUSFG,MODE_F         ;
                BS      STATUSFG,MFF_F          ;
                BC      STATUSFG,MREW_F         ;
                RETL    0X0                     ;
;----------------------------------------------------------------------
MREW_PRG:                                       ;
                JBC     STATUSFG,MODE_F         ;CHK MENU MODE
                RETL    0X0                     ;
                BS      STATUSFG,RUN_F          ;
                BC      STATUSFG,MODE_F         ;
                BC      STATUSFG,MFF_F          ;
                BS      STATUSFG,MREW_F         ;
                RETL    0X0                     ;
;================================================================================
OFF_ALLLED:
                CLR     PORT5                   ;
                CLR     PORT6                   ;
                RETL    0X0                     ;
;================================================================================
;SYSTEM INIT_PRG
;================================================================================
INIT:                                           ;
                WDTC                            ;
                DISI                            ;
                MOV     A,@0B00001111           ;PRESCALER FOR WTD
                CONTW                           ;
                MOV     A,@0B00001111           ;P64~P67 PULL HIGH
                IOW     IOCD                    ;
                MOV     A,@0B10000000           ;ENABLE WTD
                IOW     IOCE                    ;
                MOV     A,@0B00000000           ;interrupt DISABLE
                IOW     IOCF                    ;
                MOV     A,@0B11110000           ;SET PPRT5=OUTPUT FOR LED
                IOW     PORT5                   ;
                MOV     PORT5,A                 ;CLR LED
                MOV     A,@0B11110000           ;
                IOW     PORT6                   ;
                MOV     PORT6,A                 ;POWER ON LATCH
                CLR     TCC                     ;
                CLR     ISR                     ;
                RETL    0X0                     ;
;================================================================================
;================================================================================
;PROGRAM START
;================================================================================
;================================================================================
START:                                          ;
                CALL    INIT                    ;SYSTEM INIT
                CLR     STATUSFG                ;
                MOV     A,@0D3                  ;
                MOV     TIME_CNT,A              ;
OPEN_TEST:                                      ;POWER_ON CHECK MODE
                CALL    DLY_01S                 ;
                JBS     PORT6,SW_MFF            ;
                BS      STATUSFG,CTRL_F         ;
                JBS     PORT6,SW_MREW           ;
                BS      STATUSFG,CTRL_F         ;
                JBS     PORT6,SW_TIME           ;
                BS      STATUSFG,CTRL_F         ;
                JBS     PORT6,SW_RUN            ;
                BS      STATUSFG,CTRL_F         ;
                DJZ     TIME_CNT                ;
                JMP     OPEN_TEST               ;
                JBS     STATUSFG,CTRL_F         ;
                JMP     CONTROL_PRG             ;
;================================================================================
;================================================================================
REAL_PRG:                                       ;
                MOV     A,PORT6                 ;READ I/0 SETUP TIME
                MOV     PORT6_BUF,A             ;
                CALL    OFF_ALLLED              ;CLR I/O
                SWAP    PORT6_BUF               ;
                MOV     A,@0B00001111           ;
                AND     PORT6_BUF,A             ;
                JBC     PSW,Z                   ;
                JMP     CONTROL_PRG             ;
                MOV     A,PORT6_BUF             ;
                CALL    TIME_TABL               ;
                MOV     SET_TIME_BUF,A          ;
                BS      PORT5,MREW              ;
                BC      PORT5,MFF               ;
;----------------------------------------------------------------------
CHANGE_IO:                                      ;
                MOV     A,SET_TIME_BUF          ;UPDATE MIN_CNT
                MOV     MIN_CNT,A               ;
                MOV     A,@0B00000011           ;CHANGE I/O
                XOR     PORT5,A                 ;
SET_TIME_LP:                                    ;
                MOV     A,@0D60                 ;SETUP 60S'
                MOV     SEC_CNT,A               ;
MIN_LP:                                         ;
                BS      PORT5,LED_RUN           ;
                MOV     A,@0D5                  ;
                CALL    DLY_01X                 ;
                BC      PORT5,LED_RUN           ;
                MOV     A,@0D5                  ;
                CALL    DLY_01X                 ;
                DJZ     SEC_CNT                 ;
                JMP     MIN_LP                  ;
                DJZ     MIN_CNT                 ;
                JMP     SET_TIME_LP             ;
                JMP     CHANGE_IO               ;
;================================================================================
;================================================================================
CONTROL_PRG:                                    ;
                CLR     STATUSFG                ;
                CLR     SET_TIME_BUF            ;
                CALL    OFF_ALLLED              ;
                BS      PORT6,LED_MIN1          ;
MAIN:
                BS      PORT5,LED_STOP          ;
                CALL    DLY_01S                 :
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     MAIN                    ;
                JBS     STATUSFG,MODE_F         ;
                JMP     MENU_PRG                ;
                JMP     AUTO_PRG                ;
;----------------------------------------------------------------------
MENU_PRG:
                JBS     STATUSFG,MFF_F          ;
                JMP     MOTOR_REW_PRG           :
MOTOR_FF_PRG:                                   ;
                CALL    OFF_ALLLED              ;
                BC      PORT5,MREW              ;
                BS      PORT5,MFF               ;
                MOV     A,@0D5                  ;
                MOV     TIME_CNT,A              ;
                BS      PORT5,LED_RUN           ;
MOTOR_FF_LP0:
                CALL    DLY_01S                 ;
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     CONTROL_PRG             ;
                JBC     STATUSFG,MREW_F         ;
                JMP     MOTOR_REW_PRG           ;
                DJZ     TIME_CNT                ;
                JMP     MOTOR_FF_LP0            ;
                MOV     A,@0D5                  ;
                MOV     TIME_CNT,A              ;
                BC      PORT5,LED_RUN           ;
MOTOR_FF_LP1:
                CALL    DLY_01S                 ;
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     CONTROL_PRG             ;
                JBC     STATUSFG,MREW_F         ;
                JMP     MOTOR_REW_PRG           ;
                DJZ     TIME_CNT                ;
                JMP     MOTOR_FF_LP1            ;
                JMP     MOTOR_FF_PRG            ;
;----------------------------------------------------------------------
MOTOR_REW_PRG:                                  ;
                CALL    OFF_ALLLED              ;
                BS      PORT5,MREW              ;
                BC      PORT5,MFF               ;
                MOV     A,@0D5                  ;
                MOV     TIME_CNT,A              ;
                BS      PORT5,LED_RUN           ;
MOTOR_REW_LP0:
                CALL    DLY_01S                 ;
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     CONTROL_PRG             ;
                JBC     STATUSFG,MFF_F          ;
                JMP     MOTOR_FF_PRG            ;
                DJZ     TIME_CNT                ;
                JMP     MOTOR_REW_LP0           ;
                MOV     A,@0D5                  ;
                MOV     TIME_CNT,A              ;
                BC      PORT5,LED_RUN           ;
MOTOR_REW_LP1:
                CALL    DLY_01S                 ;
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     CONTROL_PRG             ;
                JBC     STATUSFG,MFF_F          ;
                JMP     MOTOR_FF_PRG            ;
                DJZ     TIME_CNT                ;
                JMP     MOTOR_REW_LP1           ;
                JMP     MOTOR_REW_PRG           ;
;----------------------------------------------------------------------
AUTO_PRG:
                BS      PORT5,MREW              ;
                BC      PORT5,MFF               ;
;----------------------------------------------------------------------
AUTO_CHANGE_IO:                                 ;
                BC      PORT5,LED_STOP          ;
                MOV     A,SET_TIME_BUF          ;UPDATE MIN_CNT
                CALL    AUTO_TIME_TABL          ;
                MOV     MIN_CNT,A               ;
                MOV     A,@0B00000011           ;CHANGE I/O
                XOR     PORT5,A                 ;
SEC_60S_LP:                                     ;
                MOV     A,@0D60                 ;SETUP 60S'
                MOV     SEC_CNT,A               ;
HSEC_LP0:                                       ;
                BS      PORT5,LED_RUN           ;
                MOV     A,@0D5                  ;
                MOV     TIME_CNT,A              ;
HSEC_LP1:                                       ;
                CALL    DLY_01S                 ;
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     CONTROL_PRG             ;
                DJZ     TIME_CNT                ;
                JMP     HSEC_LP1                ;
                BC      PORT5,LED_RUN           ;
                MOV     A,@0D5                  ;
                MOV     TIME_CNT,A              ;
HSEC_LP2:                                       ;
                CALL    DLY_01S                 ;
                CALL    SCAN_SW                 ;
                JBS     STATUSFG,RUN_F          ;
                JMP     CONTROL_PRG             ;
                DJZ     TIME_CNT                ;
                JMP     HSEC_LP2                ;
                DJZ     SEC_CNT                 ;
                JMP     HSEC_LP0                ;
                DJZ     MIN_CNT                 ;
                JMP     SEC_60S_LP              ;
                JMP     AUTO_CHANGE_IO          ;
;----------------------------------------------------------------------
                END
發表人 - mymj 於 2005/04/17 00:41:35
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-04-16 17:51:45 IP:61.30.xxx.xxx 未訂閱
我之前聽mymj大大所提建議病人通訊警報手錶 ,,這要用PIC16F84A這顆來燒錄程式碼 ,, 程式碼已經寫好了不過不熟悉運作方式 ,, 也限於PIC16F84A這顆太大了 ,, 無法裝入小手錶內 俊秀
------
俊秀

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-04-16 18:05:12 IP:59.113.xxx.xxx 未訂閱
引言: 我之前聽mymj大大所提建議病人通訊警報手錶 ,,這要用PIC16F84A這顆來燒錄程式碼 ,, 程式碼已經寫好了不過不熟悉運作方式 ,, 也限於PIC16F84A這顆太大了 ,, 無法裝入小手錶內 俊秀
PIC16F84A這顆會寫,其他的就會寫.都很相近. 稍微看一下就好了.燒錄就要上microchip查看看可透過那些方式 如果你是公司可找microchip support給你 個人只有買囉...或是去學校用
==================================== 生命的目的,在幻化出多采多姿的組合。 生活的意義,在捕捉住稍縱即逝的感動。 ====================================
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#11 引用回覆 回覆 發表時間:2005-04-17 10:58:27 IP:61.30.xxx.xxx 未訂閱
mymj版主說這程式碼可以轉PIC程式碼 , 如何轉碼直接燒錄到16c505 ,{{我對PIC程式碼不了解不知道如何寫修改}}, 可否教授我修改程式貼圖討論修改 , 這樣應該就可以直接燒錄到16c505 , 不用從新寫PIC程式 俊秀
------
俊秀
樂天派
一般會員


發表:10
回覆:26
積分:7
註冊:2005-04-12

發送簡訊給我
#12 引用回覆 回覆 發表時間:2005-04-20 20:43:34 IP:61.30.xxx.xxx 未訂閱
這程式應該有反組譯程式嗎吧 ! 我想改寫成PIC16C505< >< > 俊秀
------
俊秀

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#13 引用回覆 回覆 發表時間:2005-04-22 07:57:38 IP:59.113.xxx.xxx 未訂閱
你還須要反組譯程式嗎?這已經是程式最原始的型式了.    你說這是你的作品,那你應該很了解原理.看一下PIC16C505的Datasheet 熟悉一下指令,寫這個根本不用3天.保守一點,一星期就ok. 我看過你的檔案的詳細資料了,這真的是你的作品嗎< >< > 真要我說出來嗎?
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
系統時間:2024-05-04 8:57:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!