AVR studio в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
ROMan2947
Грызет канифоль
Сообщения: 287
Зарегистрирован: Сб янв 23, 2016 00:59:59
Откуда: Чебоксары

Re: AVR studio в вопросах и ответах

Сообщение ROMan2947 »

Здравствуйте!!
Установил AS7 при отладке программы в окне I\O не понятно почему регистр PIN не меняет свое состояние в соответствии с регистром PORT....порт настроен на вход, т.е. DDR выставлен в 0....так и должно быть или нужно что-то настроить?
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: AVR studio в вопросах и ответах

Сообщение akl »

Так и должно быть, если лапа настроена как IN.
Реклама
Аватара пользователя
ROMan2947
Грызет канифоль
Сообщения: 287
Зарегистрирован: Сб янв 23, 2016 00:59:59
Откуда: Чебоксары

Re: AVR studio в вопросах и ответах

Сообщение ROMan2947 »

что за предупреждение????
я только начал изучать, прошу терпения...

Warning control reaches end of non-void function [-Wreturn-type]
#include <AVR/io.h>
#include <stdint.h>



unsigned char i=0;

int nastroika(void)
{
DDRA=0x00;
PORTA=0xFF;

DDRB=0xFF;
PORTB=0x00;

}



int var()
{

if ((PINA&(1<<0))==0)


{
i=1;
}

if ((PINA&(1<<1))==0)
{
i=2;
}

}

int main(void)
{

nastroika();

while (1)
{
var();

PORTB=i;

}

}
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

Re: AVR studio в вопросах и ответах

Сообщение axillent »

Любая функция у которой тип возвращаемых данных отличен от void должна завершаться return

Это Си
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Олегыч1
Поставщик валерьянки для Кота
Сообщения: 1941
Зарегистрирован: Пт фев 27, 2015 20:57:08
Откуда: Курск

Re: AVR studio в вопросах и ответах

Сообщение Олегыч1 »

Приветствую уважаемые радиокоты! В программировании только начинаю, поэтому не судите строго) Собрал первый программатор (самый простой, тот что Громова) Приобрел AVR-микроконтроллер по имени ATMEGA 8А. Прошить удалось (вроде бы :lol: ) двумя пробными прошивками, но подскажите пожалуйста:
1) Как проверить на практике то, что я прошил? Что должно быть и на каких выводах МК?
2) как самому написать (или исправить уже имеющуюся) прошивку таким образом, чтобы на выводах микросхемы были сигналы допустим по 1 секунде длительностью , и по 1 секунде скважностью, которые идут например друг за другом...
3) Какие выводы МК из всех, что в датащите вообще подлежат программированию?
4) В датащите на данный МК выводы показаны разноцветными цветами. Что обозначают этими цветами?
=================
Прошивки прилагаю:
Вложения
022M48.hex
(398 байт) 338 скачиваний
add.hex
(125 байт) 320 скачиваний
Реклама
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR studio в вопросах и ответах

Сообщение СКАЗОЧНИК »

1. Лучше бы даташит с раноцветными выводами выложили и где вы такой нашли....
2. А также, его можно было почитать чуток, там же написано, какие выводы "поддаются программированию".
3. Без дизассемблирования вы ХЕКС файл никак не подправите (сюда же относят и знания самого ассемблера).
4. Проверить записанное в МК можно просто прочитав тем же программатором и сравнив его ХЕКС с оригиналом.
5. И вообще, начните с обучалки и будет вам счастье! :)

З.Ы. Прошивки ваши практически бесполезны. Никто даже смотреть не будет. Это не исходник.
Станислав
Реклама
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: AVR studio в вопросах и ответах

Сообщение Alexeyslav »

Э не, это так не работает.
Что должно быть на выводах работающего контроллера зависит ИСКЛЮЧИТЕЛЬНО от прошивки(и битов конфигурации контроллера - он может тупо не заработать из-за неверной установки источника тактовых импульсов) которую в него залили. На этот вопрос ответить может только автор прошивки, если не заниматься реверсингом прошивки(дело это крайне хлопотное, гораздо затратнее чем написать с нуля по поставленному Т.З.).

