Electronics

HX711

HX711 это высокоторчный 24-битный аналого-цифровой преобразователь разработанный специально для прменения в весах и промышленном управлении. АЦП рассчитан на подключение мостового резистивного датчика.

Mecrisp Forth

Решил заняться чем-то новым, точнее хорошо забытым старым, и освоить форт на микроконтроллерах.

Перед компилируемыми ЯП форт имеет преимущество за счёт своей интерактивности - писать и отлаживать код можно непосредственно на целевом устройстве не занимаясь каждый раз сборкой и прошивкой.

С другой стороны, микроконтроллеры уже достаточно мощные, что бы запускать интерпретируемые языки, такие как Lua или JavaScript, но они отбирают для своей работы ценные ресурсы МК, да и работают сравнительно медленно.

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

Установка Armbian на планшет Icoo D70gt. Часть 3

В предыдущих частях удалось запустить систему на планшете и настроить тачскрин.

Но как всегда хочется большего - например установить X-server, что бы получить все преимущества графического интерфейса.

Установка Armbian на планшет Icoo D70gt. Часть 2

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

В этой части я рассмотрю некоторые аспекты настройки системы и устройств ввода, таких как кнопки планшета, тачскрин и G-сенсор.

Установка Armbian на планшет Icoo D70gt

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

ПО ориентируется на флагманы, а устройство из среднего или низшего ценового диапазона ещё год назад вполне сносно работавшее вызывает только желание приложить его об стену.

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

В любом случае, пока живы “мозги” планшета, можно постараться извлечь из планшета пользу установив на него ОС с ядром Linux.

ESP8266 WiFi SoC

https://github.com/esp8266/esp8266-wiki/wiki https://nurdspace.nl/ESP8266 Tools PlatformIO Arduino IDE Firmware ESP Link - преобразователь WiFi в Uart. NodeMCU - брать прошивки лучше именно со страницы релизов, а не бинарники из репозитория. luatool Tool for loading Lua-based scripts from file to ESP8266 with nodemcu firmware. https://github.com/nekromant/esp8266-frankenstein Прошивка TCP2UART переходника с настройкой по Web. //не проверено// [Transparent TCP-UART bridge with support to flash arduino and ARM systems(https://github.com/jeelabs/esp8266-bridge). //не проверено// Absolutely transparent bridge for the ESP8266.

JTAG

Pinout Следует иметь в виду, что разные производители могут использовать разную разводку сигналов, даже на разъёмов с одинаковым количеством пинов. Наиболее стандартизирован в этом плане 20-пиновый разъём. 20-pin Name JTAG 20 JTAG 20 Name Vref 1 2 Vtarg nTRST 3 4 GND TDI 5 6 GND TMS 7 8 GND TCK 9 10 GND RTCK 11 12 GND TDO 13 14 GND nSRST 15 16 GND dbgRQ 17 18 GND dbgACK 19 20 GND 10-pin Name Pin Pin Name Vref 1 2 Vsup nTRST 3 4 nSRST TDI 5 6 TDO TMS 7 8 GND TCK 9 10 GND 6-pin Pin Name 1 TMS 2 TDI 3 TDO 4 TCK 5 GND 6 Vcc

OLED 1.04inch 96x64@65K color display

