• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users






Re: 關於12f629 GPIO3定義之問題
#9
資深會員
資深會員


查看用戶資訊
; list directive to define processor
    
list p=12f629 
processor specific variable definitions
    
#include <p12f629.inc> 

    
__CONFIG _CP_OFF _MCLRE_OFF _WDT_OFF _INTRC_OSC_NOCLKOUT _BODEN_OFF _CPD_OFF &_PWRTE_OFF

    
#DEFINE    LED     GPIO,0    
    #DEFINE LED_IO    TRISIO,0
    #DEFINE    LED1     GPIO,1    
    #DEFINE LED_IO_1    TRISIO,1
    #DEFINE    LED2     GPIO,2
    #DEFINE LED_IO_2    TRISIO,2
    #DEFINE    LED3     GPIO,3    
    #DEFINE LED_IO_3    TRISIO,3
    #DEFINE    LED4     GPIO,4    
    #DEFINE LED_IO_4    TRISIO,4
    #DEFINE    LED5     GPIO,5    
    #DEFINE LED_IO_5    TRISIO,5

CNT0    EQU     20H
CNT1    EQU     21H
CNT2    EQU     22H
XX        EQU  0X23
;---------------------------------
    
ORG     0000H

    MOVLW 07H    
    MOVWF CMCON     
TURN-OFF analog comparator 

    BSF     STATUS
,RP0    select bank 1
    CALL    3FFH        
Load cal value
    MOVWF    OSCCAL
    CLRF    TRISIO        
GPIO 3  一定 是  INPUT ( [color=CC0000]要加 上拉 or 下拉電阻  <1K ~  100K> [/color])
    
BCF     STATUS,RP0    select bank 0

    CLRF    GPIO

LOOP1
:    
    
btfsc GPIO,3
    
GOTO    START ;IF GP3=5V GOTO START
    
GOTO    LOOP1

START
:    
    
MOVLW        .10
    CALL        DELAY_XX    
DELAY   5 Sec
    BSF     LED     
;LED 亮 開電源
    MOVLW        .10
    CALL        DELAY_XX    
DELAY   5 Sec
    BCF     LED     
;LED 滅

    MOVLW    3
    CALL    DELAY_XX
    BSF     LED1     
;LED 亮 向左
    MOVLW    2
    CALL    DELAY_XX
    BCF     LED1     
;LED 滅

    CALL DELAY1SEC
    BSF     LED2     
;LED 亮 按進入錄製
    CALL    DELAY
    BCF     LED2     
;LED 滅
    MOVLW    6
    CALL    DELAY_XX
    BSF     LED2     
;LED 亮 開使錄制
    CALL    DELAY
    BCF     LED2     
;LED 滅

LOOP2
:    
    
btfsc GPIO,3
    
GOTO    LOOP2 ;IF GP3=5V GOTO LOOP1
SHUTDOWN
:
    
BCF     LED     ;LED滅 IF GP3=0V GOTO SHUTDOWN
    BSF     LED     
;LED亮 
    MOVLW        .10
    CALL        DELAY_XX    
DELAY   5 Sec
    BCF     LED     
;LED滅    
    
GOTO    START
;---------------------------------
DELAY 0.5 SECONDS ROUTINE
;--------------------------------- 
DELAY:    
    
MOVLW    7
    MOVWF    CNT2
    CLRF    CNT1
DELAY_01
:
    
MOVLW    0X5B
    MOVWF    CNT0
DELAY_02
:
    
DECFSZ    CNT0 F
    
GOTO    $ - 1
    DECFSZ    CNT1 
F
    
GOTO    $ - 5           ;  DELAY_01
    DECFSZ    CNT2 
F
    
GOTO    $ - 5           ;  DELAY_02

    MOVLW    0XD4
    MOVWF    CNT0
    DECFSZ    CNT0 
F
    
GOTO    $ - 1
    NOP
    
RETURN
DELAY_XX:        ;  [color=CC0000]  DELAY  W  *  0.5 Sec[/color]
    
MOVWF    XX
    CALL    DELAY
    DECFSZ    XX 
F
    
GOTO    $ - 2
    
RETURN

DELAY1SEC:
    
CALL DELAY
    CALL DELAY
    
RETURN 

    
END

發表於: 2009/7/26 20:00
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#8
資深會員
資深會員


查看用戶資訊
去看 datasheet figure 3-3 gpio 3 的架構

發表於: 2009/7/24 19:36
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#7
新會員
新會員


查看用戶資訊
再補充一下,因來源的信號不是5v就是空接

發表於: 2009/7/24 17:29
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#6
新會員
新會員


查看用戶資訊
參照:

Ryang 寫道:
"我的疑問是 空接不是等於0V嗎"

問你一下 CMOS 的輸入不接時應判定何種準位電壓? 有聽過 CMOS 輸入端可以浮接嗎? 這是基本觀念,需要怒清楚的。


感謝您的指教,是否方便給我詳細一點的說明呢,因為我是個初學者,觀念不清楚才會上來希望大家指教

gpio3浮接時對應位準是high嗎,那如何去讀無訊號時的位準,是一定要透過電路還是透過程式本身即可達成呢?

發表於: 2009/7/24 17:27
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#5
新會員
新會員


查看用戶資訊
參照:

hellowanz 寫道:
1.空接不等於0V
2.你需要在GPIO3接一個Pull Low電阻。


