Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 4184|回復: 2

按鍵掃瞄 (vb

[複製鏈接]
發表於 2010-3-16 15:41:33 | 顯示全部樓層 |閱讀模式
因為我對vb比較不會,所以請各位大大幫我一下!

我按下按鍵的時候馬達會執行前進後退,我放開的時候他就會停止
我使用的是伺服馬達,所以每次就算我放手了,他還是會執行一陣子

        JB  K1,X1      
                    
        CALL GO_FOR    ;我有想過在這裡寫個無限迴圈
                                  ;我試了很多次還是不行,請各位大大邦一下
        JMP LOOP
        JNB K1,$                 ;把這個改放到這哩,我用普通開關的時候是正常的
                                   可是當我改用無線模組的時候,他會一直執行這程式停不下來
---------------------以下程式----------------------------------

DEA        EQU  3
DEB        EQU 25
TS        EQU 1
;----------------------------
K1        EQU P1.0
K2        EQU P1.1

PUL        EQU P1.7
PUR        EQU P1.6
;------------------------------------
START:
        CLR PUL
        CLR PUR

LOOP:
        JB  K1,X1                           
        JNB K1,$                       
        CALL GO_FOR
        JMP LOOP
X1:               
               JB  K2,X2
        JNB K2,$
        CALL GO_BACK
        JMP LOOP


X2:
        JMP LOOP

;-----------------------------------------
; DELAY R5*10 ms
DELAY:
        MOV R6,#50
D1:        MOV R7,#100
        DJNZ R7,$
        DJNZ R6,D1
        DJNZ R5,DELAY
        RET
;--------------------------------


PU_BACK: SETB PUL
        MOV R4,#DEA
A1:        CALL DEL
        DJNZ R4,A1
        CLR PUL

        MOV R4,#(200-DEA)
A2:        CALL DEL
        DJNZ R4,A2
        RET
;----------------------------
PU_FOR: SETB PUL
        MOV R4,#DEB
B1:        CALL DEL
        DJNZ R4,B1
        CLR PUL

        MOV R4,#(200-DEB)
B2:        CALL DEL
        DJNZ R4,B2
        RET

;-------------------------
; DELAY R5*0.1 ms
DEL:
        MOV R5,#1
DELAY1:
        MOV R6,#2
F1:        MOV R7,#17
        DJNZ R7,$
        DJNZ R6,F1
        DJNZ R5,DELAY1
        RET
;-------------------------------------------------------
PUR_BACK: SETB PUR
        MOV R4,#DEA
G1:        CALL DEL
        DJNZ R4,G1
        CLR PUR

        MOV R4,#(200-DEA)
G2:        CALL DEL
        DJNZ R4,G2
        RET
;----------------------------
PUR_FOR: SETB PUR
        MOV R4,#DEB
H1:        CALL DEL
        DJNZ R4,H1
        CLR PUR

        MOV R4,#(200-DEB)
H2:        CALL DEL
        DJNZ R4,H2
        RET

;-************************************************************
GO_FOR:
        MOV R3,#TS
J1:        CALL PU_FOR
        CALL PUR_BACK
        DJNZ R3,J1
        RET
;---------------------------
GO_BACK:
        MOV R3,#TS
S1:        CALL PU_BACK
        CALL PUR_FOR
        DJNZ R3,S1
        RET
;---------------------------

        END
發表於 2010-3-18 07:48:20 | 顯示全部樓層
回復 1# owce

owce~~~
問題描述不夠清楚,而且標題跟vb有關但問題內沒有vb相關描述,
另外使用的是51的組語,引用出處也最好說明一下~~~
可以的話把功能方塊放上來討論,初步看來您用的是改過的會一直轉的伺服機,
duty cycle都是20ms
前進的pwm hi的時間為0.3ms,
後退的pwm hi的時間為2.5ms,
猜想是不是用vb透過rs232到發射板,發射信號給車子接收後,控制車子的伺服機作動~~~~
問題是什麼呢~~要改進遙控反應特性,還是特殊的動作編排呢??
發表於 2010-4-17 11:42:07 | 顯示全部樓層
大家問問題...怎麼都問一半就會斷掉-.-!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-3-29 09:40 , Processed in 0.194111 second(s), 7 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表