В даташите на МК нет разноцветных выводов, ты скачал не оригинальный даташит а по всей видимости какой-то переработанный для удобства кому-то, вот у него и спрашивай. Но в качестве предположения - цветами определяется группы выводов по функциональному назначению - например питания, сброса, универсальных, входы АЦП и т.д.

Лучше скачай оригинальный даташит, но он правда на английском. На контроллер ATMEGA8A даташит идёт одним файлом и полностью исчерпывающий, надо только тщательно его изучить вдоль и поперёк. Прочитав даташит ты узнаешь что и как можно делать буквально с каждым выводом, но с наскоку это не получится. Сначала, бывает очень трудно понять зачем контроллеру две пары выводов питания, и почему обязательно их подключать но это обусловлено техническими ограничениями. Не все доступные выводы можно использовать одинаково эффективно, читай даташит и ужасайся - в реальных схемах практически не получается использовать ни один порт контроллера полностью на все 8 бит, в этом отношении он не из самых удобных.

Да, и имей в виду что MEGA8 и практически всё семейство контроллеров(с индексами 8A 8P 8PA - это несколько разные модификации контроллеров не совместимые на уровне прошивок но совместимые на уровне ассемблера и ЯВУ и небольшими ньюансами в реализации некоторых функций) это весьма простые для понимания контроллеры. Простые как валенок, по сравнению с другими современными контроллерами.
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: AVR studio в вопросах и ответах

Сообщение Jack_A »

Олегыч1 писал(а): по 1 секунде скважностью
Это все равно, что сказать "длиной в 1 килограмм" . Не употребляй слов, значения которых не знаешь. Скважность - отношение периода к длительности импульса, безразмерная величина.
Изображение
Аватара пользователя
Олегыч1
Поставщик валерьянки для Кота
Сообщения: 1941
Зарегистрирован: Пт фев 27, 2015 20:57:08
Откуда: Курск

Re: AVR studio в вопросах и ответах

Сообщение Олегыч1 »

Это все равно, что сказать "длиной в 1 килограмм"
Прошу прощения, видимо не так понял значение слова скважность. В моем понимании это "пробелы" между импульсами. У них соответственно тоже есть временная длинна (ну это я так подумал :) ) Теперь буду знать.
А здесь тот самый датащит на мою атмегу. http://www.atmel.com/images/atmel-8159- ... asheet.pdf
Еще вопрос назрел. Ассэмблер говорят довольно не простой язык программирования для новичка. Я собирался С++ попробовать в освоении для написания несложных прошивок.
1) С помощью этого языка можно исправлять НЕХ -файлы?
2) И, если не затруднит, подскажите пожалуйста, сколько независимых друг от друга светодиодов можно повесить на данную атмегу?
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR studio в вопросах и ответах

Сообщение СКАЗОЧНИК »

:facepalm:

все выводы, которые с буквой Р, вы можете сделать как входом, так и выходом.

Светодиодов можно повесить хоть 1000 штук и больше, главное, знать как вешать и что вам от них нужно еще. :)
Станислав
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: AVR studio в вопросах и ответах

Сообщение Jack_A »

1. С помощью никакого языка нельзя мсправлять НЕХ-файлы. Точнее, их можно исправлять в обычном Блокноте, но для этого квалификация программера должна быть очень выше среднего, до чего еще очень далекооооо. А так - для взлома чужого хексика ( если бы свой, то был бы исходник ) нужно сделать декомпиляцию, и уж в полученный псевдо-исходник вносить правки, потом компилировать заново. Язык - чтобы попробовать и убедиться, что это - не твое, можно начать (и кончить :) Си), а если зацепит блажь серьезно заниматься МК-ми, ассемблер знать крайне желательно, т.к. владение ассемблером предполагает детальное знакомство с "нутром" МК.
2. Столько, сколько есть выходов в МК. Если надо больше, число выходов можно увеличить до любого разумного предела путем подключения внешних регистров.

А вообще очень чувствуется, что автор не заходил сюда : http://radiokot.ru/start/mcu_fpga/avr/ . А зря. Там много разумного, доброго, вечного, как говорил Некрасов.

