Без описания |
Поиск в теме | Версия для печати |
Predator |
Отправлено: 27 Января, 2019 - 21:53:40
|
Супермодератор
Сообщений всего: 1307
Дата рег-ции: Июль 2012
|
if (PORTD=0b11111110) - в этой строчке вы сравниваете весь порт D, со значением 0b11111110
1) регистр чтения для входов называется PIND (это дурацкое разделение только у АВРов)
2) при таком сравнении нужно, чтобы на всех входах кроме PIN0 были 1, а на PIN0 был 0, и никак иначе. Если требуется анализировать только PIN0 - то сравнивайте так:
CODE:
if ((PIND&0b00000001)=0)
тогда все битики, кроме 0-го станут 0-ми (независимо от того что там на входах), а нулевой останется как есть.
глобальная проблема другой версии в функции _delay_ms, она описана в util/delay.h, а это описание в свою очередь использует fabs, которая описана в math.h (по крайней мере у меня). |
|
|
Andrey 2004 |
Отправлено: 01 Февраля, 2019 - 14:17:44
|
Капитан
Сообщений всего: 46
Дата рег-ции: Дек. 2018
|
А данные проблемы как лучше решить программно или плату перепаять,
ведь у всех остальных эта программа правильно работает...
Predator пишет: вот тут 2 варианта:
1) у вас кнопка подтянута к земле, при нажатии садится на + (в программе подразумевается наоборот)
2) у вас анод светодиода на +, а катод на ноге, в программе подразумевается, что анод на ноге, катод на земле. (ну и еще где-нибудь по пути есть и должен быть резистор)
Начал экспериментировать над своей программой.
Возникли трудности с сохранением хекс файла. Я его сохраняю, а он то сохраняется,
то остается прежним. Ну а так как мне нужно много различных вариантов перепробовать из которых лишь один правильный, то работа становится крайне неудобной.
Думаю скачать новую АВРку, не подскажете сколько она весит и где ее лучше скачать?(Отредактировано автором: 01 Февраля, 2019 - 14:23:48) |
|
|
Andrey 2004 |
Отправлено: 01 Февраля, 2019 - 15:37:15
|
Капитан
Сообщений всего: 46
Дата рег-ции: Дек. 2018
|
Ну все я наконец то разобрался со своей программой, дело в том что у меня отладочная плата, привезенная из китая, включает в себя кнопку и светодиод. Я посмотрел, кнопка была подключена к PD1, светодиод к PD2 . Ну я запомнил что кнопка подключена к первой ноге,а светодиод ко второй а про то что это все порт D я забыл, ну и в конце концов получал нужное мне напряжение не на той ноге... В общем я извиняюсь за то что из за своей халатности, потратил ваше время задавая глупые вопросы. А также СПАСИБО зато что помогли мне с этой программкой, теперь все работает.
Однако новую студию я все равно хотел бы скачать, у меня перед этим было много неудачных ошибок, и в итоге скачал вот эту, но она какая то глючная...
(Добавление)
Извините ответ сразу не увидел, просто мне не мешало бы страницу почаще перезагружать... |
|
|
|
Поиск в теме | Версия для печати |
Страниц (6): « 1 2 [3] 4 5 6 » |
« С чего начать? » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
|
|
|
|