Здравствуйте. Возник один вопрос.Решил сделать девайс на 16ф628. В случае срабатывания датчиков пик передает сообщение компьютеру в гипертерминал. Вопрос вот в чем : берем во внимание все пины PORTB на них будут висеть датчики, следовательно назначаем их на вход, кроме двух выводов для усарта в 16ф628 это RB1 и RB2 , так вот в строке TRISB=%......... пины RB1 и RB2 назначать на вход или на выход? (Понимаю что в усарте один пин- приемник, другой- передатчик, но хотелось бы утвердиться ). Спасибо.
По большому счету можно и наоборот,, или как Бог на душу положит. Вообще-то без разницы.! Команды работы с USART-ом сами в нужный момент переведут эти пины в нужное состояние. Например можно все эти пины перевести в состояние входов, да еще подцепить на них кнопки и проверять нажаты ли они в то время когда нет обращения к командам приема или записи в USART. Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
Считаю, что нужно приучаться к этому сразу, хотя бы потому, что иногда, в целях экономии программной памяти можно не пользоваться командами hserin/hserout, а в цикле выдавать в регистр TXREG для передачи или забирать из RCREG при приеме.
Вопрос что означает эта строка #DEFINE HSER_TXSTA 20h (как она вычисляется, или откуда берется цифра 20h?) Последняя строка ,как я понял расчитана по формуле: Значение скорости=Кварц в герцах/ (64(Х+1)) Спасибо.
Да, спасибо. Нашел и разобрался.Там на кварце 4 мгц(ассинхронный режим) доступна скорость только 2400, а я голову ломал почему на других скоростях не работает. А кстати чем синхронный режим отличается от ассинхронного? Который из них предпочтительней?
Добавлено (16.05.2010, 21.52.52) --------------------------------------------- У кого стоит проблемма, как собрать программатор, тому еще рано заниматься ПИКАМИ
Сообщение отредактировал
vanish - Пн, 17.05.2010, 20:52