Рубрики
Метки
avrdude AVR Studio Bootloader C Dallas DC-DC Eagle EEPROM Ehternet FLASH FUSE GPIO GUI HD44780 HopeRF i-button I/O i2c IAR IDE IGBT IIC ISIS Proteus ISP JTAG Keil LabView LAN LCD Linux MC34063 MC34068 Microchip MOSFET MSC-51 MSP430 NE555 Palm Pascal PC PIC PinBoard PinBoard II PLC PLL PR PWM RC RIGOL RIGOL 1042CD RS232 RTC RTOS smd STM32 SWD TopoR TouchSreen TSOP TWI UART USART USB USI WG12864 ZIF ZigBee АРУ АЦП Авто Аккумуляторы Акселерометр Алгоритм Аналог БП БПФ Быстрый старт ВЧ Видео Выбор Газовый паяльник Генератор Гоню Дарлингтон Датчик Двигатели Демонтаж Демоплата Диод Друзья Жало Задачка Измерения Импульсные Индуктивность Инструмент Интерфейс Ионистор Клавиатура Коммерческая разработка Компаратор Компас Конденсатор Конкурс Конфигурация Корпус ЛУТ Логический анализатор Лужение МК Магнетизм Макровидео Макро язык Манипулятор Мелочи Механика Микроволна Микроконтроллер Моддинг Модуль Монтаж Мультиметр Наводка Начинающим ОУ Обработка сигналов Операционная система Описание Оплетка Опорное напряжение Оптимизация Опторазвязка О сайте Основы Осциллограф От Автора Отверстия Отладка Пайка Память Партнерство Паяльная станция Паяльник Печатная плата Питание Порт Прерывания Прибор Прикол Проверено на себе Программатор Программирование Протокол Рабочее место Радиолюбительские Технологии Радиопередача Рацуха Реактив Регистр Резистор Робот Светодиоды Силовая электроника Симистор Сонар Сообщество Софт Схемотехника ТРИЗ Таблица переходов Таймеры Терминал Типы выходов Тиристор Транзистор Трансивер Трассировка Трюки Ультразвук Умный дом Фен Физика Фильтры Флаги Флюс Фотодиод Фототранзистор Халява ЦАП Цифра Часы ШИМ Шаговый двигатель Шасси Шунт Эксперимент Электропривод Энкодер Язык Си самопал
Архив метки: Язык Си
AVR Studio 4.19 и AVR Toolchain
Обновился я тут недавно до AVR Studio 4.19 и спустя некоторое время обнаружил, что все проекты, что были на Си, отказываются компилироваться. Либо компилятся, но не отлаживаются. После недолгого выяснения и теребления народа из сообщества выяснилось, что WinAVR как самостоятельный … Читать далее
Организация древовидного меню
Почти для всех проектов на микроконтроллере с экранчиком требуется система меню. Для каких-то проектов одноуровневое, для других — многоуровневое древовидное. Памяти, как обычно, мало, поэтому хочется запихнуть все во флэш. Попутно, из проекта в проект, развивалась своя псевдоОС — таймеры, … Читать далее
AVR. Учебный Курс. Кусочно-линейная аппроксимация
Часто бывает так, что приходится обрабатывать жутко нелинейные величины, задаваемые каким-нибудь извращенным законом. Простейший пример — датчики расстояния SHARP GP2D12. Только поглядите на его характеристику: Сам черт ногу сломит, а ведь нам бы неплохо иметь выход в человеческих величинах, ну … Читать далее
Рубрика: AVR. Учебный курс
Метки: Assembler, Алгоритм, Датчик, Программирование, Язык Си
Комментарии (48)
AVR. Учебный Курс. Работа на прерываниях
Одним из серьезных достоинств контроллеров AVR является дикое количество прерываний. Фактически, каждое периферийное устройство имеет по вектору, а то и не по одному. Так что на прерываних можно замутить кучу параллельных процессов. Работа на прерываниях является одним из способов сделать … Читать далее
AVR. Учебный Курс. Программирование на Си. Работа с памятью, адреса и указатели
Указатель. Один из самых мутных для понимания и в то же время совершенно необходимый инструмент любого языка программирования. Вызывает массу вопросов и непонимания на начальном этапе обучения. Итак, начну по порядку. Инфа, любая инфа (команды, данные) лежит в памяти по … Читать далее
AVR. Учебный Курс. Программирование на Си. Атомарные операции.
Не раз и не два сталкивался с утверждением, что изучать ассемблер микроконтроллера это всего лишь пустая трата времени, дескать все можно сделать на Си, а если сильно надо то комманды можно и в даташите поглядеть. Сейчас я одним маленьким примерчиком … Читать далее
AVR. Учебный Курс. Программирование на Си. Часть 4
Теперь глянем на нашу программу, скомпилим, прошьем, поглядим как выполняется. Зашиваю все через AVR Prog в Pinboard и смотрю на поведение LED1 и LED2. LED1 мигает как и задумано, но стоит мне попытаться зажечь LED2 отправкой с терминала «1″, как … Читать далее
AVR. Учебный Курс. Программирование на Си. Часть 3
Фоновую программку мы сделали, интерфейс связи с компом инициализировали, надо бы сделать так, чтобы наш контроллер мог принимать сигналы от компа. Проще всего это сделать на прерываниях. Что такое прерывание? Прерывание это аппаратное событие, например, байт пришел в порт, на … Читать далее
AVR. Учебный Курс. Программирование на Си. Часть 2.
Вторая часть марлезонского балета, точнее введения в программирование на Си под микроконтроллеры. Структура программы Ну вот, МК у тебя уже кое что сделал. И хоть внешне ничего не видно, но внутри у него произошли изменения — передатчик стал готов к … Читать далее
AVR. Учебный Курс. Программирование на Си. Часть 1
Я не раз и не два говорил, что изучение МК надо начинать с ассемблера. Этому был посвящен целый курс на сайте (правда он не очень последовательный, но постепенно я его причесываю до адекватного вида) . Да, это сложно, результат будет … Читать далее



