|
Getting started или faq по AVR |
|
|
|
Jun 21 2006, 09:03
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
По итогам длительной и малорезультативной борьбы с курсом [banned] , возникла идея вышибить клин, клином т.е. сделать документ освещающий основные аспекты работы с AVR. Предварительный план и согласие нескольких человек присутсвует здесь: http://electronix.ru/forum/index.php?showtopic=16503&st=165план писался сходу, по впечетлениям от личных проблем, и вопросов возникающих у новичков в этом разделе. В этой ветке хотелось бы увидеть коррективы к плану и список вопросов ответы на которые хотелось бы видеть в подобном документе. Особо хотелось бы видеть вопросы новичков, ибо вещи которые кажутся опытному человеку самими собой разумеющимися, для новичка могут представлять собой непреодолимую проблему. Ну и желающие принять участие тоже приветствуются
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
 |
Ответов
(150 - 164)
|
Sep 25 2006, 07:23
|

За битами по регистрам гоняюсь
  
Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446

|
Цитата(SasaVitebsk @ Sep 25 2006, 03:04)  Цитата(Nanobyte @ Sep 25 2006, 01:44)  Цитата(SasaVitebsk @ Sep 25 2006, 02:33)  Может кто сконвертит в PDF или переразведёт в PCAD. Лучше выложить в нескольких форматах.  Смогу переразвести в PCAD, но где итоговая схема? Ничего не понимаю.  В ближайшее время нарисую недостающие компоненты и сделаю схему и PCB в PCAD-2004.
--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
|
|
|
|
|
Sep 25 2006, 11:24
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(singlskv @ Sep 24 2006, 23:29)  Цитата(bodja74 @ Sep 24 2006, 22:20)  http://Nix-06.nm.ruВыложил примеры кода на асме-критикуйте. Заметьте, не я первым это предложил ............ Не забывайте, Вы собрались написать Getting started...  Скучно было бы жить без критиков  За reti ,извиняюсь ,как всегда прохлопал ушами.Сохранение Sreg там необязателено,так как нет операций сравнения,но допишу с сохранением регистров,чтобы не раслаблялись. Коменты с правой стороны у меня автоматом выдает мой редактор,но коменты еще добавлю,(просто примеры накатал за пару минут )более детально проверю код и добавлю схемы,так как там пару примеров для работы между МК.Одни и теже регистры в прерываниях - это нормальное явление,иногда их нужно сохранять иногда нет. Цитата Пункт "примеры кода" лучше назвать "примеры программ". Необходимо ввести ещё один уровень (как мне кажется): "Примеры программ\Примеры на ASM\Аппаратный I2C", "\...\Матричная клавиатура 4х4" ну и т.д Сделаем. Цитата Нельзя допускать, чтобы были примеры одного человека. Один человек - один подход, а это не совсем правильно даже если этот человек очень грамотный. Пускай будут разные примеры и люди. Будем ждать примеры других человеков  Цитата Считаю что схема "утверждена". Внёс последние изменения. Добавил светодииод питания по просьбе трудящихся. (Думаю он не помешает) Ну и подчистил хвосты. Помещаю в ZIP варианте по просьбе. Может кто сконвертит в PDF или переразведёт в PCAD. Лучше выложить в нескольких форматах Тогда располагаю,архив в нескольких форматах расположу по готовности.
|
|
|
|
|
Sep 25 2006, 12:46
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(bodja74 @ Sep 25 2006, 15:24)  Цитата(singlskv @ Sep 24 2006, 23:29)  Цитата(bodja74 @ Sep 24 2006, 22:20)  http://Nix-06.nm.ruВыложил примеры кода на асме-критикуйте. Заметьте, не я первым это предложил ............ Не забывайте, Вы собрались написать Getting started...  Скучно было бы жить без критиков  Одни и теже регистры в прерываниях - это нормальное явление,иногда их нужно сохранять иногда нет. Код ;SUBI INT0 SUBI_INT0: push R16 in R16,SREG push R16 push R20 <---- А теперь у нас R20 бывает только +-1 ????????? subi R20,255-$01 ;R20+$01 out PORTB,R20 ;PORTB=R20 pop R20 <----- pop R16 ;END SUBI out SREG,R16 pop R16 reti Для второго прерывания предлагаю написать так: Код SUBI_INT1: in R2,SREG <---- сохраняем SREG в зарезервированном для этого R2 subi R20,$01 ;R20-$01 out PORTB,R20 ;PORTB=R20 out SREG,r2 reti Чтобы показать разные варианты сохранения SREG в прерываниях.
|
|
|
|
|
Sep 25 2006, 15:51
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(singlskv @ Sep 25 2006, 15:46)  Код push R20 <---- А теперь у нас R20 бывает только +-1 ????????? Угу,это тот случай когда сохранять и не нужно.  Цитата Для второго прерывания предлагаю написать так: Код SUBI_INT1: in R2,SREG <---- сохраняем SREG в зарезервированном для этого R2 subi R20,$01 ;R20-$01 out PORTB,R20 ;PORTB=R20 out SREG,r2 reti Чтобы показать разные варианты сохранения SREG в прерываниях. Тогда какого нам нужно и Sreg сохранять,путаете Вы меня.  Давайте лучше разные варианты сохранения будем расматривать в отдельной статье по прерываниям, (я люблю допустим в оперативке сохранять,так как ее гораздо больше чем регистров,которых мне вечно нехватает.) я там потихоньку, ее рисую ,через недельку -может раньше выложу.И обсудим более детально, так как на этих вещах многие спотыкаются. Цитата Этот сайт посвящен чайникам,желающим освоить программирование микроконтроллеров АВР, но не знающим с чего начать. Ну вот я же и недаром такой раздел ввел,может кто напишет с чего начать.Так мои вкусы могут серьезно отличаться от других ,могут возникнуть пререкания,реплики и недовольства.
|
|
|
|
|
Sep 25 2006, 15:52
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 16-03-06
Пользователь №: 15 312

