Raspberry Pi Pico — Arduino на стероидах

  • Цена: €4,13 плюс доставка €0,61

Во времена моей молодости говорили — легко, как два байта переслать. Другие — чуть по-другому — легко, как два пальца об асфальт, подразумевая под этим нечто третье.
Не так давно Raspberry Pi Foundation выкатил собственный микроконтроллер, за рекордно низкую по нынешним временам цену для устройства с такими параметрами — сама микросхема стоит 1 доллар. Сейчас мы будем разбираться, легко ли в этом микроконтроллере два байта переслать.
Настоящие специалисты, которые в комментариях уже не раз меня называли ардуинщиком-недоучкой, в этом опусе вряд ли найдут что-то полезное, а остальные — добро пожаловать.

В начале было слово была платка от Raspberry на базе этого микроконтроллера под названием Raspberry Pi Pico, на котором были только сам микроконтроллер, 2 мегабайта флеш-памяти, светодиод, кварц, микро USB разъем и кнопка перехода в режим загрузки. И все это с объявленной ценой без налогов и пересылки в 4 USD.
Потом поперло — таких платок разного вида просто понесло потоком — и уменьшенных размеров, и с кучей разной периферии. Очевидно, очень скоро этот микроконтроллер заинтересовал ардуинщиков и его поддержка была включена в длинный список поддерживаемых микроконтроллеров.

Теперь лирическое отступление.
Для начала, что за мелкоконтроллер на платке?

Обозвали его RP2040, что по мнению Raspberry Pi Foundation, обозначает:
  • RP: Raspberry Pi
  • 2: два ядра
  • 0: ядра M0+
  • 4: минимум 256 КБ памяти
  • 0: нет встроенной флеш-памяти

Что мы имеем внурях:
  • Два ядра Arm Cortex-M0+ @ 133 МГц
  • 264 КБ памяти RAM (на самом деле 284 КБ, но часть используется для кеширования и USB)
  • Поддержка до 16МБ внешней флеш-памяти с QSPI интерфейсом, реально на платке запаяно 2МБ
  • DMA контроллер
  • 4 x 12-разрядных аналоговых входа (на Pico доступно для пользователя 3 из них)
  • 2 × UART
  • 2 × SPI
  • 2 × I2C
  • 16 × PWM каналов
  • Встроенный сенсор температуры
  • Всего 30 GPIO пинов
  • USB 1.1 контроллер с поддержкой хоста
  • 2 × PIO блока для своих собственных интерфейсов
  • 2 x PLL (один для USB, второй для остального)
  • Поддержка UF2 для загрузки программ
  • Поддержка SWD для загрузки и отладки
  • Поддержка спящих режимов и пониженной частоты для снижения потребления
В списке отсутствует еще один вид памяти — 16КБ, масочная или однократная — не знаю. Там хранится программное обеспечение USB, загрузчики и библиотека для работы с плавающей запятой.

Откуда надерганы IP (Intellectual property — так в мире проектирования микросхем так называют готовые блоки-библиотеки)
  • ARM Limited (M0+, UART, SPI)
  • Synopsys, Inc. (I2C, SSI)
  • Taiwan Semiconductor Manufacturing Company Limited (TSMC) (standard cells, memories)
  • Dolphin Design SAS (Voltage Regulator, Power-on Reset/Brown-out Detector)
  • Aragio Solutions (GPIO and Crystal Pad library)
  • Silicon Creations (PLL)
  • GF Micro (ADC, TS, USB PHY)

С таймерами, на первый взгляд, большая напряженка — единственный таймер общего назначения с очень маленьким набором функций. Впридачу к нему имеются WDT и RTC.
Но это только на первый взгляд — 16 PWM, собственные таймеры у контроллера DMA и программируемые машины состояний меняют дело кардинально.
Микропроцессор, на самом деле, очень необычен именно в плане периферии. Главная фишка — это блоки программируемого ввода вывода, PIO, каждый из которых содержит 4 машины состояний 8 32-разрядных FIFO регистров, память программ. Каждый из таких блоков программируется на собственном ассемблере. С помощью PIO вы можете добавить недостающий интерфейс или сделать совершенно новый — например, аппаратный интерфейс для WS8212 или что вам в голову придет.
Меня терзают смутные сомнения, что часть аппаратных интерфейсов этого микропроцессора именно так и сделаны — абсолютно такие же PIO, только вместо памяти программ с возможностью записи, там применена масочная память. Или OTP, которая позволяет менять конфигурацию микропроцессора уже на существующем кремнии.
При таком подходе разработка сильно упрощается. И я подозреваю, что, в основном, все было разработано одним человеком в течении примерно года.

Товарищ Сталин говорил — «У каждой ошибки есть имя и фамилия»
Речь не об ошибке, но тем не менее фамилия быть должна. К сожалению, не нашел. Но, скорее всего, зовут его Graham. И проектировал он на Verilog. У меня есть один знакомый — бывший коллега, который такую вещь вполне мог бы спроектировать за несколько месяцев, но это явно не он.
Небольшую статейку от человека, который вертелся рядом с разработчиком, можно найти здесь.
Он пишет, что проектирование начали в середине 2017 года. Процессор поступил в продажу в начале 2021 года. Год-полтора, наверно, ушло на запуск производства и тестирование. Значит, на проектирование ушло еще полтора-два года. Если, конечно, кремний пошел с первой попытки.

Если кому интересно, можно посмотреть картину по слоям, как делают транзистор


Вы все поняли и решили, что вы будете первым, кто сделает микросхему на кухне? К сожаление, вы опоздали, такой деятель уже нашелся, вы будете не первым :)

Но еще можете свой процессор слепить, вот RP2040. Как видите, все очень просто, большую часть площади занимает RAM.

Здесь можно посмотреть картинку получше.

По словам руководства Raspberry Pi, выход годных микроконтроллеров с пластины около 20 000 штук. Пластина по 40-нм технологии в TSMC стоит около 2300 долларов. Партия, очевидно, не одна штука.

Можете считать барыши :) Но не забудьте прибавить стоимость тестирования, резки, корпусирования. А еще за подготовку к производству надо заплатить и разработчики тоже кушать хотят.

Ну ладно, с присказкой закончим.



При первом включении плата распознается, как USB диск, для того, чтобы запустить свою программу, достаточно скомпилированный файл в формате uf2 закинуть на этот диск, выполнение начнется немедленно.
При последующих включениях будет запущена именно эта программа. Чтобы загрузить новую программу, нужно перейти в режим загрузки снова, для этого нужно отключить плату от USB, зажать кнопку BOOTSEL, подключить платку к USB и затем отпустить кнопку. Процедура нудная, и разъем недолго продюжит, если вы отлаживаете свою программу.
На этом сайте вы найдете программу, которая приводит все в привычное для ардуино представление — достаточно загрузить программу один раз. После этого среда ардуино уже будет компилировать вашу программу в в формате uf2, загрузчик будет переводить плату в режим mass storage device и закидывать ваш файл на образовавшуюся флешку. Ваша программа сразу получит управление — никаких лишних телодвижений, все очень привычно.

Мне удавалось несколько раз убить загрузчик — но ничего страшного, опять переходим в режим загрузки и закидываем файл и продолжаем, как ни в чем не бывало.
Если что-то сильно накосячили и ничего и никак не работает (но BOOTSEL работает) — нужно загрузить файл flash_nuke.uf2 который вычистит флеш и вернет все в первоначальное состояние. SWD мы не будем обсуждать во избежания лишнего усложнения.

Я не ортодоксальный ардуинщик, поэтому предпочитаю использовать PlatformIO. Если честно, я никогда не использовал Arduino IDE для разработки своих программ, только загрузить что-то готовое. Кто пытался написать что-то более-менее сложное в Arduino IDE понимает, что это разновидность мазохизма. Хотя версия IDE 2.х выглядит уже гораздо лучше и похоже на настоящий редактор. Даже отладку позволяет — конечно, для тех контроллеров, где это предусмотрено.

Платка получена, подпаиваем к ней гребенку выводов и кнопку аппаратного сброса — ну что эта за адруина и чтобы без кнопки сброса?

Для начала просто их примеров загружаем blink — светодиод на плате мигает. Удивительно, но факт.

Теперь бы пару байтов на выход переслать. И вот тут — засада. У большинства процессоров — это самая простая операция, что можно придумать. А тут управление заточено на управления битами. Каждый бит обслуживается 2 регистрами по 32 бита. 64 бита на одну ножку, Карл! И это еще далеко не все, прерывания — это отдельная песня, в итоге — читать документацию вспотеешь. Если еще учесть, что она сырая и что-то понять и найти концы очень сложно.
В итоге все-таки находится регистр, который можно зацепить к выводам и переслать нашу пару байтов.
Но выглядит это так:
Код

