C
CMOS
Guest
Cześć,
Ja jestem przy użyciu AT89S8252 do mojego projektu, który wykorzystuje port@19.2kbps seryjny.Problem mam z tym stoi uC jest to, że każdy znak wysłać z uC do portu szeregowego jest wysyłane dwukrotnie.Bez względu na szybkość lub konfiguracji ustawić.Na przykład, jeśli mogę wysłać "x" wysyła "xx" do komputera.
Jednak jeśli mogę umieścić tego samego kodu na AT89S52, to działa dobrze, bez żadnych problemów.Czy ktoś proszę mi pomóc?
Tu jest mój kod.Kod:ORL PCON, # 0x80; SET DOUBLE szybkość
ANL TMOD, # 0x0F; Wyczyść wszystko TIMER1 bitów w TMOD
ORL TMOD, # 0x20; TIMER1 = 8 bitów AUTO RELOAD
CLR TR1; MAKE SURE TIMER1 nie jest uruchomiony
CLR TF1
MOV A, # 253
MOV TH1, A; SET TIMER1 WALUT
MOV TL1, A
MOV scon, # 0x50; CONFIG Serial Port
SETB TR1; START TIMER1MOV A, # 'x'
LCALL TRYBUNAŁU
SJMP *;************************************************* *************
; PRINTS postać W ACC DO Serial Port
;************************************************* *************
SĄD: MOV SBUF A
JNB TI, *
CLR TI; CLR TI po wysłaniu
RET
Ja jestem przy użyciu AT89S8252 do mojego projektu, który wykorzystuje port@19.2kbps seryjny.Problem mam z tym stoi uC jest to, że każdy znak wysłać z uC do portu szeregowego jest wysyłane dwukrotnie.Bez względu na szybkość lub konfiguracji ustawić.Na przykład, jeśli mogę wysłać "x" wysyła "xx" do komputera.
Jednak jeśli mogę umieścić tego samego kodu na AT89S52, to działa dobrze, bez żadnych problemów.Czy ktoś proszę mi pomóc?
Tu jest mój kod.Kod:ORL PCON, # 0x80; SET DOUBLE szybkość
ANL TMOD, # 0x0F; Wyczyść wszystko TIMER1 bitów w TMOD
ORL TMOD, # 0x20; TIMER1 = 8 bitów AUTO RELOAD
CLR TR1; MAKE SURE TIMER1 nie jest uruchomiony
CLR TF1
MOV A, # 253
MOV TH1, A; SET TIMER1 WALUT
MOV TL1, A
MOV scon, # 0x50; CONFIG Serial Port
SETB TR1; START TIMER1MOV A, # 'x'
LCALL TRYBUNAŁU
SJMP *;************************************************* *************
; PRINTS postać W ACC DO Serial Port
;************************************************* *************
SĄD: MOV SBUF A
JNB TI, *
CLR TI; CLR TI po wysłaniu
RET