--------------------------------------------
Не стоит благодарности, достаточно тискануть + :)
Изображение
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR studio в вопросах и ответах

Сообщение СКАЗОЧНИК »

Jack_A писал(а):путем подключения внешних регистров.
Есть еще Чарли мультиплексинг, кроме них.

Да, и на Си++ оооооочень мало кто конкретно программирует МК. Обычно Си и Ассемблер. Остальное от лукавого.
Станислав
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: AVR studio в вопросах и ответах

Сообщение Alexeyslav »

Однако, ATMEL переформатировала всю документацию?
На С++ много под этот контроллер не напишешь - сразу же упрёшься в маленький объём памяти, ему для комфорта подавай ATMEGA328.
Начинать надо однозначно с ассемблера, иначе все остальные языки будут просто магией. Ну или если совсем не хочешь заморачиваться, начинай с ардуины.
Аватара пользователя
Олегыч1
Поставщик валерьянки для Кота
Сообщения: 1941
Зарегистрирован: Пт фев 27, 2015 20:57:08
Откуда: Курск

Re: AVR studio в вопросах и ответах

Сообщение Олегыч1 »

Jack_A благодарю за полезную ссылку. Буду вникать глубже, дабы не задавать глупых вопросов).
Теперь буду знать, что СИ и СИ++ это не одно и тоже) :oops:
Аватара пользователя
ROMan2947
Грызет канифоль
Сообщения: 287
Зарегистрирован: Сб янв 23, 2016 00:59:59
Откуда: Чебоксары

Re: AVR studio в вопросах и ответах

Сообщение ROMan2947 »

axillent писал(а):Любая функция у которой тип возвращаемых данных отличен от void должна завершаться return

Это Си
так вот в чем дело значит ща проверим)))спасибо!
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: AVR studio в вопросах и ответах

Сообщение Jack_A »

СКАЗОЧНИК писал(а): Есть еще Чарли мультиплексинг, кроме них.
Я с этим методом знаком только понаслышке, но сомневаюсь, что все возможные независимые комбинации зажигания диодов могут быть реализованы. А про СИ++ я не говорил, я на нем даже для ПК не пишу :(
Изображение
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: AVR studio в вопросах и ответах

Сообщение Alexeyslav »

Конечно не все комбинации. Максимум можно зажечь половину всех светодиодов, если их переключать то можно зажечь все светодиоды, но уже со скважностью равной 2 - гораздо лучше чем при динамической индикации. Но код который будет управлять этим делом усложнится неймоверно и... возникает простое желание использовать для этих целей регистры висящие на SPI. Код получается простой, поддержка внешних регистров - аппаратная...
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: AVR studio в вопросах и ответах

Сообщение СКАЗОЧНИК »

Да, я так и делал. Динамическая индикация через Чарлиплексинг. 12 светодиодов, которые вращаются вокруг центра, в нужный момент включаются. Эта хреновина даже буквы писала. Вот такой своеобразный телевизер. :) И заняли они у меня всего 4 вывода на МК.
Станислав
Аватара пользователя
Олегыч1
Поставщик валерьянки для Кота
Сообщения: 1941
Зарегистрирован: Пт фев 27, 2015 20:57:08
Откуда: Курск

Re: AVR studio в вопросах и ответах

Сообщение Олегыч1 »

Подскажите пожалуйста еще один момент. На примере атмега 8. Мне необходимо, чтобы после отпускания кнопки лампочки еще выполнили определенную команду. Получается, AVR должен быть все время запитан? Сколько он будет потреблять, когда никакая команда не выполняется ( то есть в покое). И можно ли этот момент как-то обойти, чтобы потребление тока было равно нулю в состоянии покоя?
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: AVR studio в вопросах и ответах

Сообщение Alexeyslav »

А "лампочки" святым духом питаться будут? В даташите есть ответ на этот вопрос. Чем выше рабочая частота тем больше потребляет, и если б это было не так то современные ноуты работали бы от батарей месяцами.
Ответить

Вернуться в «AVR»