Перейти к содержанию
    

AVR Studio 4.18 не компилирует , работаю над бегущей строкой

я не пойму в чем может быть дело. Изначально не компилировалось я забыл поставить AVR Toolchain

я установил, возникала ошибка про кириллицу в пути - исправил. Теперь ошибок не выдает вообще, завершенно успешно а файл формата elf так и не создается.. ПОпробовал откомпилировать исходники которые делал раньше и тогда не было проблем, щас тожж самое, я уже и переустанавливал аврку. идеи закончились(((

 

 

работаю над заданием:

 

Разработать МПУ, обеспечивающее вывод информации светоиндикатор 16x4 в режиме "бегущая строка". Длина отображаемой строки — 12 символов.Выбор направления прокрутки. Обязательна пояснительная записка с обязательными разделами: -Постановка задачи -Возможные варианты решения, обоснование выбранного варианта -Перечень используемой элементной базы, выдержки из даташитов, доказывающие скоростные характеристики или другие критичные параметры выбранным микросхем -временные диаграммы, доказывающие правильность функционирования схемы -перечень элементов + -схема функциональная -схема электрическая принципиальная -формат - читаемый. -оформление по ГОСТ. моделирование схемы желательно Использование иностранной элементной базы - только при обосновании, чем не устраивает отечественная. Если не смогли найти отечественный 32-ти битный регистр - собираете из 4-х 8-ми битных, а не берете иностранный на 32. Если нет отечественной микросхемы, которая работает с нужной частотой - можно брать иностранную, но об этом надо написать в пояснительной записке. Использование ПЗУ не поощряется и должно иметь веское обоснование, т.к. любую работу можно сделать на ПЗУ элементарно

 

если есть рекомендации, советы, ссылки, буду очень благодарен

 

так же есть вопросы

Можно ли в авр обратиться к конкретному выходу контроллера. Например подать на PB0 единицу

не обращаясь сразу ко всем портам PORTb = 0b00000001

 

хочу собрать эту схему в протеусе

image.jpg

это приблизительная схема, как я понимаю выходы с 595 регистра надо пропустить через транзисторы? (ULN2803 думаю), и ограничить ток резисторами. Ток их куда надо вешать? просто в разных схемах по разному вешают на входе, на выходе светодиода

 

я поставил по 2 последовательно включенных регистра на строку, соотв я представляю себе такой принцип работы сначала в регистры записать стартовое состояние светодиодов, и потом через задержки записывать новые столбцы подавая например на портд команду PORTD = 0b00001111 я зажгу первый столбец, и строка сдвинется вправо на 1 столбец. ПРавильно? или я ошибаюсь?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно ли в авр обратиться к конкретному выходу контроллера. Например подать на PB0 единицу

не обращаясь сразу ко всем портам PORTb = 0b00000001

Можно.

sbi PORTB,X - установить вывод порта (где Х- номер порта 0-7)

и

cbi PORTB,X - сбросить выв порта

 

...как я понимаю выходы с 595 регистра надо пропустить через транзисторы? (ULN2803 думаю), и ограничить ток резисторами. Ток их куда надо вешать? просто в разных схемах по разному вешают на входе, на выходе светодиода

Резистор включается в коллекторной цепи транзистора. И не важно до светодиода или после: ведь они (резистор и светодиод) включены последовательно. Затем при разводке платы их можно менять местами, как удобно.

 

я поставил по 2 последовательно включенных регистра на строку, соотв я представляю себе такой принцип работы сначала в регистры записать стартовое состояние светодиодов, и потом через задержки записывать новые столбцы подавая например на портд команду PORTD = 0b00001111 я зажгу первый столбец, и строка сдвинется вправо на 1 столбец. ПРавильно? или я ошибаюсь?

Если я правильно понял изложенное, то правильно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно.

sbi PORTB,X - установить вывод порта (где Х- номер порта 0-7)

и

cbi PORTB,X - сбросить выв порта

 

а на си аналогичные команды есть?

по поводу компилирования не знаешь что может быть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а на си аналогичные команды есть?

Из документации на МК инструкции на ассемблере:

sbi EECR,EEMWE ; Start eeprom write by setting EEWE

sbi EECR,EEWE

 

и тоже на С

/* Write logical one to EEMWE */

EECR |= (1<<EEMWE);

/* Start eeprom write by setting EEWE */

EECR |= (1<<EEWE);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я не пойму в чем может быть дело. Изначально не компилировалось я забыл поставить AVR Toolchain

я установил, возникала ошибка про кириллицу в пути - исправил. Теперь ошибок не выдает вообще, завершенно успешно а файл формата elf так и не создается.. ПОпробовал откомпилировать исходники которые делал раньше и тогда не было проблем, щас тожж самое, я уже и переустанавливал аврку. идеи закончились(((

 

Сталкивался с подобной ситуацией в 6-ой версии. Там в свойствах проекта нужно установить вывод в файл elf.

"Build -> Build Artifact -> Artifact Type" нужно установить в "Executable".

Изменено пользователем aiwa

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...