void setup() 
{
  for (uint8_t pin = 0; pin < 16; pin++) 
  {
    uint32_t *PIN_CTRL_REG = (uint32_t*)IO_BANK0_BASE + pin * 2 + 1;
    *PIN_CTRL_REG = 5; // 5 = SIO function
  }
  sio_hw->gpio_oe = 0xFFFF;
  sio_hw->gpio_out = 0x05555;
}

void loop() 
{
  sleep_us(1);
  sio_hw->gpio_togl = 0xFFFF;
}


sio_hw->gpio_togl — это не регистр вывод, а исключающее или, полезная штука.
Все, кушать подано, садитесь жрать, пожалуйста.

А теперь бы все это сделать побыстрее — выбросить из памяти прямо на выход, используя прямой доступ в память. Надо с DMA разбираться, однако. Для начала упрощенный вариант — из памяти в память.
Разобраться с регистрами позднее будем, а пока вызываем функции богомерзких библиотек

Код

#include <Arduino.h>
#include "hardware/dma.h"

#define LED_BUILTIN 25

const char src[] = "Hello, world! (from DMA)";
char dst[count_of(src)];


void hello_dma(void)
{
  // Get a free channel, panic() if there are none
  int chan = dma_claim_unused_channel(true);
  dma_channel_config c = dma_channel_get_default_config(chan);
  channel_config_set_transfer_data_size(&c, DMA_SIZE_8);
  channel_config_set_read_increment(&c, true);
  channel_config_set_write_increment(&c, true);

  dma_channel_configure(
      chan,          // Channel to be configured
      &c,            // The configuration we just created
      dst,           // The initial write address
      src,           // The initial read address
      count_of(src), // Number of transfers; in this case each is 1 byte.
      true           // Start immediately.
  );
}

void setup() 
{
  Serial.begin(115200);
  while (!Serial);  
  pinMode(LED_BUILTIN, OUTPUT);
  hello_dma();
  dma_channel_wait_for_finish_blocking(chan);
  Serial.print(src);
  Serial.print(" -> ");
  Serial.println(dst);
}

void loop() 
{
  digitalWrite(LED_BUILTIN, HIGH);   
  delay(500);                      
  digitalWrite(LED_BUILTIN, LOW);    
  delay(500);    
}

Все работает и копируется. Дело за малым — в качестве места, куда данные копируются, нужно определить, как регистр sio_hw→gpio_out
Ну, размечтался! А накусь выкусь!
Оказывается, в этот регистр DMA просто не умеет писать!
А что делать? Raspberry рекомендует написать программку буквально из одной строчки для программируемого ввода-вывода, писать свои данные в него, а так программа уже все сама передаст на выход.
The CortexM0+ SIO address space is not accessible from the bus matrix and thus you can't DMA to it.
If you want to DMA to the pins, then make a one line PIO program that outputs data to the pins, and DMA to the PIO SM.
Вот это номер, особенно учитывая, что разобраться с программированием этого ввода-вывода не так просто — документация не самая лучшая. К одном месте кто-то обращался в поддержке — дескать, в вашей документации заявлена поддержка последовательных интерфейсов. А пример можно? Ответ был каким-то не очень дружелюбным — отойди, мальчик, не мешай работать. Как руки дойдут — так и сделаем.
— Спасибо, красивое ©.

Встроенной в ардуино поддержки ассемблера пока нет (для Python — есть). Но есть исходный код ассемблера с SDK
Чай не баре — берите, компилируйте и пользуйтесь на доброе здоровье.
Для совсем ленивых — нашелся добрый человек, сделал онлайн компилятор.

Начнем разбираться — собственно, на этом я собираюсь и закончить с обзором программного обеспечения. Пример выдран отсюда, все лишнее выброшено, осталась только суть
Итак, пишем (только не спрашивайте, что это значит) :)
Это наш ws8212_single.pio файл, этот текст просто в левую часть онлайн компилятора вставить надо

ws8212_single.pio

Код
.program ws2812
.side_set 1

.define public T1 2
.define public T2 5
.define public T3 3

.lang_opt python sideset_init = pico.PIO.OUT_HIGH
.lang_opt python out_init     = pico.PIO.OUT_HIGH
.lang_opt python out_shiftdir = 1

.wrap_target
bitloop:
    out x, 1       side 0 [T3 - 1] ; Side-set still takes place when instruction stalls
    jmp !x do_zero side 1 [T1 - 1] ; Branch on the bit we shifted out. Positive pulse
do_one:
    jmp  bitloop   side 1 [T2 - 1] ; Continue driving high, for a long pulse
do_zero:
    nop            side 0 [T2 - 1] ; Or drive low, for a short pulse
.wrap

% c-sdk {
#include "hardware/clocks.h"

static inline void ws2812_program_init(PIO pio, uint sm, uint offset, uint pin, float freq, bool rgbw) {

    pio_gpio_init(pio, pin);
    pio_sm_set_consecutive_pindirs(pio, sm, pin, 1, true);

    pio_sm_config c = ws2812_program_get_default_config(offset);
    sm_config_set_sideset_pins(&c, pin);
    sm_config_set_out_shift(&c, false, true, rgbw ? 32 : 24);
    sm_config_set_fifo_join(&c, PIO_FIFO_JOIN_TX);

    int cycles_per_bit = ws2812_T1 + ws2812_T2 + ws2812_T3;
    float div = clock_get_hz(clk_sys) / (freq * cycles_per_bit);
    sm_config_set_clkdiv(&c, div);

    pio_sm_init(pio, sm, offset, &c);
    pio_sm_set_enabled(pio, sm, true);
}
%}


То, что появится в правой части, нужно скопировать и вставить в свой файл ws2812.pio.h в ту же папку, где исходник теста
ws2812.pio.h

Код

// -------------------------------------------------- //
// This file is autogenerated by pioasm; do not edit! //
// -------------------------------------------------- //

#pragma once

#if !PICO_NO_HARDWARE
#include "hardware/pio.h"
#endif

// ------ //
// ws2812 //
// ------ //

#define ws2812_wrap_target 0
#define ws2812_wrap 3

#define ws2812_T1 2
#define ws2812_T2 5
#define ws2812_T3 3

static const uint16_t ws2812_program_instructions[] = {
            //     .wrap_target
    0x6221, //  0: out    x, 1            side 0 [2] 
    0x1123, //  1: jmp    !x, 3           side 1 [1] 
    0x1400, //  2: jmp    0               side 1 [4] 
    0xa442, //  3: nop                    side 0 [4] 
            //     .wrap
};

#if !PICO_NO_HARDWARE
static const struct pio_program ws2812_program = {
    .instructions = ws2812_program_instructions,
    .length = 4,
    .origin = -1,
};

static inline pio_sm_config ws2812_program_get_default_config(uint offset) {
    pio_sm_config c = pio_get_default_sm_config();
    sm_config_set_wrap(&c, offset + ws2812_wrap_target, offset + ws2812_wrap);
    sm_config_set_sideset(&c, 1, false, false);
    return c;
}

#include "hardware/clocks.h"
static inline void ws2812_program_init(PIO pio, uint sm, uint offset, uint pin, float freq, bool rgbw) {
    pio_gpio_init(pio, pin);
    pio_sm_set_consecutive_pindirs(pio, sm, pin, 1, true);
    pio_sm_config c = ws2812_program_get_default_config(offset);
    sm_config_set_sideset_pins(&c, pin);
    sm_config_set_out_shift(&c, false, true, rgbw ? 32 : 24);
    sm_config_set_fifo_join(&c, PIO_FIFO_JOIN_TX);
    int cycles_per_bit = ws2812_T1 + ws2812_T2 + ws2812_T3;
    float div = clock_get_hz(clk_sys) / (freq * cycles_per_bit);
    sm_config_set_clkdiv(&c, div);
    pio_sm_init(pio, sm, offset, &c);
    pio_sm_set_enabled(pio, sm, true);
}


#endif


И сам тест остался
Код
#include "ws2812.pio.h"

#define WS2812_PIN 0
#define IS_RGBW false

static inline void put_pixel(uint32_t pixel_grb) 
{
  pio_sm_put_blocking(pio0, 0, pixel_grb << 8u);
}


