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

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


Duhas

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

Немогу понять, чем в m8def.inc ADCSRА отличаетса от ADCSR?

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

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

Я попрробовал прописать так:

OUT ADEN,R16

OUT ADIE,R16

OUT ADSC,R16

и асемблер ето проглотил....

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

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Немогу понять, чем в m8def.inc ADCSRА отличаетса от ADCSR?

Да ни чем это два псевдонима одного адреса. Зачем не знаю.

Хотя могу предположить, но Вам не стоит пока этим голову забивать.

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

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

Я попрробовал прописать так:

OUT ADEN,R16

OUT ADIE,R16

OUT ADSC,R16

и асемблер ето проглотил....

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

А вот логику программы извиняйте не может проверить.

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

А то, что одно и тоже значение присваивается разным регистрам ему по барабану. Программист написал, значит присвою

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

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

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

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

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

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

Значит мне нада прикинуть последовательность нулей и единиц, перевести её в десятеричній код, а уж потом заносить ЕТО число в R16?

Вот как Вам надо сделать

Ldi r16, то что нужно в ADEN

OUT ADEN,R16

Ldi r16, то что нужно в ADIE

OUT ADIE,R16

Ldi r16, то что нужно в ADSC

OUT ADSC,R16

Переводить ни чего ни куда не нужно.

Компилятор понимает все представление числа

Пример:

Запишем десятичное число 170 в разных представлениях

В десятичной форме

Ldi r16,170

В шенадцатиричной

Ldi r16,0XAA

В двоичной

Ldi r16,0b10101010

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

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

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

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

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

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

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

Вопрос НЕ в тему и собласти фантастики: можно ли имея МК, ЖКИ от мобилы, аудио ЦАП и флешку, гдето на 1гб собрать ВИДЕО плеер? ;):rolleyes:

Вопрос по теме:

С етой частью всё ОК:

.include <m8def.inc>

Ldi r16,1

OUT ADEN,r16

Ldi r16,1

OUT ADSC,r16

Ldi r16,0

OUT ADFR,r16

Ldi r16,1

OUT ADIE,r16

А с етой проблема типа Invalid argument of the instruction:

Ldi r16,0

OUT ADSP2,r16

Ldi r16,0

OUT ADSP1,r16

Ldi r16,0

OUT ADSP0,r16

Проверял по примерам, вродибы все правильно, но на практике не работает.....

P.S.

Да, с моими знаниями токо на рынке, рыбой торговать...... <_<

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

Литиевые аккумуляторы EVE Energy и решения для управления перезаряжаемыми источниками тока (материалы вебинара)

Опубликованы материалы вебинара Компэл, посвященного литиевым аккумуляторам EVE Energy и решениям для управления перезаряжаемыми источниками тока.

На вебинаре мы представили информацию не только по линейкам аккумуляторной продукции EVE, но и по решениям для управления ею, что поможет рассмотреть эти ХИТ в качестве дополнительной альтернативы для уже выпускающихся изделий. Также рассмотрели нюансы работы с производителем и сервисы, предоставляемые Компэл по данной продукции. Подробнее>>

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

На вашу строчку OUT ADSP2,r16

Компилятор поругался error: Undefined symbol: ADSP2

Другими словами нет константы с именем ADSP2

Вы словами напишите, какой порт или регистр Вы хотели переслать данные и мы найдем как он называется в файле m8def.inc

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

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

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

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

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

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

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

Ldi r16,low(RAMEND)

OUT SPL,r16

Ldi r16,high(RAMEND)

OUT SPH,r16

Вот инициализация стека

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

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

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

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

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

Я правельно всё понимаю?

А што нащёт ADSP2; ADSP1; ADSP0? В ини файле они так и указываются:

.equ ADPS2 =2

.equ ADPS1 =1

.equ ADPS0 =0 ?!

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

low это макрос который возвращает младший байт(младшие восемь бит) из двухбайтного числа

high это макрос который возвращает старший байт

ADSP2; ADSP1; ADSP0 мнемонические имена битов в регистре. Для битовых операций

http://torrents.ru/forum/viewtopic.php?t=1516662

http://torrents.ru/forum/viewtopic.php?t=1102268

http://torrents.ru/forum/viewtopic.php?t=1019971

http://torrents.ru/forum/viewtopic.php?t=421076

Книги по AVR. Только зарегистрируйтесь на торренсе, что бы скачать

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

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

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

Помогите плиз!

Я изучаю язык Си. Но я застопорился на одном месте, и буксую уже месяц...

Какие команды есть команды для языка Си?

Знаю там delay_ms - задержка...

А какие еще есть?

main void, не понимаю, что это такое...

Вообще какие есть операторы?

заню есть еще такие:

>>, !, #include, но что это такое и как это работает не знаю. Помогите!!!

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

void применительно к функции. Функция не возвращает значение

void main() точка входа в Вашу программу

Извеняйте, но отвечаю только на конкретные вопросы. Книжек по основам си в инете полно

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

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

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

Я изучаю язык Си. Но я застопорился на одном месте, и буксую уже месяц...

Какие команды есть команды для языка Си?

Вот для вас как раз написано - с абсолютного нуля растолклвано с примерами "Язык Си для МК"

Там же книги скачать.

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

Наверное вы,rtfcnf, всёже станите учителем. :-))

А по поводу етого:

