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

Примеры кода для AVR


Duhas

Рекомендуемые сообщения

С кокого микроконтроллера лучше начать? (желательно с перезаписью)

Какой программатор лучше собрать?

Я сам начинающий... Начал с Atmega32.

Программатор собрал по этой схеме, в связке с PonyProg2000 работает отлично...

Программирую на С, использую CodeVisionAVR в связке с AVR-Studio.

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

Нензаю туда куда нужно пишу , или нет , но я тут случайно наткнулся на етот сайт может комуто будет полезно .

для себя там нашол просто бездну полезного, огромный труд зделаный одним человеком..

http://avr123_nm_ru/

Изменено пользователем Pippeytz
Я узнал что уменя есть огроманя семья:
Монитор , системный блок, в сетке воткнут проводок;
Без инета жить нельзя;
Ето - Родина моя!
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

подскаите пожалуйста как правильно прицепить цепь первоначального сброса (к ножке ресет эстественно)? я чет никак не могу найти ни одного примера.

чем шире кругозор, тем тупее угол обозрения

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

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Спасибо. :)

я гдето читал, что этот конденсатор нужно отключать при програмировании. Это так?

чем шире кругозор, тем тупее угол обозрения

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

  • 4 недели спустя...

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Наверное стоит снять при прошивке, так как он будет задерживать лог. сигналы на ножке reset.

Хочу AVR с тактовой частотой 100мгц.

Ну вот! Я же говорил - ноль... а ты единица... единица...

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

  • 3 месяца спустя...

Подскажите пожалуйста, какой программатор использовать для прошивки AVR ATtiny13 в среде IAR Embedded Workbench?

Остался программатор от Algorithm Buildera ("5 проводков"), он подойдет?

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

  • 3 месяца спустя...

Товарищи! РЕшил изучить поверхносто МК...

имею атмегу8 и программатор вот этот:

http://ic-prog.com/funcard.jpg  (stk200)

какая гарантированно программа может его прошить?

хочу удостовериться для начала что всё правильно спаял.

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

Так я ведь просто к контактам подпаяль и всё.

ну т.е к соотв. выводам подпаял.

говорят понипрог очень хорошая,но что то у меня какието ошибки выдавала она

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

  • 4 недели спустя...

Доброго времени суток. Скажу сразу и чесно, в програмировании я ЧАЙНИК. Надумал сам собрать осцылограф на мега8 но не хватает знаний.

Для роботы выбрал AVR Simulator IDE, уже накачал кучу литературы и почти безтолку.

Вопрос, будет ли работать такая последовательность:

1.Блок иницыализацыи "железа", общий зброс.

2.Блок опроса клавиатуры.

3.Блок вычислений частоты, амплитуды, скважности.

4.Блок вывода на ЖКИ.

5.Блок временного сохранения измерений.

Если ето будет работать, то первый вопрос: Как записать (текст команды) иницыализацию и установить еденицы в нужные разряды АЦП и прочих модулей?