void setup() 
{

  PIO pio = pio0;
  int sm = 0;
  uint offset = pio_add_program(pio, &ws2812_program);
  ws2812_program_init(pio, sm, offset, WS2812_PIN, 800000, IS_RGBW);
}

void loop() 
{
  //for (uint i = 0; i < 3; ++i)
    put_pixel(0xff00AA);
  sleep_ms(10);
}


Ну и любуемся на картинку — можно подключать адресуемые светодиоды.




Как заключение: если вам достаточно обычного ардуино и не возникает желания делать чего-то более сложного, то Raspberry Pi Pico можно использовать прямо сейчас.
Если хочется странного — то лучше пока воздержаться, пока документация будет доведена до кондиции и примеров на все случаи жизни будет больше.

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

И не стесняйтесь ставить минусы, если вам кажется, что обзор не нужен. Стереть его можно значительно быстрее, чем написать :)
Планирую купить +33 Добавить в избранное +205 +298
+
avatar
  • ABATAPA
  • 07 января 2022, 19:12
+40


А если на самом деле… Сейчас полно микроконтроллеров (и плат с ними) с гораздо более интересной «начинкой» и меньшей ценой. И если отойти от «экосистемы» Arduino, то выбор немал.

А так… 60% купивших зальют готовый «скетч» и помигают диодиком, 5% сделают гирлянду к НГ, остальные… Кинут в ящик к другим покупкам с али и забудут. :)
+
avatar
+8
А те, кто сами пишут ПО — купят копеечную Blue Pill, а то и собственную плату разведут, в зависимости от нужд.
+
avatar
+2
А можно спросить? С каких это пор синяя таблетка обрела 2 ядра? И второй вопрос! Вы цену на МК от STM видели?
+
avatar
  • UWU
  • 07 января 2022, 19:58
+2
Вы цену на МК от STM видели?
Китайцы предлагают плату с доставкой на ~3.5$
+
avatar
+5
А сколько миллипроцентов гарантии на то, что на той плате оригинальный STM?
+
avatar
  • qwerty2
  • 07 января 2022, 20:29
+7
Для прототипирования в разное время у разных продавцов купил десяток штук. Все оказались оригинальными. Выходит вероятность около 100%
+
avatar
+8
Это, наверное, примерно до 2019 года было?
+
avatar
  • qwerty2
  • 07 января 2022, 20:42
+3
Да, давненько. Сейчас все изменилось?
+
avatar
+4
Да, сейчас практически все синие пилюли — клоны. Либо на GD32, что не самый худший вариант, либо вообще табуретовка
+
avatar
  • plin2s
  • 07 января 2022, 23:46
+3
Сейчас найти родной STM это скорее удача, чем реальность.
+
avatar
  • CuMr
  • 07 января 2022, 23:50
+1
маузер, дигикей.
+
avatar
0
Если речь об f103, этот динозавр и даром не нужен. Давно на али за 3$ f401 платки продаются, который во всем при этом лучше, с fpu, и даже по потреблению лучше не смотря на m4. А если сравнивать с другими МК за эту цену, то вообще не особо интересно выглядят. За 4$ уже двухядерник с BT и WF типа esp32.
+
avatar
  • plin2s
  • 08 января 2022, 10:43
+4
Ну, кому-то нужно bt+wifi, а кому-то энергопотребление и цена не $4 а поменьше. Глупо советовать ESP там, куда хотели поставить STM. P.s. помимо F есть еще и L серия.
+
avatar
  • Zolg
  • 09 января 2022, 00:23
+1
Практически 100% гарантия.
Того что на той плате улучшенный и доработанный stm gigadevice
+
avatar
  • pesp
  • 07 января 2022, 20:37
+5
Это временное явление, еще годик, и цена вернется к 1 доллару, как раньше.
+
avatar
  • AlexA42
  • 07 января 2022, 21:58
0
А на чем основано ваше утверждение?
Моя простая потребительская логика — производители полупроводников сейчас получают колоссальные прибыли, зачем им снижать цены до уровня 2019 года? Китайцы и американцы вроде активно взялись за постройку заводов, но: а) это явно не в 2023 будет сделано б) даже когда построят, зачем им снижать цены до уровня 2019 года?
+
avatar
  • Eeyore
  • 07 января 2022, 22:21
+5
По вашей логике цены никогда не должны падать, а в жизни они все же падают (хотя и не так часто, как хочется).
+
avatar
  • CuMr
  • 07 января 2022, 22:59
+2
эээ… ни разу не наблюдал чтобы цены падали. Ну разве что в конкурентных войнах. А здесь рынок уже есть, потребители (уже) привыкли что дорого, да и деваться им некуда — микросхемы все равно нужны. Так зачем производителям снижать цены даже при росте производства? А ведь еще и строительство фабрик отбить нужно…
Т.е. цены конечно могут поползти вниз. неспешно. Но еще очень нескоро. Для этого рынок должен насытиться. Что дело не одного года.
+
avatar
  • Eeyore
  • 08 января 2022, 00:29
+2
Ну не знаю. Вы не сравнивали цены на большинство электроники лет 10 назад и сегодня? Или взять ту же нефть- матушку.
+
avatar
+3
Это шутка такая? Лет 30 назад один мегабайт ОЗУ для компьютера стоил в розницу $50. Что сейчас? Или посмотрите динамику цены на телевизор 50" 4K лет за пять, например.
+
avatar
  • CuMr
  • 08 января 2022, 14:59
-1
Это от конкуренции цена падает, т.к. на рынке избыток товаров. А с микросхемами сейчас будет совсем другая ситуация.
Просто так цены не падают. Зачем продавать дешево если дорого все равно покупают?
+
avatar
  • ploop
  • 08 января 2022, 00:00
0
а в жизни они все же падают
Ок. Погуглите цену на Z80, она будет 20$-30$ Процессор, на несколько поколений уступающий современным, стоит на порядок дороже.
Просто один товар заменяется другим, при этом на старый цены не падают, а тоже растут. Оно и понятно — нет массовости, изделие переходит в разряд штучных.

Пример из другой сферы: автомобили сейчас стали доступнее, чем в 90х, но это другие автомобили. Да, они круче по всем параметрам и одновременно дешевле, но старые авто так никогда и не дешевели.

Конечно флуктуации цены ± есть, из-за рынка, конкуренции, курсов и так далее. Но глобально итоговый СЛОЖНЫЙ товар никогда не дешевеет.
+
avatar
  • Eeyore
  • 08 января 2022, 00:24
+11
Погуглил. $7.78 на Digikey, и это самая высокая цена, настоящий Zylog. www.digikey.com/en/products/detail/zilog/Z84C0008PEG/929205
Когда Z80 вышел в 70х, он стоил $39.95.
worldradiohistory.com/Archive-Radio-Electronics/70s/1977/Radio-Electronics-1977-12.pdf#page=86
+
avatar
  • ploop
  • 08 января 2022, 00:38
-11
+
avatar
  • Eeyore
  • 08 января 2022, 00:59
+8
Вы подменяете понятия. Речь шла о том, что цены могут двигаться как вверх так и вниз. «Дороже современных» тут не к месту.
+
avatar
  • ploop
  • 08 января 2022, 01:06
-4
И сильно они двинулись вниз за 50 лет? Если уж прицепились к этому примеру — можете посмотреть на более коротком промежутке времени (исключив пик цены, когда это была новинка), или посмотреть другой, более сложный товар.
+
avatar
+6
Дополню малость, доллар тогда и сейчас по покупательной способности нельзя приравнивать. Так что дешевеет электроника еще быстрее.
+
avatar
  • qwerty2
  • 08 января 2022, 00:30
+2
Такая цена потому как он уже и не производится. Эта цена так же и из за того что его никто не покупает. Он никому не не нужен, кроме редких олдфагов, кому вдруг понадобиться поднять спектрум из пекла. На них эта цена и рассчитана. Так же и с остальным старьем. Так что пример не корректен.
+
avatar
  • ploop
  • 08 января 2022, 00:41
-1
О чём я и написал — «нет массовости, изделие переходит в разряд штучных».
Он никому не не нужен, кроме редких олдфагов, кому вдруг понадобиться поднять спектрум из пекла
… и на массу промышленного оборудования тех лет, где он мог использоваться. Но там вопрос цены не стоит.
Я не конкретно про Z80, а в принципе. Не надо думать, что народ только балуется с этими изделиями.
+
avatar
  • Eeyore
  • 08 января 2022, 01:05
+3
Вопрос товарища ploop увел меня в Гугл, где я с удивлением узнал, что Zylog до сих пор существует и выпускает Z80.
+
avatar
  • ploop
  • 08 января 2022, 01:08
