MMP
Участник-
Постов
43 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о MMP
-
Звание
Участник
- День рождения 29.02.1972
Контакты
-
Сайт
Array
-
ICQ
Array
Информация
-
Город
Array
-
Работа с СОМ портом
MMP ответил uvw тема в Программирование
Подскажите как cport310 прицепить к Borland -
Подскажите, что это за зверь? Вернее не нашел в Даташите на какое расстояние осуществляется передача. И нужно ли её программировать?
-
Причем так работает и моя версия и версии с темы:"Исходники". Пишу в ICC. А друг пишет в Кодевижн, и там все работаем на этом же железе. Если надо выложу исходники.
-
Совсем запарился не пойму в чем глюк? Работаюпо TWI c DS 1307 в DIP корпусе работет все идеально, а SMD встает в ошибку черезнесколько секунд. В чем может быть разница.
-
Нужна помощь
MMP опубликовал тема в Вопросы аналоговой техники
Нужна принципиальная схема блока питания фирмы Schroff MPS 015. Или хотя бы марка и данные трансформатора цепи дежурного питания (маркиротка 8436 9652 FEE T). -
Может кто-нить даст ссылку на пример реализации протокола modbus rtu для avr на языке С.
-
Тогда уж не три, а четыре if(hours<0x00){hours = 0x23} плюс восемь на минуты и т.д. тоже геморно, так тоже пробовал
-
Может кто посоветует как выполнить перевод часов. Скажем регист часов содержит 0x22, что равно 22 часам. hours = 0х22; hours++; но фишка в том, что в ds записывается и 0x25 и 0х29. Приходится выполнять двойное преобразование: BCD_DEC(hours); 0x22 -- 0x16 hours = DEC; //DEC возвращается BCD_DEC hours++; DEC_BCD_COR(Add_hr,hours); // обратное преобразование с записью в ds к тому же писать функцию сравнения времени Может возможно как-нить непосредстренно с ds, не прибегая к куче преобразований.
-
А можно с этого места по подробнее. Если можно спримерами. В чем разница?
-
В книге Евсеева написано, что линий SDA и SCL ( PC0 и PC1). Но вроде можно использовать и другие ноги. Киньте пример.
-
Господа если бы вы были повнимательней, то заметили бы в init_devices() еще и timer0_init(); так вот он как раз по прерыванию работает, т.е. дело не в CLI(). Можно подробнее об этом и как устранить. Правда пишу в ICC, а шью через AVRstudio А не может быть это из-за фузов? Перепроверил и в AVRstudio , в прерывание в программе он действительно входит и правильно обрабатывает, а на железе НЕТ. Кстати проверяю и прошиваю через STK - 500
-
Делаю проект часы на меге. Пока работал с помощью VMLAB и Протеус все было ок , часы тикали и т.д. Как только стал шить в железо оказалось, что не тикают(то есть не входят в прерывание). Проверил в АВР студии - действительно не входят. Вот код: //Инициализация таймера 2 на 1сек. void timer2_init(void) { TCCR2 = 0x00; ASSR = 0x08; TCNT2 = 0x80; OCR2 = 0x80; TCCR2 = 0x06; } //Обработка прерывания по таймеру 2 #pragma interrupt_handler timer2_ovf_isr:5 void timer2_ovf_isr(void) { rtc_service(); //Функция обработки времени TCNT2 = 0x80; } .......... void init_devices(void) { //stop errant interrupts until set up CLI(); //disable all interrupts port_init(); timer0_init(); timer2_init(); MCUCR = 0x00; GICR = 0x00; TIMSK = 0x41; //timer interrupt sources SEI(); //re-enable interrupts } ..................... void main(void) { init_devices(); LCD4_Init(); LCD4_Clear(); ........... while(1); } Может подскажете в чем ошибка.
-
Инициализация вроде так должна быть: задержка 15 мс RS = 0; задержка 5 мс DB4,DB5 = 1; задержка 5 мс DB4,DB5 = 1; задержка 5 мс DB5 = 1 задержка 5 мс DB5 = 1; DB7 = 1; задержка 5 мс DB4 - DB7 = 0; DB7,DB6 = 1 задержка 5 мс DB4 - DB7 = 0; DB5,DB6 = 1 задержка 5 мс RS = 1