• 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: 請問一下16F877 有關RS232傳輸的問題
#2
高級會員
高級會員


查看用戶資訊
你的BANK不對吧...

    
org 0
    NOP
    CLRW
    CLRF     PCLATH
    CLRF     TEMPK
    CLRF     PSW
    BANKSEL OPT_R
    
^^^^^^^^^^^^^^^^^  切到BANK1
    MOVLW   07H
    MOVWF   OPT_R
    
    MOVLW   03H
    
;TRIS    RA
    
^^^^^^^^^^^^^^^^^^^ TRIS 不知道可不可以用在16上ㄟ...
                
用movwf比較保險吧..
                (
877 Datasheet上沒有TRIS指令)
    
movwf    RA
    bcf    STATUS
,RP1
    bcf    STATUS
,RP0
    
^^^^^^^^^^^^^^^^^^^^^^^^ 加上這三行
KB_1
    BTFSC   RA
,KB_DA
        
^^^^^^^^^^^^^^ PORTA 在BANK0
    
GOTO    KB_2
    
GOTO    KB_1
KB_2    BTFSC   RA
,KB_CK
    
GOTO    SW
    
GOTO    KB_1

發表於: 2005/3/28 2:02
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


請問一下16F877 有關RS232傳輸的問題
#1
新會員
新會員


查看用戶資訊
請問大大:

我所使用的硬體為877實習版,我寫了一段測試程式,目前的功能為~將PIC上電後,每40MS傳一筆資料(8 BIT)至RS232,
但是我只要插入一段判斷腳位程式(KB_1 &KB_2處),我的程式就會失去傳資料的功能,我把那一段判斷程式拿掉,又恢復正常,很顯然應該是那一段判斷程式的問題,但卻不知為何會這樣,請高手大大們提供建議~~謝謝!

PS:我主要是要判斷KB_DA跟KB_CK(KB_1處,共6行)這兩支腳都為H再去做SW以後的動作,但是只要加入KB_1 這6行,
程式就不往下跑(此兩支腳測波器量過 為H)?

list p=16f877r=dec       
#include p16f877.inc

RTC     EQU   001H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
one        EQU   0x21
TEMPK     EQU   0X22
COUNT     EQU   0X23
COUNTER EQU   0X24
OPT_R     EQU   81H
Q1           EQU   0X25
Q2           EQU   0X26
Q3           EQU   0X27
Q4            EQU   0X28
Q5            EQU   0X29
VAL_US     EQU   0X31
VAL_MS    EQU   0X32
COUNT_MS EQU  0X30
ST             EQU  0X33

;===================================
PSW     EQU   003H        ;STATUS
CF       EQU   0
AF       EQU   1
ZF       EQU   2
PDF     EQU   3
TOF     EQU   4
PR0     EQU   5
PR1     EQU   6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
RA         EQU   005H         ;A PORT
KB_DA   EQU   0    
KB_CK   EQU   1
PP        EQU   2
LL        EQU   3
SS        EQU   4

;**************************************************
;*                  
RTCC TABLE                    *
;**************************************************
RF0     EQU     0     ;0.5us 256 *   =   128 us
RF1     EQU     1     
;0.5us 256 *   =   256 us
RF2     EQU     2     
;0.5us 256 *   =   512 us
RF3     EQU     3     
;0.5us 256 *   =  1024 us =  1 ms
RF4     EQU     4     
;0.5us 256 *  16 =  2048 us =  2 ms
RF5     EQU     5     
;0.5us 256 *  32 =  4096 us =  4 ms
RF6     EQU     6     
;0.5us 256 *  64 =  8192 us =  8 ms
RF7     EQU     7     
;0.5us 256 128 16384 us 16Ms
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
org 0
NOP
CLRW
CLRF PCLATH 
CLRF TEMPK
CLRF PSW               
;\\\\\\\\\\
;----------------------------------------------------------- 
       
BANKSEL OPT_R
MOVLW   07H
MOVWF   OPT_R
;============================
MOVLW   03H            ;0000 0011        ;設為IN          
TRIS    RA 
;============================
KB_1       
     BTFSC   RA
,KB_DA       ;
     GOTO    
KB_2              ;
     GOTO    
KB_1


KB_2   
     BTFSC   RA
,KB_CK        ;
     GOTO    
SW           
     
GOTO    KB_1
;==============================
SW      
       banksel SPBRG
       bcf     TRISC
,6
       bsf     TRISC
,7
       movlw   D
'12'                      
       
movwf   SPBRG
       clrf    TXSTA
       bcf     TXSTA
,BRGH      
       bcf     TXSTA
,SYNC      
       bcf     TXSTA
,TX9             
       bsf     TXSTA
,TXEN       
       bSf     PIE1
,TXIE                     
       banksel PIR1
       bCf     PIR1
,TXIF       
       bsf     RCSTA
,SPEN    
;==============================
 
QQ     
      MOVLW   55H
      MOVWF   TXREG


GG
       btfss  PIR1
,TXIF        
       
goto   GG
       bcf    PIR1
,TXIF          


;----------------------------------------------------------  
      
       
MOVLW  03H               
       MOVWF  COUNTER
BT_2       
       CLRF   RTC
BT_1     
       BTFSS  RTC
,RF7
       
GOTO   BT_1
       DECFSZ COUNTER
       
GOTO   BT_2
;------------------------------------------------------------- 
       GOTO   
QQ


       
       
       END




發表於: 2005/3/27 16:11
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... ]

教育訓練中心

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