0
На нём много что работает. Просто никто не будет переделывать плату управления станка в миллион баксов из-за чипа стоимостью в двадцатку.
+
avatar
+4
Z80 был по тем временам (1976 год, емнип) очень удобен в аппаратном плане — требовал лишь одну шину питания +5 В (против трех у 8080), имел простой тактовый вход, длинные циклы чтения/записи памяти и I/O (что позволяло применять достаточно медленные ОЗУ и порты тех времен), а также имел встроенный механизм регенерации динамической памяти. То есть, собрать «микроконтроллер» на Z80 было намного проще, чем на других процессорах того времени. Например, в минимальной конфигурации было достаточно 5-ти микросхем — генератор, ОЗУ, ПЗУ, процессор и порт вывода. И все это работало от одного источника +5 В. Благодаря этому он широко применялся в разном оборудовании, например, матричных принтерах.

Возможно, часть этого оборудования используется до сих пор и его надо ремонтировать. Отсюда есть потребность в новых Z80.
+
avatar
-1
По вашей логике цены никогда не должны падать, а в жизни они все же падают (хотя и не так часто, как хочется).
Дайте, пожалуйста, цифры статистики падения цен на ложечки, продаваемые
тов. О.Бендером!!-артели по их выпуску превратились в концерны, а вот цены…
;-))
+
avatar
  • pesp
  • 08 января 2022, 18:44
+2
А потому что только у нас два клиента отказались от проектов, потому что посчитали дорого + 80 долл к стоимости устройства. Итого около двухсот процессоров мы не купили по цене 80 долл. Вот и посчитайте, лучше продать контроллеров на 200 долл, чем не прододать на 1600.
+
avatar
  • scaldov
  • 09 января 2022, 08:53
0
Покупайте лучше BlackPill с 401/411 — не сильно дороже, зато USB boot из коробки аппаратный, памяти вагон.
+
avatar
  • Resp
  • 07 января 2022, 19:24
+4
Вместо гирлянды я предпочитаю динамическую подсветку пространства за монитором, ambilight по-народному которая. Приятная и полезная функциональность… Можно использовать круглый год, а не только по праздникам ;-)
+
avatar
  • ARMOR
  • 07 января 2022, 20:25
0
Кстати, с ambilight что-то принципиально изменилось за последние 5 лет? Если телевизор читает контент с DLNA, есть какие-то приемлемые варианты подружить?
+
avatar
  • ABATAPA
  • 07 января 2022, 20:43
+1
В таком варианте — нет.
Поставить приставку — тогда да.
+
avatar
  • Resp
  • 07 января 2022, 21:45
0
Я про это ничего не знаю, но предположу, что, если у телека есть рамка, то так же по периметру можно развесить датчики цвета и освещённости, вроде такого alexgyver.ru/wp-content/uploads/2021/06/photoResist.jpg
+
avatar
  • alex323
  • 07 января 2022, 22:25
+9
Может вместо этой ерунды монитор/телевизор побольше купить? :)
+
avatar
  • Qurdi
  • 08 января 2022, 09:28
+11
И на него тоже ambilight повесить…
+
avatar
0
Побольше.
+
avatar
  • xDriver
  • 08 января 2022, 20:20
+1
Кинут в ящик к другим покупкам с али и забудут. :)
золотые слова, я так и сделал, и в ящике место уже кончается:)
+
avatar
0
Даже если не отходить, ESP32 и даже старый ESP8266 лично мне интереснее, приятнее и ближе. Здесь USB, там Wi-Fi, но USB есть и у Arduino Uno, и у STM32.
+
avatar
+10
Не понятно назначение сего девайса на самом деле. Ладно бы вайфай туда встроили. А так слишком мощно для простых поделок. Короче не взлетит этот камень на фоне конкурентов.
+
avatar
+4
Во многих странах, особенно в Британии («BBC Micro для нынешнего поколения», агрессивный маркетинг), бренд Raspberry Pi раскручен даже сильнее того же Arduino. И те, кто из одноплатников доверяет одной RPi («свой производитель», платы используют для образования детишек в суръёзных учреждениях, итд.) вероятно не будут даже смотреть ни на китайские ноунеймы с тем же STM32, ни на девкиты, а исключительно на Arduino или RPi, которые можно купить во многих магазинах, в красивой коробочке.

Эдакие диайвайщики-потребители.
+
avatar
+1
Это может и так, и понятно, что свой покупатель найдется, но в текущий момент интернета вещей выпускать плату без поддержки вайфай или синезуба не конкурентно имхо. У нас так вообще робото-кружки захвачены корпорацией лего.
+
avatar
+1
Вы забываете про low-energy iot-девайсы, которые работают прекрасно себе на zigbee с одной батарейкой 2032 и в их случае синий зуб и вафля только лишние потребители ценной энергии
+
avatar
  • UWU
  • 07 января 2022, 19:54
+4
Вы забываете про low-energy iot-девайсы
Народ говорит, что во сне жрёт по разным данным от 180uA до 2mA, что исключает использование RP2040 в low-energy проектах.
+
avatar
+1
Интересна даже не сама плата, а МК RP2040 с ценой в доллар, что даёт возможность разводить свои платки за дешево. STM нынче очень дорогой даже для массового производства устройств
+
avatar
  • UWU
  • 07 января 2022, 19:52
+2
STM нынче очень дорогой даже для массового производства устройств
Мелких поделок платы на STM 4$-7$, так что совсем не дорого.
+
avatar
0
Т.е. вы предлагаете увеличить размеры устройства ради запихивания в него платки за 4$-7$, вместо того чтобы взять контроллер за 1$(ок возьмем самых диких ретейлеров у которых цена на этот МК 2$ за штуку при единичном заказе)
+
avatar
  • qwerty2
  • 07 января 2022, 20:32
+1
Корпус довольно таки не паябельный в домашних условиях без спец навыка. В отличии от того же STM
+
avatar
0
Я вас умоляю… У нас люди графические чипы умудряются реболлить на коленке дома, а тут QFN-56 не распаять…
+
avatar
  • qwerty2
  • 07 января 2022, 21:28
+7
Я вас умоляю… Из ста человек умеющих держать паяльник не за жало, едва ли один найдется кто запаяет QFN без печки.
+
avatar
+18
Господа, предлагаю свои услуги секунднта! Пройдемте в сад.
+
avatar
+7
А можно устроить дуэль на мясорубках — это элегантнее. Каждое ранение безусловно смертельно. Пораженный соперник механически превращается в котлету. ©
+
avatar
  • qwerty2
  • 07 января 2022, 21:41
0
Предлагаю совместный проект «smart мясорубка». Но только на православных STM
+
avatar
0
Т.е. вы думаете, что тот кто будет разрабатывать свою плату не сможет запаять QFN56? Серьезно? Для остальных есть куча других мелких плат с RP2040, которые они запаяют в свою схему и которые всеравно будут дешевле BluePill и тем более оригинального STM32F103
+
avatar
  • qwerty2
  • 07 января 2022, 21:52
+1
Я неоднократно думал о QFN, но пока места на платах хватает использовать его не стану по причине дополнительных неудобств при сборке/ремонте. Получается что я тот самый «кто-то».
И уж точно никакой BluePill в продакшин не засуну никогда.
+
avatar
  • CuMr
  • 07 января 2022, 23:02
-1
Я вас умоляю… Из ста человек умеющих держать паяльник не за жало, едва ли один найдется кто запаяет TQFP без печки.
+
avatar
  • qwerty2
  • 07 января 2022, 23:09
0
Вообще легко. На 3ем чипе уже с микроволной рука набита у 8 из 10.
+
avatar
  • CuMr
  • 07 января 2022, 23:16
-1
откуда у них микроволна?
+
avatar
  • oleg235
  • 07 января 2022, 23:29
0
Зачем там вообще микроволна? Обычный паяльник, кусок оплётки и хороший флюс.
+
avatar
  • qwerty2
  • 07 января 2022, 23:34
0
Но с микроволной приятнее.
+
avatar
  • qwerty2
  • 07 января 2022, 23:34
0
Ну это уже глупости…
+
avatar
  • woddy
  • 08 января 2022, 02:28
0
зачем печка? фен же есть. единственная хитрость — выбрать правильный флюс
+
avatar
  • rx3apf
  • 07 января 2022, 23:33
