Страница не найдена — MicroPi
05.06.2021Orange Pi моделиКомментарии: 317Одноплатный мини компьютер Orange Pi R1 Plus представляет собой улучшенную версию модели Orange Pi R1. Новая плата оснащена более производительным процессором (SoC) — Rockchip RK3328 вместо Allwinner h3+, имеет в четыре раза больше оперативной памяти (1 Гб DDR4), поддержку Gigabit Ethernet вместо Fast Ethernet, но нет встроенного Wi-Fi, поскольку решили предоставить USB-порт вместо внешних Wi-Fi адаптеров. Кроме …
Перейти
15.11.2020Arduino проектыКомментарии: 204На плате Maixduino есть 3 последовательных порта (UART): «/dev/uart1», «/dev/uart2» и «/dev/uart3». Первый порт («/dev/uart1») используется FreeRTOS как порт для отладки и прошивки. По этому не рекомендуется использовать, а два других порта можно использовать для обмена данными с внешними устройствами. В этом уроке настроим последовательный порт (UART), напишем пример программы и будем передавать данные между Maixduino …
Перейти
Raspberry Pi Compute Module 4 (CM4) представляет собой Raspberry Pi 4 Model B в гибком форм-факторе, предназначенный для разработчиков. Вычислительный модуль 4 построен на том же SoC Broadcom BCM2711, что и Raspberry Pi 4, оперативной памяти в базовой версии всё так же 1 ГБ, но есть версии с 2, 4 и 8 ГБ. Опционально может …
Перейти
30.08.2020Arduino проектыКомментарии: 171В этом уроке напишем первую программу, научимся считывать значение цифровых входов и устанавливать состояние выходов. Реализуем управление такими простыми элементами, как кнопка и светодиод на платформе Maixduino. Содержание1 Что нужно знать2 Создание нового проекта2.1 Настройка проекта3 Как работать с GPIO3.1 Настройка порта4 Примеры программ4.1 Пример 1 — мигаем светодиод4.1.1 Схема подключения4.2 Пример 2 — кнопка …
Перейти
23.05.2020РадиоуправлениеКомментарии: 64Поскольку большинство модулей Bluetooth на базе CC2541 приобретаются в интернет-магазине AliExress, эти модули часто не являются оригинальными HM-10. В лучшем случае — это хорошая копия, которая принципиально не отличается от оригинала. Но в большинстве случаев эти модули полностью отличаются программным обеспечением, несмотря на то, что аппаратное обеспечение идентично. Одним из таких модулей Bluetooth является MLT-BT05. …
Перейти
10.05.2020РадиомодулиКомментарии: 168MLT-BT05 — это Bluetooth 4.0 (Bluetooth low energy) модуль на базе чипа CC2541 от TI. Он представляет собой клон популярного «HM-10» или, что также возможно, «CC41-А», который, в свою очередь, — клон «HM-10». Но в отличие от «CC41-A», «MLT-BT05» не является хорошим клоном, у него урезанный функционал и при работе с ним могут возникнуть проблемы, особенно …
Перейти
26.04.2020Banana Pi моделиКомментарии: 148Модельный ряд Banana пополнился платой Banana Pi F2S — это одноплатный ПК, ориентированный на промышленную отрасль. BPI-F2S базируется на системе на кристалле (SoC) SunPlus SP7021 с четырьмя ядрами ARM Cortex-A7 с тактовой частотой до 1,0 ГГц, дополнительным ядром ARM926 для приложений, работающих в реальном времени, энергоэффективным ядром 8051 для обработки ввода-вывода и 128 МБ или 512 …
Перейти
15. 03.2020УтилитыКомментарии: 18В этой статье приведены пошаговые инструкции по установке и настройке расширения PlatformIO в Visual Studio Code для дальнейшего программирования Arduino, ESP32, ESP8266, Maixduino, Raspberry Pi и не только. Содержание1 Visual Studio Code1.1 Установка Visual Studio Code2 PlatformIO2.1 Установка PlatformIO в VS Code2.2 Установка Arduino Framework2.3 Установка библиотек2.4 Создание и загрузка примера Blink2.5 Сборка и загрузка3 Материалы …
Перейти
08.01.2020Модули и ПреобразователиКомментарии: 163Модуль HW-613 это миниатюрный синхронный DC/DC преобразователь построен на базе микросхемы MP2315 — высокочастотный (частота преобразования 500 кГц) понижающий импульсный преобразователь с встроенными MOSFET ключами. Микросхема обеспечивает выходной ток до 3 ампера, при входных напряжениях от 6 до 24 вольт. Выходное напряжение регулируется подстрочником или задается фиксированным 1.8, 2.5, 3.3, 5, 9 или 12 В. …
Перейти
07.MP2225 (MP2225GJ, маркировка IAFRJ) — это высокочастотный синхронный понижающий DC-DC преобразователь со встроенными силовыми полевыми МОП-транзисторами. Очень компактное решение для достижения выходного тока до 5 А с отличной регулировкой выходного напряжения и с минимальными пульсациями при широком диапазоне входного напряжения. MP2225 имеет синхронный режим работы. Синхронная топология обеспечивает более высокий КПД (вплоть до 98%) и …
Перейти
ПРОГРАММИРОВАНИЕ Attiny2313
Как производится программирование микроконтроллеров ATtiny2313? Итак, имеем микроконтроллер ATtiny2313, LPT порт (обязательно железный – никакие USB-2-LPT не работают), несколько проводков (длина не более 10 см) и конечно же паяльник. Желательно иметь разъём DB-25M (папа), с ним будет удобней подключать микроконтроллер, но можно обойтись и без него. Припаиваем проводки к выводам 1, 10, 17, 18, 19, 20 микроконтроллера.
Далее, если есть разъём DB-25M, то припаиваем проводки к нему в соответствии с таблицей. Если нет, то просто втыкаем проводки в разъём на компьютере (не забывая про таблицу!!!).
Я делал без разъёма (в наличии были только мамы…), и вот что получилось:
Правда у меня LPT порт вынесен на стол с помощью кабеля длиной 1,5 метра. Но при этом кабель должен быть экранированный, иначе будут наводки, помехи и ничего не получится. Схема этого устройства программирования микроконтроллера вот такая:
Если быть совсем честным, то желательно собрать “правильный” программатор. И потом будет проще и порт целее. Я пользую STK200/300. Далее используем программу PonyProg2000. После запуска программы она “заржет….” как настоящий пони. Чтобы этого больше не слышать в появившемся окне ставим галочку “Disable sound”. Жмём “ОК”. Выскакивает окошко которое говорит, что нужно откалибровать программу.
Жмём “YES”. Проходит пара секунд и программа говорит “Calibration OK”. Далее заходим в меню: Setup -> Interface Setup. В появившемся окошке настраиваем как у показано на рисунке.
Теперь заходим в меню: Command -> Program Options. В появившемся окошке настраиваем как показано на рисунке.
Всё готово к программированию!… Итак, последовательность действий:
1. Выбираем из списка “AVR micro”
2. Из другого списка выбираем “ATtiny2313”
3. Загружаем файл прошивки (File -> Open Device File), выбираем нужный файл, например “rm-1_full.hex”.
4. Жмём кнопочку “Launch program cycle”. Когда программирование завершится прога скажет “Program successful”
5. Ну и напоследок надо запрограммировать так называемые Фьюзы (fuses). Для этого жмём кнопочку “Security and Configuration Bits”. В появившемся окне жмём “Read”, потом выставляем галочки и жмём “Write”.
ВНИМАНИЕ! Если Вы не знаете, что означает тот или иной конфигурационный бит, то не трогайте его. Вот теперь у нас готовый к работе контроллер ATtiny2313! На форуме можно скачать программу PonyProg2000 и оригинал статьи с дополнительными рисунками. Материал для сайта Радиосхемы предоставил Ansel73.
Форум по микроконтроллерам
Волшебный круг с ATtiny2313
Волшебный круг с ATtiny2313 Путь: AVR-RU => Приложения => Магический круг Diese Seite на немецком языке: Применение однокристальных микроконтроллеров AVR AT90S, ATtiny, ATmega и ATxmega |
Щелкните здесь, чтобы загрузить заархивированную версию этой страницы (1,37 МБ) |
---|
- Свойства
- Оборудование
- Крепление
- Программное обеспечение
В этом случае включение работает с 256 ступенями возрастания интенсивности, выключение с одинаковым количеством ступеней с уменьшением интенсивности. Назовите это мягким включением и выключением. Двойная скорость в этом случае означает уменьшение количества этапов до 128, очень высокая скорость означает 64 этапа. Чтобы не надоело всегда одна и та же скорость, вы можете немного смешать эти скорости, чтобы никто не спать.
Регулировка интенсивности осуществляется четырьмя каналами ШИМ в ATtiny2313, где четыре выходных контакта PWM OCR0A, OCR0B, OCR1A и OCR1B двух таймер/счетчики TC0 и TC1 переключаются. Каждый выходной контакт управляет между двумя и четыре светодиодных катода. Это приводит выходные контакты к их электрическим ограничениям. а активное низкое напряжение составляет 0,88 В (при активном включении четырех светодиодов). Поскольку каждый выходной контакт анода должен управлять только одним светодиодом, их активный высокий уровень напряжение на 0,3 В ниже рабочего напряжения.
Последовательности отображения хранятся в таблице во флэш-памяти, могут быть изменены на ваш личный вкус, поэтому каждый подарок-устройство имеет индивидуальный дизайн и уникальный.
К началу страницы | Свойства | Оборудование | Крепление | Программное обеспечение |
---|
2.1 Деталь контроллера
Вот и вся скучная схема. Каждый светодиод управляется резистором (в данном случае при рабочем напряжении 3,3 В с сопротивлением 33 Ом. В среднем ток светодиода составляет 7,2 мА (между 5,7 и 90,2 мА) имеет был измерен. Напряжение светодиода при этом токе составляет примерно 2,0 В. (со стандартными светодиодами 5 мм). Прилагается интерфейс ISP6, который позволяет программировать устройство в
система. К сожалению, мой древний AVR-ISP-MkII не работает на 3,3 В.
рабочее напряжение. Либо он неисправен, либо напряжение программирования слишком низкое.
Другой программатор работал нормально. Если вы столкнулись с подобными проблемами,
отключите 33 Ом тремя перемычками во время программирования.
2.2 Блок питания
Блок питания был построен на трансформаторе мощностью 2 ВА с 2 * 7,5 В.В качестве регулятора использован LM317, регулируемый 10-ступенчатым потенциометр от 1 кОм до выходного напряжения 3,3 В. Конечно, вместо этого вы можете использовать стабилизатор на 3,3 В, если у вас есть один.
Если используется источник питания 5 В, резисторы, управляющие светодиоды должны быть увеличены до 180 или 220 Ом.
LM317 вырабатывает максимум 600 мА тепла, поэтому либо вы может не использовать или использовать только небольшой радиатор. При повышенных токах светодиодов теплоотвода 20°C/Вт достаточно.
Это напряжения с потреблением 130 мА.
Все конденсаторы рассчитаны на 35 В, поскольку трансформатор производит очень высокое напряжение, когда нагрузка не подключена (компенсация внутреннего сопротивления 22,7 Ом на катушку). Без под нагрузкой катушки 7,5 В выдают более 16 В после исправление. Особенно танталовые конденсаторы этого не выдерживают перенапряжение.
Программное обеспечение для расчета напряжения питания может быть найденный здесь
К началу страницы | Свойства | Оборудование | Крепление | Программное обеспечение |
---|
3.1 Деталь контроллера
Монтаж контроллерной части осуществляется на макетной плате 40*40 мм. Соединения катода и анода светодиода находятся на штырях для пайки. 1 мм. Если вы хотите иметь вилку вместо этого, используйте Вместо этого 18- или 20-контактный разъем IDC. Вот так выглядит плата после припайки светодиодов.
3.2 Монтаж блока питания
Компоненты блока питания помещаются на макетную плату размером 50*60 мм. Особого внимания требует сторона 230/110 В: крепежные винты не должны касаться плавких вставок.Так выглядит блок питания. Типовая табличка трансформатор наоборот, видимо поэтому он было так дешево.
3.3 Установка в коробку
Вся электроника умещается в небольшом корпусе размером 120 x 60 x 40 мм. пластиковый бокс, который оснащен небольшим фирменная табличка (в формате Open-Office-Graphic), и четыре резиновые ножки и, наконец, поставляется с руководством пользователя в PDF или в формате Open-Office-Writer на получатель.К началу страницы | Свойства | Оборудование | Крепление | Программное обеспечение |
---|
4.1 Структура программного обеспечения
Во время инициализации все три порта A, B и D, которые используются для привода светодиоды записываются единицами. Направление порты выходных контактов OC0A, OC0B, OC1A и OC1B установлены, все контакты анодного выхода очищены (все светодиоды выключенный). Указатель Z устанавливается в начало таблица последовательности. Оба таймера запускаются с предкаллером из 8, и все выходы OC настроены на переключение (0 на начало цикла ШИМ, переключить при достижении сравнить стоимость).После инициализации программа работает с прерываниями. Для этого прерывание CompareA таймера/счетчика TC0 используется, который срабатывает после каждого полного ШИМ фаза. Затем процедура обслуживания прерывания устанавливает сравнить значения всех четырех каналов ШИМ со значением в реестре rPwm. Тогда этот регистр либо увеличивается (флаг bFall = 0) или уменьшается (флаг bFall = 1). Если флаг bFast на одно увеличение и уменьшение на один дополнительный шаг, если флаг bVeryFast один, выполняются два дополнительных шага.
Если регистр rPwm переполняется (bFall=0) и если флаг bUpOnly установлен, rPwm перезапускается с нуля. Если bUpOnly=0, тогда устанавливается bFall.
Если счетчик rPwm достигает нуля (bUpOnly=0 и bFall=1) или при переполнении (bUpOnly=1) флаг bСтарт будет установлен. Этот флаг обрабатывается вне процедура обслуживания прерывания: следующие три светодиодных анода комбинации считываются из таблицы и записываются к трем портам направления. Все светодиоды, которые должны быть в следующем периоде имеют установленный бит направления и портпин становится высоким.
Этапы обработки описаны в следующей главе.
4.2 Этапы обработки
Все этапы обработки занесены в таблицу. Этот обычно содержит четыре байта данных:- Первый байт: Флаги: Флаги могут быть обычными (0), только вверх (бит 0 = 1), двойная скорость (бит 1 = 1) или четырехкратная скорость (бит 1 и 2 = 1).
- Второй байт: Биты направления для порта D (с бит 6 всегда установлен).
- Третий байт: Биты направления для порта B (с биты 2, 3 и 4 всегда установлены).
- Четвертый байт: биты направления для порта A.
- 0xFF: конец таблицы, перезагрузка с начала,
- 0xFE: повторите следующие записи во внешнем петля, количество повторений закодировано в второй байт, начальный адрес копируется в X регистры,
- 0xFD: повторите следующие записи во внутреннем петля, количество повторений закодировано в второй байт, начальный адрес этой последовательности записывается в регистры Y,
- 0xFC: конец внешнего цикла повторения, если далее требуется повтор адрес восстанавливается из X, если после n повторений выполнение продолжается после текущего адреса.
- 0xFB: Конец внутреннего цикла повторения, если далее требуется повторение адрес восстанавливается из Y, если нет, выполнение продолжается на следующем адрес.
экв X0=1843200 ; 00.1C.20.00 .equ Xall=67075840 ; 03.FF.7F.00С
.set сХ = Х1 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ) .set сХ = Х2 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ)светодиоды один и два включены.
.установить сХ = X1_2 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ)Это включает оба светодиода.
Просто добавляются флаги bUpOnly, bFast и bVeryFast к этой константе, например. очень быстрое включение/выключение светодиода 2:
.set cX = cVeryFast+X2 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ)Используя контроль повторения до 256 повторений можно закодировать без необходимости копировать последовательность n раз. Это повторяет последовательность светодиодов 1, светодиодов 2 и Светодиод 3 четыре раза.
.db cRepeat1,4 ; Начните внешнее повторение, количество = 4 .set сХ = Х1 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ) .set сХ = Х2 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ) .установить сХ = Х3 .db Байт1(сХ),Байт2(сХ),Байт3(сХ),Байт4(сХ) .db cNext1,0 ; Повторить внешний цикл три разаС помощью cRepeat1 и cRepeat2 вложенные повторения могут быть построен.
При необходимости разворот Tables.ods в формате Open-Office позволяет проектировать и рассчитывать комбинации. Лист Bit_Tab это позволяет. Только
- добавить имя константы в столбец A,
- запишите 1 во всех ячейках от L1 до L13 для каждого Светодиод, который должен гореть, и
- скопируйте результат определения в столбец S и вставьте его в файл const.inc,
- добавить константу в таблицу процессов,
- собрать magic_circle_v1.asm.
4.3 Скачать
Исходный код на ассемблере здесь в формате ассемблера и здесь в формате HTML. Для сборки включаем файл const.inc дополнительно требуется по тому же пути, что и файл .asm.Предохранители менять не нужно.
Развлекайтесь с мягким поворотником.
К началу страницы | Свойства | Оборудование | Крепление | Программное обеспечение |
---|
Похвала, порицание, сообщения об ошибках, критика, брань и неквалифицированный спам Пожалуйста, через страница комментариев ко мне.
©2017 http://www.avr-asm-tutorial.net
Принципиальная схема USB-RS232 с использованием Atmel ATtiny2313 или ATmega8
Принципиальная схема
13 июня 2022 г.
админ
Принципиальная схема
Интерфейс универсальной последовательной шины (USB) стал чрезвычайно популярным благодаря своей простоте для приложений конечного пользователя (подключи и работай без перезагрузки). Однако для разработчиков внедрение USB в конечные системы оказалось более сложным по сравнению, например, с РС232. Кроме того, необходимы драйверы устройств для поддержки программного обеспечения на стороне ПК. Из-за этого связь на основе RS232 по-прежнему очень популярна среди производителей конечных систем. Этот интерфейс хорошо зарекомендовал себя и хорошо поддерживается операционной системой, но недавно физический порт RS232 был удален из стандартного интерфейса ПК, уступив место портам USB. Внедрение USB во внешние устройства может осуществляться двумя способами:
- С помощью микроконтроллера с аппаратно реализованным интерфейсом USB. Необходимо знать, как работает USB и соответствующим образом записывать прошивку в микроконтроллер. Дополнительно необходимо создать драйвер на стороне компьютера, если операционная система не включает стандартные классы USB. Основным недостатком является отсутствие таких микроконтроллеров и их высокая цена по сравнению с простыми микроконтроллерами «RS232».
- Второй вариант — использовать какой-нибудь универсальный преобразователь между USB и другим интерфейсом. Этот другой интерфейс обычно представляет собой RS232, 8-битную шину данных или шину TWI. В этом случае нет необходимости в специальной прошивке, даже не нужно знать, как работает USB, и не требуется написание драйвера, так как производитель конвертера предложит один драйвер для всего решения. Недостатком является более высокая цена всей системы и большие габариты готового продукта. Решение, представленное в этом документе, представляет собой реализацию USB в недорогом микроконтроллере посредством эмуляции протокола USB в прошивке микроконтроллера. Главной задачей для этой конструкции было получение достаточной скорости. Шина USB достаточно быстрая: LowSpeed — 1,5 Мбит/с, FullSpeed — 12 Мбит/с, HighSpeed — 480 Мбит/с. Микроконтроллеры AVR полностью соответствуют жестким требованиям к скорости низкоскоростного USB. Однако это решение не рекомендуется для более высоких скоростей USB.
Подробную информацию о физической связи USB можно найти на веб-сайте www.usb.org. Эта документация очень сложна и трудна для начинающих. Очень хорошее и простое объяснение для начинающих можно найти в документе «USB в двух словах. Осмысление стандарта USB», написанного Крейгом Пикоком [2]. В этом примечании по применению объяснение ограничивается пониманием микропрограммы устройства. Физический интерфейс USB состоит из 4 проводов: 2 для питания внешнего устройства (VCC и GND) и 2 сигнальных провода (DATA+ и DATA-). Силовые провода дают примерно 5 вольт и макс. 500 мА. AVR может получать питание от Vcc и GND.
Сигнальные провода с именами DATA+ и DATA- обеспечивают связь между хостом (компьютером) и устройством. Сигналы на этих проводах двунаправленные. Уровни напряжения различаются: когда DATA+ находится на высоком уровне, DATA- находится на низком уровне, но в некоторых случаях DATA+ и DATA- находятся на одном уровне, например EOP (конец пакета). Следовательно, в реализации USB, управляемой микропрограммой, необходимо иметь возможность воспринимать или управлять обоими этими сигналами. В соответствии со стандартом USB сигнальные провода должны иметь высокий уровень в диапазоне 3,0–3,6 В, а напряжение Vcc, поддерживаемое хостом USB, составляет 4,4–5,25 В.
Итак, если микроконтроллер питается напрямую от линий USB, то линии данных должны проходить через преобразователь уровней для компенсации различных уровней напряжения. Другим решением является снижение Vcc, поддерживаемого хостом, до 3,3 В и запуск микроконтроллера на этом уровне напряжения.
Схема микроконтроллера, подключенного к шине USB, показана на рис. 8. Эта схема была создана специально для преобразователя USB в RS232. Также были реализованы специальные функции, такие как прямое управление контактами и чтение/запись EEPROM.
Линии данных USB, DATA- и DATA+, подключаются к контактам PB0 и PB1 на AVR. Это соединение нельзя изменить, потому что микропрограмма использует тонкость AVR для быстрого приема сигнала: битовый сигнал, захваченный из линий данных, сдвигается вправо от LSB (PB0) для переноса, а затем в регистр приема, который собирает биты из линии данных. PB1 используется как входной сигнал, потому что на 8-контактном ATtiny2313. Этот вывод может использоваться как внешнее прерывание INT0. Дополнительное подключение к INT0 не требуется — 8-контактная версия AVR имеет наименьшее доступное количество контактов.
На других AVR внешнее соединение DATA+ с контактом INT0 необходимо для обеспечения отсутствия изменений прошивки между различными микроконтроллерами AVR. Для правильного подключения USB-устройства и передачи сигналов AVR, работающий как низкоскоростное USB-устройство, должен иметь порт 1.5k? подтягивающий резистор на DATA-. Напряжение Vcc, подаваемое хостом USB, может варьироваться от 4,4 В до 5,25 В. Это питание должно быть отрегулировано до 3,0–3,6 В перед подключением 1,5 кОм? подтягивающий резистор и питание АРН.
Размер регулятора напряжения зависит от мощности нагрузки целевой системы. Регулятор напряжения должен быть регулятором с малым падением напряжения. В схеме на рис. 8 используется стабилизатор LE35 с номинальным выходным напряжением 3,5 В.