Имеется гусеничное шасси, решил сделать контроллер, который будет принимать команду с COM-порта ПК и управлять двигателями. Нарисовал схему в Proteus 7.6 (part.dsn, прошивка для МК - prog1.hex). В симуляторе все работает. (управление клавишами w,a,s,d). Дорисовал часть схемы согласования уровней (part1.dsn), собрал в железе, подключил кабелем к порту ПК, посылаю символ через гипертерминал - не принимает. Подскажите, что не правильно. Кабель делал простой: RX-TX, TX-RX, GND-GND(2-3,3-2,5-5)
Добавлено спустя 2 минуты 57 секунд: Скорее всего, копай согласование уровней. Выложил бы схему здесь, проще обсуждать было-бы. Кстати, в чём она нарисована? не могу открыть
я мало знаком с семейством AVR МК, так что если не то скажу - поправьте... фусибиты это вроде то же что слово конфигурации в ПИК. В моем случае: тактирование внутренним генератором(4МГц), PowerUp таймер включен, все остальные (сторожевой таймер, защита кода и памяти, низковольтное программирование, сброс по снижению напряжения) - выключены
Добавлено спустя 7 минут 20 секунд: рисовал в proteus 7.6 сделал рисунки частей
Я пиковод У меня все отлично управляется с пк, пробовал PIC18F8722, PIC18F4550, PIC18F2320 и т.д.
1. Вот у вас на схеме MCLR висит в воздухе, а надо бы подтянуть к +5 через 5-10ком 2. А где кварц? 3. Эх... писали бы на CCS-C, я бы помог 4. А пик вообще работает? Я обычно оставляю моргающий светодиод. Моргает-работает, моргает по другому-значит команда выполняется 5. А зачем вам ком-порт? Их уже не найти, вот такая штучка есть: http://www.sparkfun.com/products/8551 и вообще, можно пики напрямую подключать к usb
1. не придал значения, исправлю 2. тактируется внутренним генератором 4. пик работает, исключил из программы все что касается работы с USART, зациклил команды управления с паузой 2 сек, в результате крутит моторами с заданным интервалом синхронно отображая выполняемую команду на ЖКИ
Добавлено спустя 4 минуты 21 секунду: конденсаторы в обвязке MAX232 прицеплю... я эту часть благополучно сплагиатил на каком-то форуме
Проверьте, что на компьютере терминал настроен на 9600 Проверьте, что ПИК работает с правильной частотой (можно сделать с помощью светодиода, меняющего состояние раз в секунду)
dccharacter писал(а):Проверьте, что на компьютере терминал настроен на 9600 Проверьте, что ПИК работает с правильной частотой (можно сделать с помощью светодиода, меняющего состояние раз в секунду)
гипертерминал при проверке настраивал 9600/8N1 я уже писал что двигателями крутит с заданными интервалами (т.е. если в программе PAUSE 2000, то крутит 2 сек)
не пойму на чем это написано и нифига не вижу инициализации регистров. Но, думаю, если это работает в эмуляции, то, скорее всего, инициализация есть ))
init: CMCON = %00000111 ' не использовать компаратор TRISA = %00000000 ' Сделать все выводы порта PORTA выходами TRISB = %00000010 ' Сделать все выводы порта PORTB выходами, ' кроме вывода 1 (RX),который будет входом PORTB = %00000000 ' До начала программы сбросить в 0 все выводы порта PORTB PORTA = %00000000