|
Цитата(Nanobyte @ Sep 25 2006, 11:23)  Цитата(SasaVitebsk @ Sep 25 2006, 03:04)  Цитата(Nanobyte @ Sep 25 2006, 01:44)  Цитата(SasaVitebsk @ Sep 25 2006, 02:33)  Может кто сконвертит в PDF или переразведёт в PCAD. Лучше выложить в нескольких форматах.  Смогу переразвести в PCAD, но где итоговая схема? Ничего не понимаю.  В ближайшее время нарисую недостающие компоненты и сделаю схему и PCB в PCAD-2004. Ответьте чайнику! В схеме NIKE-06-01 отсутствуют номиналы резисторов и емкостей, не указана частота кварца. Хотелось бы иметь законченную схему.
|
|
|
|
|
Sep 25 2006, 16:29
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(bodja74 @ Sep 25 2006, 19:51)  Тогда какого нам нужно и Sreg сохранять,путаете Вы меня.  Неа, не путаю. subi R20,$01 меняет SREG, и любая проверка флагов в основной программе может работать неправильно. Конечно Ваш код будет работать и без этого, но зачем вводить в заблуждение новичков
|
|
|
|
|
Sep 25 2006, 16:50
|
Участник

Группа: Новичок
Сообщений: 41
Регистрация: 20-08-06
Пользователь №: 19 688

|
повторы какие -то
Сообщение отредактировал artem100 - Sep 25 2006, 16:52
|
|
|
|
|
Sep 25 2006, 16:51
|
Участник

Группа: Новичок
Сообщений: 41
Регистрация: 20-08-06
Пользователь №: 19 688

|
Цитата(genviktr @ Sep 25 2006, 18:52)  Ответьте чайнику! В схеме NIKE-06-01 отсутствуют номиналы резисторов и емкостей, не указана частота кварца. Хотелось бы иметь законченную схему.  В чем прелесть этого чипа Дело в том что схема логическая и точно соблюдать номиналы не обязательно кварц с емкостями обвязки для ATmegaXXX вообще не обязателен достаточно колодку для кварца на всякий случай (на моей фотографии чип работает на 4MHz без кварца) я обвел зеленым цветом обязательные узлы номиналы вольные как для любой логической микросхемы я предпочитаю обходится везде 1 кОм b и емкостями 0,1mkF Если уже есть стабилизированный источник питания, то не паять верхнюю зеленую часть ------------------------------------- Итак достаточно запаять 1 колодка на 40pin для ATmega16 2 RESET резистором R1 1kOm на 5V 3 6pin JP1 SPI для программирования 4 10pin разьем для внешних соединений хотябы один все
Сообщение отредактировал artem100 - Sep 25 2006, 16:53
Эскизы прикрепленных изображений
|
|
|
|
|
Sep 25 2006, 17:25
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 16-03-06
Пользователь №: 15 312

|
Цитата(artem100 @ Sep 23 2006, 09:57)  Цитата(Nanobyte @ Sep 21 2006, 22:55)  2. Лучше поставить электронный предохранитель (Polyswitch от Bourns, или подобный) на 0.5-1 А.Обратно включенный защитный диод (супрессор) типа 1.5КЕxx уж точно по питанию спалить ничего не даст.
электрическая часть законченна механическая часть достойна отдельной темы в программируемой части бардак куда уж проще Artem100. Ответьте пожайлуста чайнику. Куда подключён анод VD1 и LED программатора STK200 в схеме MEGA16.
Сообщение отредактировал genviktr - Sep 25 2006, 17:36
|
|
|
|
|
Sep 25 2006, 17:56
|
Участник

Группа: Новичок
Сообщений: 41
Регистрация: 20-08-06
Пользователь №: 19 688

|
Цитата(genviktr @ Sep 25 2006, 20:25)  Artem100. Ответьте пожайлуста чайнику. Куда подключён анод VD1 и LED программатора STK200 в схеме MEGA16.  к 5V стабилизатора 5V на плате микропроцессора питать буфер от LPT1 порта не получиться собственно буфер не обязателен можно сразу LPT1<->SPI в программаторе avreal32.exe есть специальная клюшка для такого дешевого провода минус в таком что надо после программирования отключать а с буфером STK200 не надо как только программка программатора отпускает RESET микропроцессор сразу же запускается с начала программы я применяю его потому что нотебук не выдает уровень достаточный для устойчивого програмирования а также защищаю свой килобакс от ошибок где-то внизу мой первый "супер навороченный" программатор в 7 проводков между LPT1 и 20pin колодкой для AT90S2313 я даже его модернизировал припаял шлейф в 15см
Сообщение отредактировал artem100 - Sep 25 2006, 18:27
Эскизы прикрепленных изображений
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|