+5
Да ладно стращать-то! Вот уж что для QFN совсем не нужно, так это печка. Т.е. если есть — хорошо, не помешает. Но штучно запаять QFN — фен с этим справится куда быстрее. Равно как и вообще с запайкой мелочевки — феном и быстрее, и аккуратнее. Но если в доме только прадедовский паяльник и коробок грязной канифоли — то, конечно тяжело…
+
avatar
  • qwerty2
  • 07 января 2022, 23:38
0
Простите, профдеформация. Печка для продакшена, фен для прототипирования/ремонта.
+
avatar
  • rx3apf
  • 07 января 2022, 23:54
0
Тут — соглашусь. Но оба варианта проще, чем паяльником. Те же QFP паять феном куда удобнее и быстрее, чем паяльником. Да хоть бы и просто двухвыводный пассив — после печки или фена он будет как заводской выглядеть, а паяльником, как ни старайся, но опытный глаз увидит разницу. А если не стараться — выходит примерно то же, что из китайских подвалов. Все сикось-накось, усы и сопли…
+
avatar
  • qwerty2
  • 08 января 2022, 00:13
0
Издревле как то так повелось что феном только снятие. Запайка только паялом. Привычка пуще неволи :)
В продакшине печь.
+
avatar
  • woddy
  • 08 января 2022, 02:27
-1
QFN паять проще чем СТМ в tsop
+
avatar
  • ABATAPA
  • 07 января 2022, 20:14
+5
МК RP2040 с ценой в доллар
В партиях от 4000 штук?
+
avatar
0
В единичных партиях самое дорогое что я видел было 2$
+
avatar
  • ABATAPA
  • 07 января 2022, 20:45
+7
Но это разница в ДВА РАЗА. Помните? «Обеспечьте 10 процентов, и капитал согласен на всякое применение, при 20 процентах он становится оживлённым, при 50 процентах положительно готов сломать себе голову, при 100 процентах он попирает все человеческие законы, при 300 процентах нет такого преступления, на которое он не рискнул бы, хотя бы под страхом виселицы.»

Так что не надо писать «с ценой в доллар».
+
avatar
-2
А при чем тут «капитал»? «Капитал», как раз возьмет партию 4000 штук по 1$. А там где партии меньше это всеравно остается лучше чем 4-7$ за сомнительного качества синие пилюли и 10$ за stm32f103…
+
avatar
  • qwerty2
  • 07 января 2022, 21:22
+2
Вполне паябельная STM32F103C6 на tme стоит 4.0303 usd в партии от 1 штуки.
+
avatar
+1
А где вы там их видите на складе? Посмотрите последние цены в других магазинах… Прозреете… На том же Digikey rp2040 стоит 1$ за штуку при заказе от 1 штуки…
На предлагаемом самим Raspberry магазине cytron rp2040 стоит 1.05$ при единичном заказе и в наличии более 500 штук
+
avatar
  • qwerty2
  • 07 января 2022, 21:39
+2
Прошу прощения, доступность проглядел. Однако, разве RP2040 доступен в неограниченных количествах? Даже если и доступен, то в нынешней ситуации, это говорит о том что данный чип никому не нужен. К сожалению.
+
avatar
-4
А! А я думал что он доступен потому что он новый и кода под него еще не написано… А он оказывается не нужен… Закостенелость некоторых инженеров в компаниях приводит к неразумным тратам…
+
avatar
  • qwerty2
  • 07 января 2022, 21:47
+2
Кода? Это же котекс, кода под него едва ли не меньше чем под ардуино-стайл
+
avatar
0
Cortex, но не забываем про PIO, который очень может упростить жизнь и под который кода как раз нет… Или вы думаете что портирование кода с одного кортекса на другой делается с минимальными усилиями? У каждого МК есть свои особенности, болячки и фичи, которые далеко не всегда находятся в другом МК
+
avatar
  • qwerty2
  • 07 января 2022, 22:14
+2
А без этого самого PIO чип не жизнеспособен? У пиков например есть подобное, но там не хочеш — не пользуй.
Или вы думаете ...
Нет, конечно не думаю. Но зная архитектуру это не проблема.
+
avatar
0
Жизнеспособен! Просто попробуйте как-нибудь портировать код с «кортекса» одного производителя на «кортекс» другого…
+
avatar
  • qwerty2
  • 07 января 2022, 22:22
+2
Неоднакратно приходилось проделывать такие трюки. Поэтому повторюсь:
зная архитектуру это не проблема.
Пы.сы. Даже с PIC на cortex переводил код.
+
avatar
  • ewavr
  • 07 января 2022, 21:41
+3
STM выпускалость(не в курсе, как сейчас) сотни разных видов, с разным ядром/периферией/памятью/корпусом. Вы предлагаете это все заменить единственным кристаллом?
+
avatar
0
Где я написал что это замена всей линейки STM32? Есть конкурент в лице STM32F103? вот для его замены вполне годно…
+
avatar
  • u3712
  • 08 января 2022, 02:14
0
Ну уж нет, F1 и F4 must die. За откровенное [...] с стратегией alt/GPIO и I2C.
Интересно только то, что было сделано позже (хотя бы тот-же F0).
+
avatar
  • OreSama
  • 07 января 2022, 20:10
+6
«BBC Micro для нынешнего поколения», агрессивный маркетинг
Ну они там в своей Британии сравнили, конечно. Бытовой компьютер, который сразу программируется на простом языке (Бейсик) и чуть погодя — на сложном (ассемблер) и схему с микроконтроллером, которую сначала спаяй, потом запрограммируй, потом победи аппаратные проблемы (банальный дребезг контактов не всякому начинающему по зубам понять и преодолеть), и вот только тогда…

… и вот только тогда приходит осознание, что простые вещи по чужим чертежам делать скучно, а свои и сложные — сложно.
+
avatar
  • UWU
  • 07 января 2022, 19:50
+8
Короче не взлетит этот камень на фоне конкурентов.
Согласен, не взлетит.
Раз нет WiFI, он конкурент НЕ для ESP, а для STM32.
По сравнении с STM32 не вижу ни одного плюса.
RP2040 слишком много жрёт во сне, где-то в 100-1000раз большем, чем STM32.
То есть, для больших задач он слишком мелкий, а для мелких слишком прожорливый.
+
avatar
  • sybman
  • 07 января 2022, 20:03
+3
Раз нет WiFI, он конкурент для ESP, а для STM32.
Где-то тут «не» потерялось;)
+
avatar
  • UWU
  • 07 января 2022, 20:03
+1
Где-то тут «не» потерялось;)
Точно :)
+
avatar
  • scaldov
  • 09 января 2022, 08:51
0
Именно так и есть, чисто для фанатов RPi
+
avatar
  • dx40
  • 08 января 2022, 17:25
0
Что значит слишком мощно? Как раз достаточно чтобы через node.js (или еще каким современным поделием) мигать светодиодом (с не слишком высокой частотой, конечно).
+
avatar
  • Demz
  • 07 января 2022, 19:17
+5
Стереть его можно значительно быстрее, чем написать
манипуляция детектед.
вот зачем?
даже если он кривой — он нужен для получения информации о товаре и его всегда можно улучшить.

Гоголь был неправ! (наверное, хз..)
+
avatar
  • LePart
  • 07 января 2022, 19:42
+6
Стереть его можно значительно быстрее, чем написать :)
Для того, чтобы стереть что-нибудь ненужное, сначала нужно написать что-нибудь ненужное (почти копирайт)
))
+
avatar
0
Для того, чтобы стереть что-нибудь ненужное, сначала нужно написать что-нибудь ненужное (почти копирайт) ))
Привет от кота Матроскина.
+
avatar
  • IH8
  • 07 января 2022, 19:48
+1
Спасибо, интересно!
+
avatar
  • UWU
  • 07 января 2022, 20:11
+4
Встречаются смартфоны, которые на батарее 1800mAh живут месяц в режиме ожидания с включенным GSM/3G.
Но вот микроконтроллера, чтобы имел сравнимое потребление, сравнимую производительность и память до сих пор нет.
+
avatar
  • OreSama
  • 07 января 2022, 20:11
0
Во времена моей молодости говорили — легко, как два байта переслать. Другие — чуть по-другому — легко, как два пальца об асфальт, подозревая под этим нечто третье.
А после удаффкома появился вариант про «два байта апкасяк».
+
avatar
+3
что им стоило обозначение контактов с лицевой стороны сделать. ведь места ж навалом. а теперь припаял на плату и всё, по бумажке смотри
+
avatar
  • navyg
  • 07 января 2022, 21:08
