Сравнение микроконтроллеров Iskra
Теперь, когда хоть какой-то опыт есть, можно сравнить используемое и новое.
Iskra Mini, которую я использую:
http://wiki.amperka.ru/
Цифровые входы/выходы: пины 0–13
АЦП: пины A0–A5
TWI/I²C: пины SDA и SCL
SPI: пины 10(SS), 11(MOSI), 12(MISO), 13(SCK).
UART: пины 0(RX) и 1(TX)
Стандартных протоколов передачи данных (от устройства к процессору и обратно) примерно таким способом:
… которые сам процессор как-то преобразует в понятную информацию, так понимаю, два. Это SPI (требующий 4-х разъемов) и I2C (он же TWI/PC), требующий двух разъемов.
Прочие варианты (данные от датчиков температуры каких-нибудь) гонятся медленно и ненадёжно по одному проводу.
У этой платы одно SPI. Насколько понимаю, к нему можно прицепить одно устройство.
Вот эта штуковина:
https://amperkot.ru/spb/catalog/radiomoduli_433mhz_peredatchik_mxfs03v_i_priemnik_mx05v-23869814.html
… работает в доме, но до курятника вот так сразу не дотягивается. Так что этот вариант, похоже, не подходит.
А эта штука:
https://amperkot.ru/spb/catalog/radiomodul_nrf24l01_pa__lna_s_antennoy-24118355.html
… подключается через SPI, к которому у меня уже подключена SD-карта.
Частота и память:
Микроконтроллер: ATmega328
Тактовая частота: 16 МГц
Flash-память: 32 КБ (из которых 2 КБ используются загрузчиком)
SRAM: 2 КБ
EEPROM: 1 КБ
Компилятор мне про загружаемый программный текст пишет примерно так:
Sketch uses 24 356 bytes (84%) of program storage space.
Maximum is 28 672 bytes.
Global variables use 1 458 bytes (71%) of dynamic memory, leaving 590 bytes for local variables. Maximum is 2 048 bytes.
… Осторожно предположу, что Flash – память это то, куда загружается программа. SRAM это то, куда загружаются её переменные. Не так много у меня понаписано, но я уже довольно близко к максимальным размерам. Впрочем, наверное, оптимизация может что-то улучшить.
У меня там несколько экранов, переключаемых джойстиком. Часы крупно, дата и время, информация о SD-карте. Ещё экран корректировки даты и времени. Вот и всё. Подозреваю, что там что-то базовое место скушало, потому понаписать ещё много чего можно, но цифра такие, какие есть.
Частота 16 MГц это примерно 386-я машина:
https://ru.wikipedia.org/wiki/80386
… Совсем неплохо, учитывая, сколько всего можно было запускать на этом 386-м компьютере и то, для чего используются такие микроконтроллеры.
Iskra JS Mini:
http://wiki.amperka.ru
Внешний вид:
Штырьевые разъемы (ПАПА) лучше разнашивающихся пластиковых МАМА, так что, штыри это хорошо.
Появился разъем для подключения к компьютеру без промежуточной микросхемы. Это тоже очень хорошо потому что как-то тяжело и странно работает эта загрузка. Когда в таком месте куча того, что поломаться может, это неправильно.
Другое программное обеспечение. Тоже, наверное, хорошо. Если оно их то к ним, хоть обратиться можно, если там что-то не так работает.
Боковые «дырки» (B8 и B9) у ник так и остались без штырей (т.е работать с ними нельзя), но их, так понимаю, дублёры:
… это B3 и B10. Т.е можно прицепить, потому уже нельзя назвать это каким-то полугодным полуфабриаком.
Характеристики:
Микроконтроллер: STM32F411CEU6 (32-битный ARM Cortex M4)
Тактовая частота: 100 МГц
Объём Flash-памяти: 512 КБ
Объём SRAM-памяти: 128 КБ
Портов ввода-вывода всего: 20
Портов с АЦП: 8
Разрядность АЦП: 12 бит
Портов с ШИМ: 19
Разрядность ШИМ: 16 бит
Портов толерантных к 5 В: 17
Аппаратных интерфейсов SPI: 3
Аппаратных интерфейсов I²C/TWI: 2
Аппаратных интерфейсов UART/Serial: 1
По тактовой частоте это уже первые Пентиумы. Количество памяти увеличилось больше чем на порядок, т.е её очень много. Так что этот вопрос, наверное, тоже снят. SPI устройств три штуки прицепить можно. И это узкое место расширили.
Зверь – машина получилась))). Только как-то странно цифровые и аналоговые порты перемешались и непонятно куда долговременная память (не обнуляющаяся при отключении питания, EEPROM) делась. Но, наверное, и это как-то решено. Или они тоже считают что такие вопросы пора начинать решать SD-картами (как у большого компьютера).
|