http://torrents.ru/forum/viewtopic.php?t=1516662

http://torrents.ru/forum/viewtopic.php?t=1102268

http://torrents.ru/forum/viewtopic.php?t=1019971

http://torrents.ru/forum/viewtopic.php?t=421076

Я там был, уже заблокировали........

Ну а если в кратце, что нужно сделать?

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

Книга Шпака вам поможет.

Она точно есть в библиотеке книг по микроконтроллерам и электронике для скачивания и чтения.

Посмотрите там еще и "Микроконтроллеры AVR для начинающих" и другие книги - более новые.

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

Она точно есть в библиотеке книг по микроконтроллерам и электронике для скачивания и чтения.

Посмотрите там еще и "Микроконтроллеры AVR для начинающих" и другие книги - более новые.

У меня куча книг, толку никакого. Нет НИ ОДНОГО НОРМАЛЬНОГО ПОЯСНЕНИЯ !

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

Ну а если в кратце, что нужно сделать?

минимальный шаблон для Mega8

.include <m8def.inc>

.def		tmp			= r16;регистр временного хранения


;C нулевого адреса во всей серии Mega размещаеться таблица прерываний
.org 0
		rjmp	INSTAL
		reti		;INT0
		reti		;INT2
		reti		;дальше по мануалу можете заполнить название других прерываний
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
;конец таблицы прерываний (не есть хороший стиль зато понятно)

INSTAL:
		Ldi 	tmp,low(RAMEND)
		OUT 	SPL,tmp
		Ldi 	tmp,high(RAMEND)
		OUT 	SPH,tmp
;далее инициализируем порты и остальную перефирию

MAIN:
;а здесь Ваша нетленка (код программы)

Ваши вопросы

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

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

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

Большое спасибо и прошу прощения за весь етот бред. Просто у нас в городе люди или тупые по етому поводу или сильно умные чтоб обяснить. Сам, как видите, отношусь к тупым, а розобратса надо, не стоко для дела, стоко для самого себя. Електроника шагает вперёд, а я стою на месте..... :angry::(:unsure::huh:

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

Большое спасибо и прошу прощения за весь етот бред. Просто у нас в городе люди или тупые по етому поводу или сильно умные чтоб обяснить. Сам, как видите, отношусь к тупым, а розобратса надо, не стоко для дела, стоко для самого себя. Електроника шагает вперёд, а я стою на месте..... :angry::(:unsure::huh:

Пока, мне не надоело, спрашивайте.

В наше время и асемблер :lol: удивило.

Сам последний раз на асме года три назад писал если не не больше.

Если есть почтовый ящик и готовы принять мегов 100 книги могу выслать. (не очень быстро так как гдето на cd лежат)

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

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

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

За кусок программы спасибо, а чтомне делать то с моей проблемой:

Ldi r16,0

OUT ADSP2,r16

Ldi r16,0

OUT ADSP1,r16

Ldi r16,0

OUT ADSP0,r16

Invalid argument of the instruction ?

По поводу книг, можно и спасибо.

rgnatenco@mail.ru

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

Команда OUT первым аргументом принемает АДРЕС РЕГИСТРА, а ADSP0- ADSP2 название битов в регистре.

Посмотрите как я сделал для лучшего понимания и повторите для своего регистра

.include <m8def.inc>

.def		tmp			= r16;регистр временного хранения

;данные для инициализация регистра ADMUX
.equ		ADMUX_INIT1	= 0b00000000;ПОСТАВТЕ ПРАВИЛЬНО БИТЫ мне влом мануал читать
;							  ||||||||____ MUX0 выбор канала
;							  |||||||_____ MUX1 выбор канала
;							  ||||||______ MUX2 выбор канала
;							  |||||_______ MUX4 выбор канала
;							  ||||________ пусто
;							  |||_________ ADLAR выравневание
;							  ||__________ REFS0 источник опорного напряжения
;							  |___________ REFS1 источник опорного напряжения


;C нулевого адреса во всей серии Mega размещаеться таблица прерываний
.org 0
		rjmp	INSTAL
		reti;INT0
		reti;INT2
		reti;дальше по мануалу можете заполнить название других прерываний
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
		reti
;конец таблицы прерываний (не есть хороший стиль зато понятно будет Вам)

INSTAL:
		Ldi 	tmp,low(RAMEND)
		OUT 	SPL,tmp
		Ldi 	tmp,high(RAMEND)
		OUT 	SPH,tmp

;инициализируем регистр ADMUX (канал,выравневание,опорное напряжение)
		ldi		tmp,ADMUX_INIT1
		out		ADMUX,tmp

MAIN:
;а здесь Ваша нетленка (код программы)

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

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

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

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

Вот моя "набранная" часть :

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

А с остальным я вродебы розобрался.

post-66200-1238044337_thumb.png

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

Похоже что у вас или странный или не тот инклуд в начале програмы использован... Выпишите содержимое файла m8def.inc если вы его вообще подключаете... И что за компилятор используете???

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

Это снова я. Вот скачал книги, которые Вы мне дали. Но там не МК программируются, а просто программирование на языке Си. Я изучаю С++.

Но простое программирование на этом языке мне вобщем то не нужно. Нужно только уметь писать программы для AVR МК. Что мне делать?

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

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

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

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

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

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

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

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

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

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

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

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