Люди помогите, очень нужно!!!!! :o:huh::mellow::blink::(

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

Сразу же хочу предупредить, что я чайник в физике высоких энергий. Но надумал Я тут собрать андроидный колорайдер накупил катушек, накачал разной литературы, но не хватает знаний. Вообще разместил я катушки по кругу и что делать дальше не знаю, подскажите …..

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

А то, как то на курсовик смахивает или еще не сезон? :lol:

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

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

Спасибо за ответ.

Уменя есть даташети и литература с подробными описаниями архитектуры и регистров, но там НЕТУ ТОЛКОВЫХ ПРИМЕРОВ

Я уточню свой вопрос: Для начала меня интересует синтаксис иницыализацыи отдельных битов, таких как ADEN, ADSC, ADFR, ADPS2;ADPS0

Тоже самое по портам ввода/вивода, таймерам и SPI

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

Спасибо за ссылку.

Неспорю, проект интересен, но суть радиолюбителя-коструктора в том, чтоб самому чтото придумать и довести до стадии готового прибора

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

Спасибо за ссылку.

Неспорю, проект интересен, но суть радиолюбителя-коструктора в том, чтоб самому чтото придумать и довести до стадии готового прибора

Читаем тут http://easyelectronics.ru/avr-uchebnyj-kur...ovanie-acp.html что не понятно спрашиваем.

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

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

Читаем тут http://easyelectronics.ru/avr-uchebnyj-kur...ovanie-acp.html что не понятно спрашиваем.

Прочитал, понял впринцыпе все. вопрос вот вчом: post-66200-1237737108_thumb.jpg

ЧТО Я ДЕЛАЮ НЕТАК ?

С вторым примером аналогично.

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

Я с AVR Simulator IDE не работал, но сразу возникает вопрос, а откуда компилятор знает, что такое «ADCSRA»

Можно предположить, что он где-то должен, определен быть. :lol:

В AVR Studio для каждого контролера есть файлы определения мнемонических имен и их реальных адресов. Если хотите использовать мнемонические имена регистров и портов его нужно подключить в проект

Например для mega8 это будет выглядеть так .include <m8def.inc>

Еще раз, все справедливо для студии. У вас синтаксис может отличаться.

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

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

ЧТО Я ДЕЛАЮ НЕТАК ?

Я думаю вам нужно посмотреть примеры к среде в которой пишите - и все прояснится.

Кроме того советую АСМ примеры посмотреть в архиве

Архив примеров программ на ассемблере ASM для AVR из AVRstudio и VMLAB

Очень хорошо написаны !

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

Доброго времени суток. Уважаемые знатоки, у меня возник очередной вопрос (точнее несколько):

1. Что нужно ещё иницыализировать кроме АЦП и портов?

2. Какой нужен интерфейс для внутрисхемного програмирования, и как его "запустить"?

3. Какие необходимо выполнить прерывания, тоесть что мне нужно выбрать из таблицы?

4. И вообще, я попробовал писать, вот что получаетса:

.include <m8def.inc> ;модуль конфигурацыи

.equ $07=0b01000101

.equ $026=0b0101010001010101

.equ $038=0b0101010101010101 ;порти B,C,D

.equ $037=0b0101010101010101

.equ $036=0b0101010101010101

.equ $035=0b0001010101010101

.equ $034=0b0001010101010101

.equ $033=0b0001010101010101

.equ $032=0b0101010101010101

.equ $031=0b0101010101010101

.equ $030=0b0101010101010101

.equ $03E=r1 ;-стек

ЕТО впринцыпе правельно или нет?

5.Правельно ли я указал стек?

А ещё вопрос по поводу области BOOT, что ето, зачем и как ним пользоваться?

Изменено пользователем 1408
Ссылка на комментарий
Поделиться на другие сайты

1.Что нужно ещё иницыализировать кроме АЦП и портов?

Давайте оставим пока этот вопрос.

2. Какой нужен интерфейс для внутрисхемного програмирования, и как его "запустить"?

Извеняйте, но с Вашими знаниями лучше пока оставить и этот вопрос

3. Какие необходимо выполнить прерывания, тоесть что мне нужно выбрать из таблицы?

И здесь обождите

4. И вообще, я попробовал писать, вот что получаетса:

.include <m8def.inc> ;модуль конфигурацыи

m8def.inc не модуль конфигурации если Ваш компилятор его без ошибок проглотил, это уже хорошо.

Теперь внимание объясняю еще раз:

Разберем две Ваших любимых команды из Вашего любимого макроса

Первая

LDI R16,@1

Загрузка константы в РОН

Здесь всё просто

Первый операнд

R16 – мнемоника регистра используемая компилятором

Второй операнд

Число от 0 до 255

При выполнении число записывается в регистр R16

Теперь рассмотрим вторую команду

OUT

Первым операндом в нем указывается адрес регистра, куда будем пересылать данные (тоесть приемник)

Вторым операндом мы указываем источник откуда мы пересылаем данные, причем источником может быть, только РОВ(ну вы это знаете)

Теперь ВНИМАНИЕ:

Ваша команда должна выглядеть вот так:

OUT $06,R16

Но запоминать адреса тяжело, поэтому в компиляторах была придумана директива .equ

Что она делает: она определенной константе (числовому значению) присваивает имя (синоним, мнемонику)

Смотрим файл m8def.inc (txt он по сути) и мы видим строку

.equ ADCSRA =$06

Тоесть когда мы напишем

OUT ADCSRA,R16

компилятор найдет что такое ADCSRA и будет её транслировать как

OUT $06,R16

Теперь Вы поняли что Вы написали ниже полную …

.equ $07=0b01000101

.equ $026=0b0101010001010101

.equ $038=0b0101010101010101 ;порти B,C,D

.equ $037=0b0101010101010101

.equ $036=0b0101010101010101

.equ $035=0b0001010101010101

.equ $034=0b0001010101010101

.equ $033=0b0001010101010101

.equ $032=0b0101010101010101

.equ $031=0b0101010101010101

.equ $030=0b0101010101010101

.equ $03E=r1 ;-стек

ЕТО впринцыпе правельно или нет?

Ответил

5.Правельно ли я указал стек?

Нет

В файле m8def.inc стек определен вот так

.equ SPH =$3e

.equ SPL =$3d

Попробуйте теперь сами эго инициализировать

А ещё вопрос по поводу области BOOT, что ето, зачем и как ним пользоваться?

Пока даже не думайте про это

P.S. Знающий народ! Ну что получиться из меня препод?

P.P.S. Да сам знаю что НЭТ

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

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

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

Да, с моими знаниями, я пойду далеко.

Во всяком случае асемблер на весь мой бред не ругается (пока)

Вам удалось инициализировать стек и АЦП? Поняли Вы что я написал? Если да попробуем дальше если нет могу попробывать повторить. Или на этом закончим?

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

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

Тоесть если я пишу OUT ADCSR,R16, единица заганяетса полностю для всех битов (имею ввиду ADEN, ADIE, и т.д. ) ?

Я правильно понял?

И ещё асемблер ругаетса на выражение: LDI R16, @1 ,типа Invalid argument of the instruction.

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

Тоесть если я пишу OUT ADCSR,R16, единица заганяетса полностю для всех битов (имею ввиду ADEN, ADIE, и т.д. ) ?

Я правильно понял?

И ещё асемблер ругаетса на выражение: LDI R16, @1 ,типа Invalid argument of the instruction.

OUT ADCSR,R16 - значение регистра r16 копируется в регистр ADCSR

а единицы или нули это как Вы в R16 записали.

Всё это из-за архитектурных ограничений ядра, ну нельзя константу писать в часть регистров

LDI R16, @1 смотрите синтаксис написание макросов. Я по памяти не помню

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно.

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

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

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

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

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

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

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