ТАВРОФОРУМ

Вернуться   ТавроФорум > Не автомобильные темы > Решение бытовых проблем > Компьютеры

Компьютеры Уголок для решения бытовых компьютерных проблем.

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.10.2013, 09:16   #11
Pilot
 
Адрес: Киев
Сообщений: 335
Длина: 5700мкм
Диаметр: 33мм
Отправить сообщение для Pilot с помощью ICQ
По умолчанию

да, похоже что ошибся с объемом кода.
Возможно действительно по разному компилирует.

Поставил avr studio 6 (в связи с тем, что на основном ПК она поломалась) на виртуалку, и там мучаюсь.


пошел другим путем - смотрю в дебаггере шаги.

Взял из программы кусок кода, и немного укоротил - сделал чисто дешифратор:

#include <avr/io.h>

int main(void)
{

DDRA = 0xFF;
PORTA = 0b00000000;

DDRD = 0x00;
PORTD = 0b00000000;

for (;
{
if ((PIND0==1)&&(PIND1==0)&&(PIND2==0))
PORTA = 0b00000100;
else if ((PIND0==1)&&(PIND1==1)&&(PIND2==0))
PORTA = 0b00110100;
else if ((PIND0==0)&&(PIND1==1)&&(PIND2==0))
PORTA = 0b00100100;
else if ((PIND0==0)&&(PIND1==1)&&(PIND2==1))
PORTA = 0b00000010;
else if ((PIND0==0)&&(PIND1==0)&&(PIND2==1))
PORTA = 0b00000010;
else if ((PIND0==1)&&(PIND1==0)&&(PIND2==1))
PORTA = 0b00111100;
else
PORTA = 0b00000001;
}
}

По шагам, первые 4 (назначение портов) дебаггер отрабатывает, а потом сразу прыгает в строку
else
PORTA = 0b00000001;

не отрабатывая никакие другие. и оттуда его ничем не выудить...

ошибок, предупреждений нет.
__________________
Надейся на лучшее, расчитывай на худшее
Люблю Таврооргию. Такого пох№зма и подъ№балова нигде не встретишь! (c) Lusi
Pilot вне форума   Ответить с цитированием
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 00:43. Часовой пояс GMT +3.


Перевод: zCarot Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.