0
Можно кверху пузом припаять, только дырки отверстия сделать под кнопки и светодиод.
+
avatar
  • u3712
  • 08 января 2022, 02:18
+1
Одно время так и паял, проволочками от МГТФ. Вполне технологично выходило.
Потом, таки, купили фен вместо ИК паяльной станции и сей изврат перестал быть нужным. ))
+
avatar
+7
А тут управление заточено на управления битами. Каждый бит обслуживается 2 регистрами по 32 бита. 64 бита на одну ножку, Карл! И это еще далеко не все, прерывания — это отдельная песня, в итоге — читать документацию вспотеешь. Если еще учесть, что она сырая и что-то понять и найти концы очень сложно.
какая жесть, напоминает Arduino ESP8266 первых версий.

имхо только сейчас коллективный разум и гугл сделали программирование на ESP8266 не сложным — задаешь любой вопрос и тут же ответ на первой станице поиска. Для этого энтузиастам и espressif понадобилось всего 9 лет. Не думаю, что Raspberry Pi Pico будет быстрее, учитывая ее цену и отсутствие wifi, bt etc.

пы.сы. у китайцев недавно появилась новая зверюшка — W806 Microcontroller 240MHZ
+
avatar
  • qwerty2
  • 07 января 2022, 20:49
+2
пы.сы. у китайцев недавно появилась новая зверюшка — W806 Microcontroller 240MHZ
Я уже слишком стар учить новые камни, cortex и esp* пока хватает.
+
avatar
+2
я тоже не горю, тк их предыдущий камень W600 хоть и был лучше чем esp8266, но не взлетел. arduino ветку забросили не успев начать 5 лет назад.
+
avatar
  • qwerty2
  • 07 января 2022, 21:13
0
Дада, у меня тоже лежит пылиться… а надежд то было…
+
avatar
0
Из более-менее интересных камней — реалтековская амёба. Умеет в 5GHz, есть FreeRTOS, уже, значит, жить можно. Да и реализация сетевого стека достаточно вменяемая.
+
avatar
0
У амеба не дружелюбная прошивка — нужна своя плата прошивальшик. Имхо ESP8266 демократичнее — взял любой COM-UART за $1 и шей.
+
avatar
+2
Я именно через CP2102 амёбу шью, без специальных прошивальщиков. Если зачистить все следы кастомных бутлоадеров, RTL8722DM принимает по UART_LOG порту прошивку на ура.
+
avatar
+2
Опа. Подробнее где почитать? Можно ли вашим способом шить из под ардуино? Заранее спасибо.
+
avatar
0
Например ссылка

И про стирание лишних бутлоадеров можно почитать тут: ссылка (первым методом не получилось, третий не пробовал, второй работает 100%)
+
avatar
+1
Спасибо
+
avatar
+2
Ну хз… Сейчас ESP32 покрывает 99% всех моих потребностей. Даже ESP8266 почти на всё хватало. Единственные желания:
— миниатюрное устройство с полноценным Ethernet, сейчас для меня это WT32-ETH01, но хотелось бы по компактнее, или такого же размера, но с PoE.
— озу по больше, чтоб говнокодить по хлеще можно было.
— встроенный RTC, прям чтоб всё компактно, только батарейка снаружи.
Ну и ещё бы отдельную железку для ZigBee, чтоб от батарейного питания, чтоб также легко кодить как в ардуино.иде, для конструирования собственных кнопок/выключателей.
+
avatar
0
я пока ESP32 обхожу стороной тк на все задачи хватает ESP8266.
+
avatar
0
на все задачи хватает ESP8266.
Я любитель проводной связи, на 8266 не поднять изернет по проводу.
+
avatar
  • ABATAPA
  • 07 января 2022, 20:55
0
миниатюрное устройство с полноценным Ethernet
Так уж больше десятка лет есть HLK-RM04. Причём — с Linux. Правда, там маловато памяти, но OpenWRT есть вплоть до 19.07.
Но… Цена, конечно, не 250 руб. И если брать «обвязку» — он уже не такой и маленький (именно из-за Ethernet).
+
avatar
0
Так уж больше десятка лет есть HLK-RM04
так это же HAME A1, HAME A5 и тд. щас можно взять за $10. Кстати вроде как чип снят с производства, откуда они его берут не знаю.
+
avatar
  • ABATAPA
  • 07 января 2022, 21:44
0
Ну это не совсем одно и то же. Да, это Ralink RT5350, но на роутерах ничего почти не выведено, а тут — GPIO, шины…
+
avatar
0
Согласен, но если очень надо, то в сети есть фотки пятакими не распаянных GPIO для этих HAME.
+
avatar
  • ABATAPA
  • 07 января 2022, 22:50
0
Не, не надо. :-D
HLK-RM04 хватает на ali. Да и у меня валяется парочка.
+
avatar
-1
есть HLK-RM04
Есть такой. Брал лет семь назад, лот позиционировался как Ethernet to RS232. Прошивку там не менял, но устройство в целом полное г… Кстати, помню как через год после покупки мне писал продавец и интересовался, всё ли впорядке, как работает устройство, доволен ли я покупкой. Я высказал своё фи, но мне никто не ответил и не предложил помощь.
Имея в виду устройство с Ethernet я подразумевал программируемое в ардуино иде устройство размером не больше чем сам разъём изернет.
В делах автоматики и диспетчеризации я жуть как не люблю беспроводную связь. Раньше для коммуникации баловался всякими собственными велосипедами, какое-то время мутил на rs485, пробовал связь на on ware… Но теперь надоела вся эта ересь, полюбилось делать всё на Ethernet и гонять там web и mqtt по TCP IP. Сейчас такая концепция у меня в голове. И устройства стремлюсь делать перенастраиваемые через web, а не как раньше, чтоб сменить что-то, например IP, надо было перезаливать прошивку.
+
avatar
  • sim31r
  • 08 января 2022, 02:59
-2
Зачем такая минитюаризация? MOXA с пачку сигарет плюс блок питания и для промышленного оборудования это не проблема.
Беспроводные сети имеют плюс, что они гальванически развязаны. RS485 может выжечь и порты и дорогостоящее оборудование при ударе молнии рядом. На оптику тогда уже лучше переходить.
+
avatar
+2
Зачем такая минитюаризация
Чтоб уместить в мелкую клеммную коробку, или в подрозетник, или в какое либо готовое заводское устройство, типа телевизора, роутера, и т.п.
Беспроводные сети имеют плюс, что они гальванически развязаны
Ну раз плюс назвали, то принято и минусы называть.
RS485 может выжечь и порты и дорогостоящее оборудование при ударе молнии рядом.
Ну во-первых, при ударе молнии «рядом» и без rs485/323/Ethernet у вас всё выгорит. Хотя бы входные цепи приёмных устройств.
Во-вторых, от этого тоже есть гальванически развязанные rs485 и 232, и стоят они не более $5.
В-третьих, какое дорогостоящее оборудование? Свитч на 100 мегабит за 380 рублей? Или сгорит само сердце — wt32-eth01 за 800р? Да, потеря потерь, надо вложить в 100 раз больше и перейти на оптику, действительно…
На оптику тогда уже лучше переходить.
Да. Поржал. Это новый уровень, ардуино, ESP8266, esp32, WT32-ETH01, и ОПТИКА, мать её…
Осталось только конвертеры для дуинок сделать uart to оптика, пигтейлов закупить, ну и сварочник, чё уж там…
+
avatar
+1
По оптике кстати есть еще такая тема, как связь по пластиковому оптоволокну. Искать POF оптика. Но там с дальностью проблемы. Несколько десятков метров обычно максимум. Зато разделывается чем угодно и не надо реализовывать SFP интерфейс (приемопередатчики там намного проще).

Свитчи кстати тоже разные бывают- как длинки за 400 р на 5 портов, так и кошки на 48 портов с POE портами за пару килобаксов:)))
+
avatar
  • sim31r
  • 08 января 2022, 21:54
0
Очень круто, уже хочется к Ардуине прилепить для экспериментов.
infiber.ru/biblioteka/stati/pof.html
+
avatar
0
Кстати, POF оптика еще до ардуин и прочих вещей появилась. В тех же станках, особенно где есть высокое напряжение- например мощные лазерники и т.д вовсю применяли/ применяют POF оптику для гальванической развязки. Кстати и в быту есть тема с POF оптикой, известная как интерфейс toslink:)
+
avatar
  • sim31r
  • 08 января 2022, 21:52
