Komunikace s terminalem

J.R. siliconbrain@siliconbrain.biz
Sobota Srpen 14 15:42:51 CEST 2004


Zkratka priznak TXIF nezareaguje okamzite po naplneni TXREG, ale az o
instrukci pozdeji, takze se hopne jeden NOPicek za to MOVWF TXREG a tim se
zacne testovat ve smycce priznak TXIF o instrukci pozdeji, kde uz TXIF
zareagoval a uz to predpokladam pojede jak se ceka :).

--
Jiri Bezstarosti


> -----Original Message-----
> From: hw-list-bounces@mailman.nethouse.cz
> [mailto:hw-list-bounces@mailman.nethouse.cz]On Behalf Of Martin Šaněk
> Sent: Saturday, August 14, 2004 11:33 AM
> To: [HWnews]
> Subject: Komunikace s terminalem
>
>
> Dobry den,
> Mam PIC16F876 a snazim se posilat data na terminal ve WIN. Snazil jsem
> se to udelat podle KTE 7/2004 a nejak mi to nechce chodit. Lepe receno
> znaky to vysila, ale asi to netestuje spravne priznak TXIF, protoze
> kdyz tam nedam po kazdem znaku mezeru (v programu 100ms) tak to vysle
> registr STA, reg DES uz ne  a JEDN zase ano. Neprovede to navrat na
> zacatek radku, ale odradkovani uz ano. Pripada mi, jako by program
> netestoval priznak, znaky porad rval do TXREG a nektere proste
> vypadly. Urcite jsem neco prehlednul (jako kdysi u EEPROMky), ale i
> kdyz ctu manual porad dokola, tak me nenapada co.Program je nasledujici:
>
>
>   ;nastaveni procesoru
>         banksel SPBRG
>         movlw   .12             ;19200/4MHz
>         movwf   SPBRG
>         banksel TXSTA
>         movlw   b'00100100'
>         movwf   TXSTA
>         banksel RCSTA
>         movlw   b'10010000'
>         movwf   RCSTA
>         banksel TRISB
>         movlw   b'11111110'     ;PORTB,0 vystup na LED
>         movwf   TRISB
>         banksel PORTB
>         clrf    PORTB
>         banksel 0
>
> loop
>
>         movlw   .1
>         movwf   STA
>
>         movlw   .2
>         movwf   DES
>
>         movlw   .3
>         movwf   JEDN
>
>         movlw   .48             ;ASCII začíná od 48 dekadicky
>               *
>         addwf   STA,f           ;STA+48
>               *
>         addwf   DES,f           ;DES+48
>               *
>         addwf   JEDN,f          ;JEDN+48
>
>         btfss   PIR1,TXIF      ;kontrola volneho registru
>         goto    $-1
>         movf    STA,w           ;precti hodnotu stovek
>               *
>         movwf   TXREG
>
> ;       call    w100ms
>
>         btfss   PIR1,TXIF       ;kontrola volneho registru
>         goto    $-1
>         movf    DES,w           ;precti hodnotu desitek
>               *
>         movwf   TXREG
>
> ;       call    w100ms
>
>         btfss   PIR1,TXIF
>         goto    $-1
>         movf    JEDN,w          ;precti hodnotu jednotek
>               *
>         movwf   TXREG
>
>         btfss   PIR1,TXIF
>         goto    $-1
>
>
>         movlw   0x0D            ;vrat se na zacatek radku
>         movwf   TXREG
>         btfss   PIR1,TXIF
>         goto    $-1
>         movlw   0x0A            ;odradkuj
>         movwf   TXREG
>         btfss   PIR1,TXIF
>         goto    $-1
>
>         call    w1s
>         call    w1s
>         call    w1s
>
>         goto    loop
>
>
>  Diky za nakopnuti spravnym smerem
>
>  Martin Sanek
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> HW-list@mailman.nethouse.cz
> http://nethouse.cz/mailman/listinfo/hw-list
>
> ---
> Příchozí zpráva neobsahuje viry.
> Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
> Verze: 6.0.733 / Virová báze: 487 - datum vydání: 2.8.2004
>
---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.733 / Virová báze: 487 - datum vydání: 2.8.2004





Další informace o konferenci Hw-list