| Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
Настройка USART в режим асинхронного прийомника(PIC16F876)
15.01.2005, 00:02
|
|
|
rom
Гость
|
Настройка USART в режим асинхронного прийомника(PIC16F876)
Помогите пожалуйста!
Мне нужно с СОМ порта компьютера передать в ПИК данные используя модуль UART. Протокол обмена: 1-стартовый, 8-бит данных, 1-стоповый бит, без поверки на четность, скорость 4800. Кварц ПИКа на 10 МГц.
Для этого я:Настоил RC7-как вход, а RXSTA, TXSTA, SPBRG настроил как показано ниже.
bsf STATUS,RP0 ;Bank_1
clrf TRISC ;PortC all Out
bsf TRISC,7 ; RB7 input
movlw b'00000010' ;word initialization for TXSTA
movwf TXSTA ;(низкоскоростной режим,8 bit,)
movlw .32 ;Задать скорость 4800 при 10МГц
movwf SPBRG ;//--
bcf STATUS,RP0 ;Bank_0
movlw b'10010000' ;word initialization for RCSTA
movwf RCSTA ;UART On
Но модуль работает не правильно. получаю не то что передаю с ПК.Что я сделал не так?
Значение для SPBRG я рассчитал по формуле в документации на ПИК.(32) Ето число я изменял вверх и вниз но безрезультатно. Также настраивал UART на высокоскоростной режим, менял кварц и настройки ПИКа на 4МГц. Результат-аналогичный.
В аппараттной части для подключеня ПИКа к СОМ порту компьютера использовал резистор и два последовательно включеных диода средняя точка которых подключена к RC7(RX),а остальные к земле и питанию.
(Заранее исключаю неправильную работу ПК- другое устройство по вышеупомянутому протоколу с ПК работает нормально).
Заранее благодарен за помощь.
|
|
|
|
|
15.01.2005, 00:06
|
|
|
rom
Гость
|
Схема подключения ПИК-ПК.
-- Прилагается рисунок: --

|
|
|
|
|
15.01.2005, 13:19
|
|
|
Гость
|
|
Сообщение от rom
|
|
Схема подключения ПИК-ПК.
|
??? А где сигнал инвертируется?
У COM порта компьютерного лог.1=-12в, лог.0=+12в
Ведь, как я понял, прием ведется не софтверно, а
при помощи USART?
-- Прилагается рисунок: --

|
|
|
|
|
15.01.2005, 14:38
|
|
|
Гость
|
Большое спасибо!
Действительно сигнал с СОМ порта нужно обязательно аппаратно инвертировать перед подачей на ПИК.
Я 'начинающий'. Вчера после подачи этой темы меня и самого 'осенило' в чем дело. Но все равно спасибо коллеге.
|
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Настройка USART AVR на DMX512
|
anton_avr |
Микроконтроллеры, АЦП, память и т.д |
1 |
16.07.2009 13:13 |
|
pic16f876
|
алексей |
Микроконтроллеры, АЦП, память и т.д |
1 |
30.12.2005 22:43 |
|
память PIC16f876
|
sergej1 |
Микроконтроллеры, АЦП, память и т.д |
6 |
08.11.2005 18:45 |
|
Нужна информация о PIC16F876.
|
korefey |
Микроконтроллеры, АЦП, память и т.д |
1 |
05.12.2004 18:37 |
|
Pic16f876/3
|
Дима |
Микроконтроллеры, АЦП, память и т.д |
7 |
04.08.2003 11:13 |
Часовой пояс GMT +4, время: 17:01.
|
|