-1
Медиаконвертеры по 12$ у китайцев уже есть. Если буду делать сеть с соседями только их буду использовать. Воздушка медная потому что летом в грозу может выжечь порты или комп целиком.
Сварочник не обязателен, кабель взять с запасом или вызвать специалиста, компаний что варят оптоволокно сотни в любом городе.
+
avatar
+1
Ну медиаконвертеры и в РФ не дороже китайцев- в том же НАГе от 850 р они стоят. Правда с физлицами наг не особо работает, но в принципе кроме НАГа есть и другие компании продающие такое же железо за такие же деньги.

А по сварке- для малых расстояний вообще или просто готовые патч-корды оптические с приваренными на заводе разъемами, либо оптоволокно плюс «быстрые» бесклеевые разъемы и скалыватель (они в принципе есть уже и китайские за пару тысяч) и все. А, ну и стриппер для снятия внешней оболочки с волокна- еще плюс тысяча. Либо заместо разъемов соединители и пигтейлы, плюс опять же скалыватель и стриппер (хотя в соединителях насколько знаю есть гель с таким же коэффициентом преломления, как у волокна, поэтому даже скалыватель необязателен, но все-же крайне желателен).
+
avatar
  • ABATAPA
  • 08 января 2022, 03:08
+1
но устройство в целом полное г
«Вы просто не умеете его готовить.»©

10 лет назад ничего в таких размерах с Linux, Ethernet и GPIO было не найти.
+
avatar
0
«Вы просто не умеете его готовить.»©
Разумеется не умею. Я не повар, и ради того, чтоб научиться готовить яичницу дергать пинами, поваром становиться не собираюсь.
10 лет назад ничего в таких размерах с Linux, Ethernet и GPIO было не найти.
Ну во-первых 10 лет назад для любителей линукс уже был народный mr3020 и его младшая семисотая модель, которая была вообще в каждом магазине торгующим электроникой, и он был меньше, он был с изернет, он был с WiFi, он был с USB, и да, около 5 пинов у него тоже было, а кому мало цепляли ардуину по уарт, сам делал…
Ну а во-вторых: у меня нет мании на линукс в каждом устройстве, у меня и без линуксов отлично датчики считываются по spi, i2c, on wire и т.д., и не менее отлично всё это транслируется куда угодно по тем же rs232/485, mqtt, да хоть get'ы в БД по тому же tcp/ip.
+
avatar
  • ABATAPA
  • 08 января 2022, 13:50
+1
около 5 пинов у него тоже было
Но не было SPI/I²C. Ну, если один датчик температуры опрашивать, то можно и программный битбанг…

у меня нет мании на линукс в каждом устройстве
всё это транслируется куда угодно по тем же rs232/485, mqtt, да хоть get'ы в БД по тому же tcp/ip
Но как только это выходит из домашней «песочницы» и понадобится, к примеру, SSL/TLS, то всё сразу становится иначе: в Linux это делается легко и удобно, а в какой-нибудь Atduino — сложно, «толсто» (для прошивки) и очень урезанно.

Вы заявляете, что HLK-RM04 — «в целом полное г», но это не так, сравниваете готовый промышленный модуль с платой роутера и предлагаете паяться проводами к пятакам? «Для дома, для семьи» это ещё сойдёт (хотя зачем, если есть нормальные альтернативы), а вот для чего-то более серьёзного — нет.
+
avatar
+1
«Для дома, для семьи» это ещё сойдёт
а вот для чего-то более серьёзного — нет.
Ну знаете, «для чего-то серьёзного» я не рассматриваю ни то, о чем обзор, ни mr3020, и уж точно не этот хайлинк. Серьёзное для меня, это то, чем я занимался несколько лет до того, как стал ИБПшником — в металургической отрасли это Сименсы S300/S400 со всякими моксами и позолоченными релюшками от шнайдера, и минимум это овен плк, со всякими интерфейсами от овена.
Ещё застал системы от Бош, в самом представительстве Боша и в Мегах по России.
И для меня совсем не ясна эта ниша устройств типа HLK-RM04, в продакшн они не попадут никогда, комьюнити 0.00. Проектов на них тоже около нуля. Какие плюсы, то что там Линукс?
+
avatar
0
да вот вот уже почти… ESP32-H2 от эспресиф, risc-V с зигби/BLE. В IDF поддержка будет практически сразу, ардуино тоже подтянется. Если с энергосбережением не напортачат, то должен быть оч интересный чип.
+
avatar
  • qwerty2
  • 07 января 2022, 20:40
+1
Плюсов второго ядра на данный момент вообще не видно. Вторым ядром можно было-бы держать беспроводной интерфейс, но его тут не завезли. Параллельные вычисления без поддержки RTOS тоже слишком трудоемки. Или есть уже такая RTOS?
+
avatar
+1
Есть — BuguRTOS.

Хороший контакт с автором, извечные идеалы сообщества, ламповость.
+
avatar
  • qwerty2
  • 07 января 2022, 21:11
0
Спасибо, буду знать. Интесно бы на тесты SPM поглядеть — есть такие?
+
avatar
  • oleg235
  • 07 января 2022, 22:48
0
BuguRTOS
Хорошее название.
Ждём ButthuRTOS.
+
avatar
  • CuMr
  • 07 января 2022, 23:14
+1
да не. просто читать нужно как BugurtOS.
+
avatar
0
BugurtOS
б.у. опт ОСь — ? :)
+
avatar
  • oleg235
  • 07 января 2022, 23:27
-1
+
avatar
+1
MBED там и крутится внутрях, а поверх ардуина навернута
+
avatar
+3
Сабж интересен Микро и СиркуитПитоном. Не надо к нему прикручивать Ардуино
+
avatar
  • Lvenok
  • 07 января 2022, 22:03
0
Версий с Wi-Fi не предполагается???
+
avatar
+1
Есть платы, где esp32 и rp2040 вместе стоят. Все-таки ног у rp2040 поболее будет и, я надеюсь, документация все-таки лучше будет. А так кто знает, что у разработчиков в голове? А esp32 для беспроводных соединений уже классика жанра.
+
avatar
+6
Изначально, при презентации чипа, тоже была реакция «нафига он без беспроводных интерфейсов». Но наличие огромнейшего спроса на питонщиков, вдруг поставило все на свои места. Нужна «песочница» для выращивания питонщиков. Вот ее и организовали. Через 2-3 года увидим, верная ли была затея.
+
avatar
0
Ну не знаю. Крутить на камне виртуальный микропитон, который исполняет ваш код на питоне? Так никаких мегагерц и килобайт не хватит.
+
avatar
+3
Ну про ардуино — тоже много чего говорят. Но по факту — это значительное снижение входа. Так и с питоном — привыкнут быстро для своих поделок кодик на простом питоне писать — глядишь и подтянется следующее, после ардуинщиков, поколение питонщиков.
На микроконтроллеры переходят все более и более высокоуровневые языки. «Молодежь требует». А технологии позволяют.
+
avatar
  • u3712
  • 08 января 2022, 02:32
0
Гм, что-то они позволяют?
esp32, нужно подключить ADC через SPI. Допустимая частота SPI 2.5М. Прикинул временные затраты, вроде выходит 30-50 kSPS. Собираю в железе, код через ихний фраймворк. Ну и что " технологии позволяют"? — 15 мкс/байт. Обмен требует передачу 4 байт. Итого, от «30-50 kSPS» остается пшик.
Но и это не всё, дальше будет интереснее — в железе esp32 для режима half duplex заложен режим автоматической пакетной передачи. Т.е. можно записать и получить ответ единожды пнув SPI. Однако, фраймворк написан программерами для программеров. Им заморочки железа перпендикулярны.
Последствия перехода с железом с «регистрового» уровня на высокоуровневые [...] интерпретаторы понятен и очевиден, как и его последствия. «Ногодрыг» — это ихнее «всё».
+
avatar
0
Посоветуйте что купить новичку для того чтобы поковыряться. Хотел бы домашнюю торрент качалку, доступную по сети по SMB и с возможностью подключения, либо в наличии usb 3.0, ethernet гигабитный.
+
avatar
  • ABATAPA
  • 07 января 2022, 22:51
+1
ITX.
+
avatar
  • oleg235
  • 07 января 2022, 22:57
+1
+
avatar
0
Если по приколу — малину 4 в прикольном корпусе с устанавливаемым внутрь SSD, либо есть под sata похожие.
А если — что бы надежно и долго работало — то что-то вроде HP ProDesk 600 G3 DM. Б.у. много навезли, можно G2 или даже G1 брать, по цене…
А если есть желание поразбираться, то Friendly NanoPi R4S 1GB/4GB Dual Gbps Ethernet.
+
avatar
+4
Вы таки будете смеяться, но у меня это все делает ТВ-приставка. Сама качает и по smb доступна. И порт гигабитный
+
avatar
  • Aahz
  • 08 января 2022, 10:35