OLED Color Display for electronic applications.((Via http://mdfly.com)) Характеристики: Screen resolution: 96x64@65K color Screen size: 1.04 inch Screen type: OLED Controller chip: SSD1332 Built-in backlight Built-in DC/DC Voltage converter Vendor: LG Документация: Display specification Display pinouts SSD1332 controller manual Typical contoller settings

Обжимной инструмент

Долгие поиски адекватного инструмента для обжимания dupont-коннекторов (он же crimping tool) наконец привели к желаемому результату.

Обычные обжимки имеют одноуровневые губки, так что при попытке обжать коннектор, мы получали плохое соединение металла коннектора с зачищенным концом провода (или вообще не получали никакого соединения). Приходилось извращаться либо с пайкой, либо подгибая зачищенный конец провода на изоляцию.

Nokia 1202 LCD

Данный дисплей устанавливается в ряд бюджетных моделей телефонов Nokia 1202/1203/1280. Доступность, простой последовательный интерфейс и относительная лёгкость подключения позволяет использовать данный дисплей как в радиолюбительских конструкциях, так и в более серьёзных проектах. Если же Вам необходим цветной дисплей более высокого разрешения, то можно воспользоваться бюджетным LCD от Nokia 1661/5030/ 1616/1800/1662. LCD pinout Pin Name Description 0 not used 1 !RESET Сброс контроллера дисплея 2 !

H018IN01

A high quality Color TFT-LCD Display for electronic applications. Возможности: Screen resolution: 128x160 Screen size: 1.8 inch (38x30mm) Screen type: TFT Controller chip: NT3915 Built-in backlight SPI support Документация: Specification Controller

Оптимизация задержек

Микроконтроллеры обычно работают напрямую с физическим миром, а не только с астрактным миром цифр. А реальность не терпит поспешностей. Иногда нужно немного подождать. Казалось бы, чего уж проще - написать процедуру задержки. А ведь нет! Написать то легко, а вот каков результат будет в машинных кодах? Три команды или тридцать три?

Вот и мне потребовалось реализовать задержку в сишной программе для ATtiny2313. Микроконтроллер ресурсами не блещет, а потому каждая команда на счету.

LCD 128*64

Характеристики: lcd type: fstn duty, bias: duty=1/64, bias=1/9 viewing direction 6 o’clock module size (LxWxH) with FPC 32x19.2x1.8mm (max) View area(LxW) 27.95x12.9mm Dots matrix (segment * comment) 128*64 dots dot size (LxW) 0.16x0.145mm dot pitch(w*H) 0.19x0.175mm lcd driver ic st7565 (sitronix) absolute maximum ratings (Ta = 25 centigrade degree) Parameter symbol Min Max Unit Supply voltgage for logic VDD -0.3 3.2 V LCD driving voltage V0-VSS 8.

Monochrome LCD panel LM211

pin имя - описание 1 D1 H/L Serial row data 2 FLM H The FLM signal indicates the begining of each display cycle 3 M H/L Control signal for AC driving 4 CL1 H L The CL1 latches the serial data in the shift registers 5 CL2 H L Clock the signal for shifting the serial data 6 D2 H/L Serial row data 7 Vdd Power supply for logic circuit 8 Vss Ground 9 Vee Power supply for LC driving 10 Vo Operation voltage for LC driving Предельные напряжения

ST7637

Контроллер ST7637 STN LCD дисплея позволяет управлять цветным RGB дисплеем размером 132x132 пикселя. Пример работы с контроллером по параллельному интерфейсу через MCU LPC2103 можно получить из репозитория по ссылке: http://bitbucket.org/plumbum/grlib-st7637/ . Сейчас я переписываю библиотеку для разных дисплеев http://bitbucket.org/plumbum/liblcdgr/ Дисплей был извлечён из десятибаксовой фоторамки.

Прошивка LPC2xxx по последовательному порту

Микроконтроллеры NXP LPC2xxx имеют встроенный загрузчик, позволяющий прошивать память программ (flash) через последовательный порт (UART). Для входа в режим загрузчика во время аппаратного(?) сброса на определённых ногах микроконтроллера должны присутствовать логические уровни: Ноль на P0.14 для LPC210x Ноль на P2.10 для LPC2368, LPC2478 … LPC21ISP Наиболее оптимальный вариант для прошивки микроконтроллераконтроллера через последовательный порт - воспользоваться консольной программой lpc21isp. Сборка приложения проста и осуществляется одной командой make. Использование программы так же не должно вызвать проблемм:

RS-232 pinout

DB-9 DB-25 Name 8P8C Dir Color 1 DCD 8 (бел) in black 2 RXD 6 (желт) in brown 3 TXD 3 (черн) out red 4 DTR 2 (ор) out orange 5 GND 5 (зел) pow yellow 6 DSR 1 (син) in green 7 RTS 4 (крас) out blue 8 CTS 7 (кор) in purple 9 RI in white Cisco cable Name 8P8C Color DB-9f CTS 1 Black 8 DSR 2 Brown 6 RXD 3 Red 2 GND 4 Orange 5 GND 5 Yellow 5 TXD 6 Green 3 DTR 7 Blue 4 RTS 8 Gray 7

AT команды GSM модемов

PIN-код Если SIM-карта защищена PIN-кодом, после включения следует его “ввести” AT+CPIN="0000" Voice режим Для перехода в голосовой режим выполните команду: AT+FCLASS=8 После этого можно набирать номер ATD8911xxxxxxx; Обратите внимание на точку с запятой в конце номера. Она указывает, что должен быть произведён именно голосовой вызов. Ссылки по теме http://en.wikipedia.org/wiki/Voice_modem_command_set http://en.wikipedia.org/wiki/Hayes_command_set http://doc.qt.nokia.com/qtopia4.1/atcommands.html http://www.smssolutions.net/tutorials/gsm/receivesmsat/ AnyData CDMA Голосовой вызов: AT+CDV+7911xxxxxxx

LinkBell

Протокол LinkBell предназначен для организации передачи небольших объёмов информации в сетях устройств, содержащих в своём составе микроконтроллеры и компьютеры.

LPC2368 SSP init as SPI

void sspInit(void) { // SSP1 (SPI) init sequense PCONP |= (1<<10); // PCSSP1 - power on PINSEL0 |= (2<<(7*2)) | (2<<(8*2)) | (2<<(9*2)) | (2<<(6*2)); // configure SPI1 pinouts // Serial Clock Rate: PCLK/CPSDVSR SSP1CR1 = 0x0 ; // disable SSP, must be off during changes SSP1CR0 = (8-1); // | (1<<6) /* CPOL */ | (1<<7) /* CPHA */; // | SSP_CR0_CPOL | SSP_CR0_CPHA; // DataSizeSelect=8, CPOL=1,CPHA=1 SSP1CPSR = 8; // SPICLK = PCLK/8 = 18MHz/8 = 2.

LPC2368 UART init

void uartInit(unsigned long baudrate) { /*------------------------------------------------ Setup serial port registers. ------------------------------------------------*/ PCONP |= (1<<3); // PCUART0 UART0 power/clock control bit. PINSEL0 |= (1<<(2*2)) | (1<<(2*3)); /* Enable TXD0, RXD0 */ U0LCR = 0x03; /* 8 bits, no Parity, 1 Stop bit */ U0IER = 0; /* Disable UART1 Interrupts */ U0FCR = 0x07; unsigned long DLreload; DLreload = ((Fpclk / 16UL) + (baudrate-1)) / baudrate; U0LCR |= 0x80; /* Set DLAB */ U0DLL = DLreload; U0DLM = (DLreload >> 8); U0LCR &= ~0x80; /* Clear DLAB */ } char uartGetc(void) { while (!

ModBus

Modbus — коммуникационный протокол, основанный на master-slave архитектуре. Разработан фирмой Modicon для использования в контроллерах с программируемой логикой (PLC). Стал стандартом де-факто в промышленности и широко применяется для организации связи промышленного электронного оборудования. Использует для передачи данных последовательные линии связи RS-485, RS-422, RS-232, а также сети TCP/IP. В настоящее время поддерживается некоммерческой организацией Modbus-IDA. (Материал из Википедии)

SPI to UART

Запись в TX FIFO Байт 0: Dir 7 6 5 4 3 2 1 0 DI 1 x x x x x x x DO tx_free 3 2 1 0 rx_ready 3 2 1 0 Далее передаются байты данных, в количестве не более чем tx_free. Байт N: Dir 7 6 5 4 3 2 1 0 DI data 7 6 5 4 3 2 1 0 DO tx_free 3 2 1 0 x x x x Чтение из RX FIFO Байт 0:

Atari pinouts

Monitor connection Для подключения к телевизору через “тюльпанчики” соединяем: Вывод 4 (композитный сигнал) и вывод 2 (земля) с желтым “тюльпанчиком”. Вывод 3 (звук моно) и вывод 2 (земля) с белым “тюльпанчиком”. Я купил обычный аудио кабель с “тюльпанчиками” срезал одну часть, и подключил через него. DIN 5 female * * * * * * * ******* * * * Audio output * 3 1 * Composite luminance * * * * Composite chroma * 5 4 * Composite video (not available * * on XL models) * 2 * * * Ground http://www.

PS/2

Pinout Pin Signal 1 Data 2 Reserved 3 Ground 4 + 5 V dc 5 Clock 6 Reserved Эта же распиновка справедлива и для PS/2 клавиатуры. Links The PS/2 Mouse Interface The PS/2 Mouse/Keyboard Protocol Библиотека для обработки протокола на MCU AVR.

AT90USB162

Кристаллы поставляются прошитыми загрузчиком, который позволяет программировать контроллер через интерфейс USB. FLIP tool (TODO нужна актуальная ссылка). http://dfu-programmer.sourceforge.net/ (TODO проверить). При использовании FLIP под линукс возможно понадобится дополнительно указать где расположены устройства USB: export USB_DEVFS_PATH=/dev/bus/usb

Color LCD panel LM-CC53-22NTS

:!: Приведённая информация составлена из разрозненных данных и может быть неверна. Подсветка: Вывод Цвет Название Описание 1 черн. GND 2 крас. +Vcc 3 син. CTRL# Backlight on GND 4 сер. GND Bright :?: 5 сер. ? Bright :?: Дисплей: Вывод Цвет Название Описание 1 зел.

LCD

STE2007 контроллер применяемый в монохромных дисплеях устанавливаемых в бюджетные телефоны Nokia. H018IN01 цветной дисплей с поддержкой SPI. LM-CC53-22NTS цветная TFT панель. Сборная информация. LM211 монохромная бесконтроллерная LCD панель. OLED 96x64 цветной OLED дисплей. ST7565 ST7637 дисплей и фоторамки-брелка.

nRF24L01 Радиомодули

nRF24L01 - однокристальный трансивер компании Nordic Semiconductor для диапазона частот 2.4 ГГц со встроенным протокольным процессором (Enhanced ShockBurst™). ИС разработана для сверхмаломощных приложений беспроводной связи. nRF24L01 рассчитан на работу в используемом по всему миру ISM диапазоне частот 2.400…2.4835 ГГц. Для получения завершенной РЧ системы передачи данных nRF24L01 необходимо дополнить микроконтроллером и несколькими внешними пассивными компонентами. nRF24L01 конфигурируется и управляется через последовательный интерфейс SPI. Данный интерфейс предоставляет доступ к внутренним конфигурационным регистрам в любом режиме работы микросхемы.

SIM300D

Модуль GSM модем/телефон для встраивания в устройства. Datasheet Кратко о командах ATZ - сброс модема AT+CREG? - возвращает состояние регистрации в сети AT+CSQ - мощность/качество сигнала AT+CMGF=1 - включить текстовый режим передачи SMS AT+CMGS="+7911xxxxxxx",145 - отправка сообщения (завершается Ctrl-Z (0x1A))

STM8

Шаблоны для сборки под Linux: https://bitbucket.org/plumbum/stm8templates stm8flash https://github.com/vdudouyt/stm8flash - флешер поддерживающий ST-Link/ST-Link V2 Залить прошивку stm8flash -c stlink -p stm8l150 -w blinky.bin Считать eeprom stm8flash -c stlink -p stm8l150 -s 4000 -r eeprom.bin -b 1024 Считать OPT байты можно, но читать нужно непременно 256 байт, иначе магия не работает: stm8flash -c stlinkv2 -p stm8s105 -s 4800 -r opt.bin -b 256 После этого, можно байты отредактировать и записать обратно. Для записи тоже нужна своя магия.

WIZ120SR

Шлюзовой модуль нового поколения, осуществляющий преобразование протоколов RS-232 <-> TCP/IP. Отличительной особенностью WIZ120SR от популярного моста WIZ100SR является поддержка двух последовательных портов, а не одного. Модуль построен на базе микросхемы W5100 со встроенным блоком физического уровня PHY и на базе ARM микроконтроллера STM32F103C8T6 на основе ядра Cortex-M3. Последнее обстоятельство открывает широкий простор для творчества ;-) Подробно о модуле Распиновка модуля MCU Func Name JP1 Pin Name JP2 MCU Func +3.

Аппаратные средства

Здесь представлены аппаратные и программно-аппаратные средства разработки электроники. Смотрите так же раздел программных средств. avrdragon ch341a flashrom inex-px-200 j-link lpc-link silabs-c8051-sdcc silabs-ec2-driver-linux versaloon

Модуль трансивера TR24A

Модули TR24A - ультра дешёвое решение((в районе 100 рублей)) для беспроводного обмена данными между малопотребляющими устройствами на расстояниях порядка 50-100м((Реально - меньше. Сейчас мне удалось получить неустойчивую связь на расстоянии 6м через бетонную стену. На форуме ixbt добились 20 метров по прямой. Модули построены на базе однокристального трансивера EM198810. диапазон частот: 2400MHz…2482MHz количество каналов: 81 каналов чувствительность: −85dBm…-80dBm IIP3: −14dBm…-11dBm максимальный входной уровень: +10dBm выходная мощность: +2dBm скорость данных: 1Mbps диапазон напряжения питания: 2.