Рейтинг
37.52
голосов: 39
avatar

AVR

О блоге

Описание ядра и периферии контроллеров AVR. Все, что касается работы с AVR семейством.

Администраторы (1)

Модераторы (0)

Модераторов здесь не замечено

Читатели (268)

dcoder vvzvlad ploop hexFF foxit _YS_ Vasil Tabke XANDER marvin_yorke Ultrin WildCat hexanaft zb3k Vga Alatar t0x193n mzw Reverb tda2030

Все читатели блога

Учебный курс. Микро Паскаль. Условия и циклы.

AVR
Статья №4
Наверное самыми востребованными операторами на любых языках программирования являются циклы и условия. Их то мы и разберем. Все циклы и условия относиться к структурным операторам.


Читать дальше
  • +3
  • 20 марта 2011, 20:11
  • Rom

USB флешка на ATmega8 и V-USB. От идеи к готовому устройству...

AVR
Прочитав пару статей других пользователей, захотелось самому начеркать чего-то полезного для остальных. Как все поняли из названия, речь пойдет о создании USB mass storage device класса на програмной реализации V-USB.



Читать дальше

Учебный курс. Микро Паскаль. Типы данных. Часть вторая.

AVR
Статья №3.
В прошлой статье мы ознакомились с предопределенными типами данных. Продолжаем.
В Паскале, вместе с предопределенными типы данных существуют и типы данных, определенные пользователем. Описание нового типа начинается с зарезервированного слова type. Несколько примеров объявлений новых типов.


Читать дальше
  • +1
  • 14 марта 2011, 21:20
  • Rom

Ассемблерные вставки в AVR-GCC

AVR
Практически всегда, когда в проекте задействованы АЦП, встаёт необходимость провести математическую обработку того, что там нацифровалось. Мат. обработка, в зависимости от задачи, может варьироваться от примитивного «сложить два измерения и поделить пополам (ака сдвинуть на разряд вправо)» до всяких там БПФ, цифровых фильтров и далее по списку. Если математика чуть сложнее, чем «найти максимум за период», а измерения непрерывные, то частенько встаёт вопрос в скорости обработки. Собственно говоря, это вообще-то отправная точка для выбора платформы, на которую будет опираться проект, тут надо здраво оценить потребности задачи и возможности различных платформ. Конечно, для ядрёной числодробилки лучше взять какой-нибудь DSP, а может даже и FPGA. А если наша числодробилка не особо ядрёная, зато требуется минимизировать энергопотребление этой фигни, да и конечная стоимость должна быть не как у самолёта? А ещё есть такие факторы, как опыт разработчика, доступность комплектухи и т.д. Короче если мы решили, что мозгами в нашем проекте должна работать старая добрая AVR, но мозга у неё не хватает, на то что бы осмыслить наш алгоритм, объяснённый ей на языке C, придётся объяснять на Assembler`е.


Читать дальше

Учебный курс. Микро Паскаль. Типы данных.

AVR
Статья №2

Доброго времени суток.

Мы продолжаем. Сразу хочу оговорить важный момент. Я пишу этот курс специально для начинающих. Судя по вопросам, заданным мне, у новичков возникают такие вопросы, которым в большинстве книг вообще не уделяется внимания. Однако они возникают. Буду постепенно все расписывать начиная с самых азов. Может потом, доберусь до указателей и всего остального. Так что наберитесь терпения.

А сегодня мы разберем типы переменных.


Читать дальше
  • +6
  • 10 марта 2011, 20:58
  • Rom

mikroPascal for AVR. Особенности языка.

AVR

Предисловие

Поработав с mP поплотнее, я понял, что эта статья излишне длинная. На самом деле, о нем достаточно знать это.

Введение

При освоении нового компилятора уже знакомого языка, особенно под новую систему, возникает вопрос — а чем оно отличается от уже знакомого? Этот вопрос, применительно к компилятору mikroPascal for AVR (mP) фирмы mikroElektronika я и попробую осветить.


Читать дальше
  • +3
  • 09 марта 2011, 03:25
  • Vga

Контроллер линейки пироприемников на AVR

AVR
Линейки пироприемников
В последние пару недель игрались на работе с интересным прибором — линейкой пироприемников HPL256-I-100. Девайс довольно занятный, но простой. Суть в чем: имеется массив пироэлектрических элементов. Каждый элемент чувствителен к изменению собственной температуры. Причем на его обкладках возникает заряд, пропорциональный изменению температуры. Производители пошли дальше, поместив в корпус: преобразователь заряд-напряжение, интегратор, конденсаторы sample&hold, мультиплексор. Внутреннее устройство линейки пироприемников



Читать дальше

Учебный курс. Микро Паскаль. Начало

AVR
И так я начинаю цикл статей о Микро Паскале.
История языка программирования.
Паскаль уходит корнями еще в 1950 – 1960 годы прошлого века. Тогда существовал алгомитрический язык Алгол, который и стал прародителем Паскаля. Время рождения языка Паскаль начало 70х годов прошлого века. Его разработчиком был Никлаус Вирт, собиравшийся использовать этот язык для обучения своих студентов. Паскаль, по сравнению с Алголом был проще, яснее имел более продвинутые возможности обработки данных и имел встроенные процедуры ввода-вывода. В свое время Турбо Паскаль от фирмы Borland являлся расширением стандарта языка. Он уже содержал интегрированную среду разработки. И благополучно дожил до версии 7.1. (По крайней мере известных мне). Турбо Паскаль, в свою очередь положил начало новой линейки продуктов от Borland – Delphi, системе разработки приложений для Windows. Имеются и другие реализации языка, в том числе и на различные платформы.


Читать дальше
  • +7
  • 08 марта 2011, 20:26
  • Rom

Сниффер/эмулятор I2C и 1-wire

AVR
Этеншн!
Это первая версия устройства, и она не лишена недостатков. В т.ч. иногда девайс зависает по непонятным причинам. Если честно мне лениво было отлавливать этот баг. Зависает не часто и решается перезагрузкой.

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

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

И вот, дабы упростить/ускорить процесс отладки, я решил сделать i2c сниффер. Первоначально задача была такая: прослушивать I2C линию и отправлять лог в компьютер. Когда это было реализовано, выяснилось, что в Tiny2313 осталось еще полно свободного флеша. Поэтому был придуман дополнительный функционал.


Читать дальше