pic 16f84a serout2 помогите разобраться
|
|
Kamikadze |
Дата: Ср, 08.02.2012, 10:43 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
6
Замечания:
±
На сайте с 12.12.2010
Статус:
Offline
|
Доброго времени суток. Проблема в следующем, написал в picbasic простенькую программку которая при нажатии на кнопку отправляла в com port число при помощи команды serout2, собрал схемку в протеусе подцепил к выводу виртуальный терминал, данные уходят но в терминале отображается не весть что. где может быть проблема??? Вот код программы:
define osc 16 INCLUDE "modedefs.bas" DEFINE SER2_BITS 8
mainloop: if porta.0=0 then serout2 porta.2, 84, [10] endif goto mainloop
схемка в протеусе прилагается. Помогите разобраться. очень надо Заранее спасибо
|
|
|
|
ADMIN |
Дата: Ср, 08.02.2012, 12:16 | Сообщение # 2 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Первое - OSC 16, а в свойствах МК в протеусе указана частота - 1 МГц. Второе - INCLUDE "modedefs.bas" не требуется. Третье - в свойствах терминала в протеусе - указано 8 бит данных, а строка DEFINE SER2_BITS 8 указывает на 7-битный режим (см. Help - With parity enabled: DEFINE SER2_BITS 9 ' Set Serin2 and Serout2 data bits to 8 ) Видать по-умолчанию включена проверка на четность. В общем можно работать так:
DEFINE SER2_BITS 9 mainloop: if porta.0=0 then serout2 porta.2, 84, ["ERR",13,10] endif goto mainloop
|
|
|
|
Kamikadze |
Дата: Ср, 08.02.2012, 14:02 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
6
Замечания:
±
На сайте с 12.12.2010
Статус:
Offline
|
ADMIN, спасибо большое!
|
|
|
|
ADMIN |
Дата: Ср, 08.02.2012, 16:51 | Сообщение # 4 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Да не во что...
|
|
|
|