我有試過接gpio3接一個110歐母的電阻至接地,不過也是沒用,會不會是Pull Low值太大

發表於: 2009/7/24 17:17
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#4
資深會員
資深會員


查看用戶資訊
如果你不用 gpio3 ,那你可以將 wpu 打開,這樣就不會有空接的問題

發表於: 2009/7/24 16:29
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#3
版主
版主


查看用戶資訊
"我的疑問是 空接不是等於0V嗎"

問你一下 CMOS 的輸入不接時應判定何種準位電壓? 有聽過 CMOS 輸入端可以浮接嗎? 這是基本觀念,需要怒清楚的。

發表於: 2009/7/24 16:08
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於12f629 GPIO3定義之問題
#2
資深會員
資深會員


查看用戶資訊
1.空接不等於0V
2.你需要在GPIO3接一個Pull Low電阻。

發表於: 2009/7/24 15:53
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


關於12f629 GPIO3定義之問題
#1
新會員
新會員


查看用戶資訊
請問各位,我寫了一個以下的程式,當GPIO3為5V時執行 START
後會執行一連串程序,直到GPIO3為0V時進行SHUTDOWN,後再跳到LOOP1等待電壓為5V再度執行START,但問題來了,我如果用將GPIO3直接接地,整個程序會如我所要的進行,但GPIO3如果不接就是只把線拔起不接 0V或5V,LOOP1那一段程序就會被跳過,直接往下執行
我的疑問是 空接不是等於0V嗎,為何空接會導致文中LOOP1那一段會被當成有輸入而執行呢(雖然加個RELAY可解決但我的電路空間不足)


; list directive to define processor
list p=12f629
; processor specific variable definitions
#include <p12f629.inc>

__CONFIG _CP_OFF & _MCLRE_OFF & _WDT_OFF & _INTRC_OSC_NOCLKOUT & _BODEN_OFF & _CPD_OFF &_PWRTE_OFF

#DEFINE LED GPIO,0
#DEFINE LED_IO TRISIO,0
#DEFINE LED1 GPIO,1
#DEFINE LED_IO_1 TRISIO,1
#DEFINE LED2 GPIO,2
#DEFINE LED_IO_2 TRISIO,2
#DEFINE LED3 GPIO,3
#DEFINE LED_IO_3 TRISIO,3
#DEFINE LED4 GPIO,4
#DEFINE LED_IO_4 TRISIO,4
#DEFINE LED5 GPIO,5
#DEFINE LED_IO_5 TRISIO,5

CNT0 EQU 20H
CNT1 EQU 21H
CNT2 EQU 22H
;---------------------------------
ORG 0000H

MOVLW 07H
MOVWF CMCON ; TURN-OFF analog comparator

BSF STATUS,RP0 ; select bank 1
CALL 3FFH ; Load cal value
MOVWF OSCCAL
BCF LED_IO ; set as output
BCF LED_IO_1 ; set as output
BCF LED_IO_2 ; set as output
; BCF LED_IO_3 ; set as output
BCF LED_IO_4 ; set as output
BCF LED_IO_5 ; set as output
BCF STATUS,RP0 ; select bank 0

BCF LED
BCF LED1
BCF LED2
BCF LED4
BCF LED5 ;ALL LED LIGHTOUT

LOOP1: btfsc GPIO,3
GOTO START ;IF GP3=5V GOTO START
GOTO LOOP1

START: CALL DELAY5SEC
BSF LED ;LED 亮 開電源
CALL DELAY5SEC
BCF LED ;LED 滅

CALL DELAY
CALL DELAY
CALL DELAY
BSF LED1 ;LED 亮 向左
CALL DELAY1SEC
BCF LED1 ;LED 滅

CALL DELAY1SEC
BSF LED2 ;LED 亮 按進入錄製
CALL DELAY
BCF LED2 ;LED 滅
CALL DELAY1SEC
CALL DELAY1SEC
CALL DELAY1SEC
BSF LED2 ;LED 亮 開使錄制
CALL DELAY
BCF LED2 ;LED 滅


LOOP2: btfsc GPIO,3
GOTO LOOP2 ;IF GP3=5V GOTO LOOP1
SHUTDOWN:BCF LED ;LED滅 IF GP3=0V GOTO SHUTDOWN
BSF LED ;LED亮
CALL DELAY5SEC
BCF LED ;LED滅
GOTO START


;---------------------------------
; DELAY 0.5 SECONDS ROUTINE
;---------------------------------
DELAY: MOVLW 03H
MOVWF CNT0
MOVLW 18H
MOVWF CNT1
MOVLW 02H
MOVWF CNT2
Delay_0
DECFSZ CNT0, f
GOTO $+2
DECFSZ CNT1, f
GOTO $+2
DECFSZ CNT2, f
GOTO Delay_0

;6 cycles
GOTO $+1 ;delay 2 cycles
GOTO $+1 ;delay 2 cycles
GOTO $+1 ;delay 2 cycles
;4 cycles (including call)
RETURN

DELAY5SEC:
call DELAY
call DELAY
call DELAY
call DELAY
call DELAY
call DELAY
call DELAY
call DELAY
call DELAY
call DELAY
return

DELAY1SEC:
CALL DELAY
CALL DELAY
RETURN

END

發表於: 2009/7/24 15:48
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------