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

 
 
> Проблема с передачей по 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
Ответов
ChipKiller
сообщение Jan 27 2012, 10:43
Сообщение #2


Участник
*

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



Цитата
.. где засада?
... попробуйте так
Код
    orl    PCON,#80h       ; установим бит удвоения скорости передачи
    mov    A,SerialSpeed
    mov    TH1,A           ; скорость передачи
    mov    TL1,A
    mov    SCON,SerialMode    ; запишем режим работы UASP
    anl    TMOD,#0Fh       ; маскируем T/C0
    orl    TMOD,#20h       ; T/C1 в режим 2
    setb    TR1                ; запустим таймер
.........
.........
    jnb    TI,$   ; ждем окончания передачи
    clr    TI     ; сбрасываем флаг передачи
    mov    SBUF,A ; передача байта в буфер UART
Go to the top of the page
 
+Quote Post



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

 


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


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