Глюки с возвpатом байта. Или мои глюки?

Hello All!

Как я уже писал pаньше, столкнулся с такой пpоблемой. PIC16F628 ждет байта в RCREG и тут же возвpащает его в TXREG. Вот кусок кода.

st1 btfss PIR1,RCIF goto st1 movf RCREG,0 movwf TXREG st2 btfss PIR1,TXIF goto st2 goto st1

Hо в теpминальной пpогpамме я вижу не тот символ, котоpый надавил на клавиатуpе, а нечто дpугое.

В чем тут дело?

Bye, Sergey.

Reply to
Sergey Tkachenko
Loading thread data ...

Hi Sergey,

Fri Apr 16 2004 00:45, Sergey Tkachenko wrote to All:

ST> PIC16F628 ждет байта в RCREG и тут же возвpащает его в TXREG. ... ST> Hо в теpминальной пpогpамме я вижу не тот символ, котоpый надавил ST> на клавиатуpе, а нечто дpугое.

ST> В чем тут дело?

в бодовой скорости

Пока, Алексей

Reply to
Alex Kouznetsov

Привет Rifkat!

Friday April 16 2004 09:13, Rifkat Abdulin wrote to Sergey Tkachenko:

ST>> st1 ST>> btfss PIR1,RCIF ST>> goto st1 ST>> movf RCREG,0 ST>> movwf TXREG RA>

RA> а ты уверен, что буфер передатчика в этот момент уже освободился?

Да, он уверен, для всех символов кроме первого - тут-же полудуплекс, он потом ждет конца передачи символа:

ST>> st2 ST>> btfss PIR1,TXIF ST>> goto st2

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
,
formatting link
, ftp://altor.sytes.net

Reply to
Alexander Torres

ST> st1 ST> btfss PIR1,RCIF ST> goto st1 ST> movf RCREG,0 ST> movwf TXREG

а ты уверен, что буфер передатчика в этот момент уже освободился? поставь здесь задержку и поиграй ею. Или вбей влоб в txreg код, допустим, AA, и лови его - т.е. точно отладь передатчик. Можешь проверить еще, что валится из rcreg - сравни с ожидаемым, и зажги лампочку ;-)

ST> st2 ST> btfss PIR1,TXIF ST> goto st2 ST> goto st1

ST> Hо в теpминальной пpогpамме я вижу не тот символ, котоpый надавил ST> на клавиатуpе, а нечто дpугое.

ST> В чем тут дело?

ST> Bye, Sergey.

Reply to
Rifkat Abdulin

Привет Rifkat!

Friday April 16 2004 12:17, Rifkat Abdulin wrote to Alexander Torres:

ST>>>> st1 ST>>>> btfss PIR1,RCIF ST>>>> goto st1 ST>>>> movf RCREG,0 ST>>>> movwf TXREG RA>>>

RA>>> а ты уверен, что буфер передатчика в этот момент уже освободился? RA>

AT>> Да, он уверен, для всех символов кроме первого - тут-же RA>

RA> полудуплекс, он потом RA>

AT>> ждет конца передачи символа: RA>

ST>>>> st2 ST>>>> btfss PIR1,TXIF ST>>>> goto st2 RA>

RA> Это флаг прерывания по концу записи слова из txreg в tsr и готовности RA> txreg принять новый байт.

Совершенно верно. Это и требовалось.

RA> Однозначно момент освобождения TRMT можно ловить только по нему RA> самому (TRMT).

Зачем?

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
,
formatting link
, ftp://altor.sytes.net

Reply to
Alexander Torres

ST>>> st1 ST>>> btfss PIR1,RCIF ST>>> goto st1 ST>>> movf RCREG,0 ST>>> movwf TXREG RA>>

RA>> а ты уверен, что буфер передатчика в этот момент уже освободился?

AT> Да, он уверен, для всех символов кроме первого - тут-же полудуплекс, он потом AT> ждет конца передачи символа:

ST>>> st2 ST>>> btfss PIR1,TXIF ST>>> goto st2

Это флаг прерывания по концу записи слова из txreg в tsr и готовности txreg принять новый байт. Однозначно момент освобождения TRMT можно ловить только по нему самому (TRMT).

Reply to
Rifkat Abdulin

ST>>>>> st2 ST>>>>> btfss PIR1,TXIF ST>>>>> goto st2 RA>>

RA>> Это флаг прерывания по концу записи слова из txreg в tsr и готовности RA>> txreg принять новый байт.

AT> Совершенно верно. Это и требовалось.

RA>> Однозначно момент освобождения TRMT можно ловить только по нему RA>> самому (TRMT).

AT> Зачем?

Пусть попробует не прерывание анализировать, а "пустоту" выходного буфера - может, у него он "забивается" ;-)

AT> Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 AT> aka snipped-for-privacy@yahoo.com AT>

formatting link
,
formatting link
, ftp://altor.sytes.net

Reply to
Rifkat Abdulin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.