0
ТВ-приставки сейчас это дешево и сердито. Стоит дешевле малины, корпус и блок питания в комплекте. Одно время крутил octoprint на тв приставке. Работало быстро, да еще фильмы смотреть параллельно было не проблема.
+
avatar
  • UWU
  • 08 января 2022, 13:40
0
ТВ-приставки сейчас это дешево и сердито. Стоит дешевле малины, корпус и блок питания в комплекте.
Только для большинства ТВ-приставок нужно прикручивать охлаждение, потому как перегреваются, если их нагрузить.
+
avatar
+1
TV приставка — тоже ок. Туда можно сразу Armbian и вперед. Опять-же просто торрентокочалку можно хоть на роутере устроить. Вопрос в надежности как соединения, так и присоединения винта к железу.
Но поскольку звучало «что купить новичку» — в комьюнити малины больше инфы, как это сделать с нуля. А для Х86 — вообще ничего мудрить не нужно.
+
avatar
0
У меня стоит coreelec и все делается НЕ через ssh, а просто через установки add-in’о-в из приятного интерфейса
Это касается качалки. Диск подцепляется автоматом, монтировать не нужно
+
avatar
0
Диск подцепляется автоматом, монтировать не нужно
И в ntfs на запись, наверное…
И при этом для самбы юзеров много можно наклепать, небось?

Еще раз — просто торрентокачалку с доступом и просто самбу с примитивным доступом можно поднять почти на любой линукс-железке.
Но минимум непоняток для новичка будет там, где ему есть у кого спросить.
+
avatar
  • X3Shim
  • 08 января 2022, 18:51
+1
>> И в ntfs на запись
Не нужно ©
+
avatar
  • rexen
  • 08 января 2022, 22:10
+2
в наличии usb 3.0, ethernet гигабитный
— мне кажется, что с такой опцией дешевле всего будет БУ-шная х86-система. Я себе Intel Core-i3 540 брал за 500 рублей (на Авито и по 200 видел), мать на сокете 1156 — около 2 тыр, 4ГБ ДДР3 — 500, БП, корпус — ещё 500. Итого 3500руб (чуть меньше $50). Если постараться/повезёт — то и в 3 тыр можно уложиться.
Да, оверпрайс как для торрентокачалки, да и ТВ-приставки дешевле в полтора-два раза.
Но это ведь полноценный ПК, который и поюзать можно всеми мыслимыми сценариями, набор периферии — на любой вкус. Жрёт только много и «пылесосит» соответственно (хотя я в своём кастомном корпусе протянул от БП трубу до проца — теперь 12см-вентилятор блока питания в одиночку тихо и достаточно эффективно охлаждает всё).
+
avatar
  • rexen
  • 09 января 2022, 19:04
0
Или ещё дешевле, новее/тише/холоднее — AMD Athlon на сокете AM1 — на Авито комплекты отдают по 2 тыр.
+
avatar
  • kukuseg
  • 10 января 2022, 18:39
0
+1 к x86 — обычно всё и начинается с мне только спросить мне только торренты. Потом веб-сайтик захочется, помоечку для файлов, личный календарик, контакты, видео шарить, а там и до крипты недалеко! :)
Иметь «слабый вендодесктоп» намного круче и гибче, чем все эти прыжки вокруг ARM. Это не говоря про мириады дров, уже написанных для венды.
+
avatar
  • Romureg
  • 07 января 2022, 23:14
+1
я конечно шашек давно в руках не держал но как ваш код компилируется не пойму хоть убейте.
+
avatar
  • Ammo1
  • 08 января 2022, 00:12
+2
Блин, простите меня! Я случайно нажал дизлак вместо лайка, а изменить ничего нельзя на муське.(
Не стирайте, это полезное.
+
avatar
+3
Никто стирать не будет!
А вас минус останется тут и после этого автор не сможет с этим жить пойдет за выпивкой и на него упадёт сосуля! После этого карачун ему...)))

Что полезное все промахиваются, а сайт пока работает никто править не будет. Ибо + и — ерунда это…
+
avatar
+6
Почему-то что бы я не написал, буквально через несколько минут после публикации появляется несколько минусов, у кого-то на меня явно аллергия.
А платка была куплена — идея была переделать мой старый проект на более дешевый вариант, никакие ESP там не катят, а вычислений особых нет, просто надо гнать 2 байта данных довольно быстро.
Проект тут — Большой дисплей. Замороженный проект
+
avatar
+3
а вы присмотритесь на I2S движек у ESP32, можно очень быстро гнать данные в пины из памяти, 16 каналов по 20 MHz вообще не проблема. Я работал над этой библиотекой, она с легкостью тянет RGB LED панели, количество упирается в размер ОЗУ под ДМА буфер.
+
avatar
0
Хороший вариант, почему-то я вообще игнорировал I2S и не смотрел в его сторону, считая его чем-то чисто звуковым.
+
avatar
+1
у есп32 на и2с конечно есть свои заморочки, но а у кого их нет? :)
Но вообще движёк довольно неплохой, большой плюс это то что под буффер можно выделять почти всю доступную память, а не думать как по прерыванию успеть заполнить мелкий буфер регистров как в случае с RMT. Легко сделать double buffer если нужно бесшовное преключение. В общем есть с чем поработать в плане функционала…
+
avatar
  • Alex_Ts
  • 10 января 2022, 15:23
0
читал на Хабре — очень интересная статья)
+
avatar
  • kukuseg
  • 10 января 2022, 18:41
0
Это моргатели диодиком вас минусят :)) потому что ничего не поняли. Я в целом тоже ничего не понял, но плюсанул хотя бы за то, что мне стало понятнее, что «малина» мне нафиг не нужна. Играюсь с разного рода ардуинками и STM32 — хватает за глаза.
+
avatar
  • Krist
  • 08 января 2022, 00:30
+2
14 кБ на блинк? Вот это я понимаю — забить на оптимизацию. Забить намертво. Молотком…
+
avatar
0
Кувалдой :)
+
avatar
  • u3712
  • 08 января 2022, 02:40
+1
donBaton, на данный момент — esp32, если не тошнит от их «HAL»а.
Ваш subj, на ARM M0, да еще и за такие деньги/доставаемость/юзабельность — это только для фанатов Raspberry RI.

Вообще, маладцы, я тащусь от них — взяли самый хламоподобный процессор, который даже делить не умеет, и сделали из него «свяркающый брильянт». (сарказм) Нет деления? — нет проблем, поставим аппаратный делитель. Чтоб поделить, сбегайте в периферию и потопчитесь в ожидании результата.
+
avatar
  • INN36
  • 08 января 2022, 22:33
0
который даже делить не умеет
лучше пусть делить не умеет, чем будет делить отрицательные величины как на интелах вопреки здравому смыслу элементарной математике…
+
avatar
-1
Странное «кино»...-2(два!!) поста написал в тему, и оба исчезли…
А ведь это не письма из Казахстана.
О-о, одно нашлось! ;-))
+
avatar
0
Как видите, все очень просто, большую часть площади занимает RAM.
Это слой верхней металлизации, а не ячейки памяти.
Защищаются от реверса :)
+
avatar
0
А если лазером скальпировать, по слоям?
+
avatar
0
Азотной кислотой стравливается легко:
www.youtube.com/watch?v=RB6JQmqBeIE&t=648s
+
avatar
  • Aksakal
  • 08 января 2022, 13:59
-3
Второй обзор за год плюсую! Неужто в этом болоте что-то интересное стало появляться. Спасибо за обзор.
+
avatar
  • Herz
  • 09 января 2022, 18:34
0
0: нет встроенной флеш-памяти
Поясните мне, отсталому, что имеется в виду? ОЗУ? А память программ — это не флешь?
+
avatar
0
Просто она внешняя, сейчас так модно. В ESP32 тоже самое. На фото микросхемка рядом с контроллером — это внешняя флешка с QSPI интерфейсом. Программы там и хранятся хитрым образом.
+
avatar
  • Herz
  • 09 января 2022, 19:43
0
Спасибо. А это тогда что?
264 КБ памяти
Это ОЗУ? Внутреннее?
+
avatar
0
Да, это ОЗУ
+
avatar
  • Herz
  • 09 января 2022, 21:26
0
О, теперь понятно. Спасибо ещё раз.