реклама на сайте
подробности

 
 
> Проблема с передачей по RS-232
MichaelTLT
сообщение Jan 27 2012, 07:40
Сообщение #1





Группа: Новичок
Сообщений: 8
Регистрация: 27-01-12
Пользователь №: 69 910



Здравствуйте!

Есть контроллер AT89S52. К нему напрямую, без всяких извращений подключен MAX232 со стандартной обвязкой из 5 конденсаторов. Я пытаюсь вывести в последовательный порт данные, но на компьютере принимаю какой-то мусор. Причем этот мусор отличается от данных всего-лишь двумя старшими битами. Например, отправляю в порт число 41h, а получаю попеременно 81h и C1h. Вот пример программы:

Код
cseg
                                
org    00h
jmp        init

init:
    mov    p3, #0FFh
    mov    SCON, #50h
    mov    TH1, #0F9h
    orl    TMOD, #20h
    setb    TR1

main:
    clr    TI
    mov    SBUF, #41h
    jnb    TI, $
    sjmp    main


Скажите, где засада?
MAX232 - нехитрое устройство, данные на него отправляются по одному биту. И если бы он был глючный, то наверно портились все бы биты или большая их часть. Но у меня стабильно отличие только в двух старших битах. Может с программой что-нибудь не так?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Denis24
сообщение Apr 17 2012, 10:28
Сообщение #2





Группа: Участник
Сообщений: 11
Регистрация: 6-03-12
Пользователь №: 70 636



Я всегда пользовался так:
;настройка последовательного порта 115200 8n1,кварц 11059
;формула FOSC/(32*(65536-RCAP2H,RCAP2L)
MOV SCON,#050H
MOV RCAP2L,#0FDH
MOV RCAP2H,#0FFH
MOV T2CON,#034H
CLR RI
setb REN ; enable serial reception
jmp start

либо без RCAP2

BAUD_9600 EQU 0fdh ; 9600 baud
initialize:
; mov PCON, #80h ; initialize power control register
mov IE, #0 ; deactivate all interrupts
mov SCON, #01000000b ; serial port mode one
mov TMOD, #00100000b ; timer one 8-bit auto-reload,
mov TH1, #BAUD_9600 ; timer one reload value
mov TCON, #01000000b ; start timer one
setb REN ; enable serial reception
setb EA ; global interrupt enable
setb ES ; UART interrupt enable

Сообщение отредактировал Denis24 - Apr 17 2012, 10:29
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 02:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01392 секунд с 7
ELECTRONIX ©2004-2016