The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Проект Raspberry Pi представил плату Pico на основе собственного микроконтроллера"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Проект Raspberry Pi представил плату Pico на основе собствен..." +/
Сообщение от n80 (?), 28-Янв-21, 07:52 
> 232RL терпимо, и у меня не миллионные тиражи, 1-2 бакса не принципиальны.

Ну, разница уже на сотенных тиражах ощутима. А ещё жаба душит банально: FT232RL ~ $3, STM32F072 ~ $2, STM32F042 ~ $1. Отдавать 3 бакса (впрочем, мне почему-то запомнилась ещё более высокая цена, давно не следил) за железку с такой ограниченной функциональностью — ну не поднимается рука как-то, хоть и должно обилие готовых библиотек как-то вразумлять.

> Но вообще CP210x от силабсов напрашивается попробовать.

Да, эти в своё время очень понравились, хоть универсальности ещё меньше FT232, кмк.

> Я покупаю у нормальных саплеров, клонопроблемы не е..т.
> А так я линух юзаю и "ftdi patches" только как 1-апрельская шутка там были.

Я тоже, внезапно, на нём. Хотя не всегда это можно сказать про заказчиков.
Но так-то тут опасения не столько из-за драйверов, сколько из-за лагов и разъезжающихся таймингов, если нарваться на программный клон на базе какого-нибудь МК.

> А налаженные цепочки поставок у фирм - таки работают. Они не стесняются вывесить такие вещи на сайтах, хинт!

Да можно, всё можно. Но как-то в итоге так я и прошёл мимо FTDI.

>> Поэтому приходится смотреть в сторону всякого странного.
> Например чего?

Тут идёт моё сплошное ИМХО (и я не просто так говорю слово «странное»). Если нужен чисто UART, однозначно CH340 (впрочем, у него ноги слабо тянут, так что если нужен UART с значительно более мощными выходными драйверами, CP210x спасёт, а ещё у силабсов есть большой плюс в плане наличия в отечественных магазинах, ну и почему-то их подделывают мало). Если неспешно дрыгать ногами с быстрым накидыванием прототипного софта, CH341. Если GPIO у CH341 не хватило, да и хочется странного и более оперативно ногами дрыгать, CH55x (но это прошивку писать придётся). Если же возможностей CH55x не хватило, пора браться за STM32F042, F072 или F103 (или ещё кого пожирнее). Где-то когда-то мимо пробегали Cypress FX2 (и его близкие родичи), но тоже недёшево, но всё равно прикольные они, особенно FX3.

Из ультра-бюджетного с USB есть ещё контроллеры STC8H8KxxU, они дороже CH55x, но у них и периферия интереснее. Но читать их даташиты и писать по ним код как-то очень утомительно, так что я это просто как вариант для странного будущего в заметки внёс. Кстати, в свежих ревизиях самых дешёвых контроллеров STC (STC8G1K08 и STC8H1K08) есть заливка прошивки по USB. Т.е. вдуматься только: по USB можно залить прошивку, но периферии такой у контроллера нет, т.е. в своём коде использовать USB на них нельзя. Я сначала думал, что эти извращенцы в бутлоадере реализовали VUSB на 8051 1T и не хотят ни с кем делиться реализацией, но сейчас склоняюсь к тому, что там просто кристалл STC8H8KxxU и программное обрезание функциональности (впрочем, как приедут STC8G1K08A, надо будет попробовать потыкаться по адресам периферии, может и не залочено даже).

> ИМХО ничьим, "F10x lite". По таймлайну после 10x - вторым вышел вроде.
> Соответственно облегчен относительно оных, usb нет, памяти меньше, ADC 1, 24МГц
> макс (зато все симметрично, без waitstates, 1 глобальный лимит на всё).
> И вот PLL до кучи попродвинутее 101-103, предделитель поставили нормальный. В
> 101-103 был только div/2, что намного менее интересно чем 2...16.

Ну вот такой делитель очень уж напоминает F1xx CL (connectivity line, F105/F107).
Возможно, он был их предшественником. Возможно, последователем. Но это надо мануалы сравнивать, конечно, до чего я ещё не добрался.

> Чипмейкеры чипы собирают, типа конструктора из кубиков. У амд в amdgpu хорошо разрисовано как они это делают, блоки по версиям разложены. Остальные тоже это делают. Просто не все афишируют.

Да, это понятно, особенно если был опыт разработки на HDL. Но вот тут не афишируют и приходится догадываться, реверсить.

> Увы, про STM8 я не в курсе. STM32 я в линухе обычным gcc'ом програмлю. С stm8 так не катит вроде, да и зачем мне 8-битники? Я когда-то атмеги прогал, но все уже забыл, у F10x железо намного круче.

Ну, attiny/atmega — кошмар и ужас (совершенно нелепое по нынешним меркам железо по космическим ценам), но когда-то было очень плохо с альтернативами, это я понимаю, но сейчас о них речи не идёт. Что же до STM8, я очень долго считал их совсем бесполезными (особенно с учётом отсутствия поддержки в GCC, что очень больно). Но потом выяснилось несколько нюансов:
1. Они работают в широком диапазоне напряжений. От 3 до 5.5 без внешнего преобразователя — аргумент существенный (да, проект с питанием от 18650 и очень ограниченным пространством, нужно было вписаться в существующий корпус).
2. Они бывают даже в SO-8, что тоже полезно в условиях ограниченного пространства.
3. Хотя шина данных там 8 бит, но архитектура местами вполне 16-битная (почему-то big endian), ну и вообще довольно прикольная.
4. Когда в более старом проекте понадобился расширенный диапазон температур, самым дешёвым вариантом оказался STM8AFxxxx (A — automotive, звучит обнадёживающе). Правда, тогда я в STM8 ещё не умел, так что сказал «НЕТ» и делали в итоге на несколько более дорогом STM32F031F6P7, хоть у него диапазон температур и напряжений послабее, но для соблюдения ТЗ хватило и испытания оно достойно прошло.

> У него отдельные DS и TRM. Субъективно F10x-lite. Код может работать на F10*, я на 100 и 103 один блоб гонял, если только 1-й ADC юзать и младшие номера периферии вообще. Есть ли там 2й - а вот хз, не сканил. Могу какой-нибудь характерный паттерн по адресу поискать, если у каких-то регистров дефолт подходящий.

Да тут и без паттернов, STM всё-таки старается периферию по одним и тем же адресам держать в близких линейках (STC, я смотрю на тебя с большим укором), так что просто взять адрес от F1xx контроллера со вторым ADC, убедиться в том, что у F100 по этому адресу в даташите написано reserved и попробовать поработать с ADC2.

> 100%. Господа снимавшие фузы декодировали структуру даже. И смогли стереть только фузы, экранировав УФ от остального массива бумажкой. Я бы не отказался на свое горе научиться скажем стирать STшный бут в пользу своего :)

Да-да-да, эта возможность прямо очень манит. Правда, бут там всё-таки может оказаться масочным (дороговато всё-таки флеш-память на такое переводить, хотя STM и может такое себе позволить), но это надо смотреть на картинках вскрытых чипов. Хотя, на тех же CH55x бут явно частью флеша является (да и у STC попадался намёк про возможность написания и заливки своего загрузчика) и мне вот прям очень любопытно, как же его туда заливают при производстве (т.к. там, казалось бы, нет JTAG/SWD/SWIM/etc). В даташите CH55x, кстати, есть троллинг насчёт наличия полунедокументированного интерфейса программирования якобы через SPI, многие повелись, но после пристального взгляда становится очевидно, что это пины UART2, работа с которым явно видна в коде штатного бутлоадера (его область можно невозбранно читать, тоже плюсик в карму WCH).

> А вообще, вот https://www.aisec.fraunhofer.de/content/dam/aisec/ResearchEx...
> https://github.com/JohannesObermaier/f103-analysis

Огонь, спасибо!

>> (а не смесью из мелких кусочков flash и OTP)
> Option bytes и flash разные структурно: флеш блочно стирается. Option это не катит, они более гранулярные.

Ну flash (EEPROM) — термин общий и он весьма разный бывает, так что сделать нужный размер страницы (2 байта) для области option можно.

> Лично мне такие потоки как-то особо не требовалось. Хотя возможно нечто типа
> usb-осцила сделать и прикольно, но для такого наверное F30x лучше...

Осциллограф (приёмник отражённых зондирующих импульсов, PLC-модем, etc), логический анализатор (или быстрый ногодрыг на замену FTDI), мостик в систему с ISA (PC/104) или ещё какую не очень медленную и/или широкую шину и т.д. В общем, разные идейки могут возникать.

> Я сделал себе сетап каналов с временами сэмплирования и поэкспериментировал с разными.
> Понял как не бомбит. А потом почитал как adc реально сделан и понял почему так.

Ну я в своё время на статейку с объяснениями наткнулся (ссылку быстро не найду, пожалуй), поэтому удалось почти без блужданий дойти.

>> Причём, на каком-нибудь AVR это тоже было, но там они этого не замечали из-за существенно невысокой частоты переключения и скорости оцифрения.
> И битов меньше. А так у STM'а прикольный ADC, отдельные LSB хорошо видно, если не идиотничать.

Мне просто вспомнилось, как один не очень внимательный персонаж упёрто пытался доказать чатику, что у STM32 АЦП хуже AVR'ного. Такой headdesk (даже не facepalm), просто жуть.

> 44100 * 2 = 88.2 кило в секунду (1 канал CD-quality). Ну пусть 2 (stereo), менее полутора мегабитов. Вроде не проблема при 12 у FS? Они точно что-то декодили?

Хмм, а ведь и правда укладывается. С другой стороны, проекты-то разные всё равно гуглятся.

> А они там сорц прошивок дают?

Конкретно по поводу I²S, USB и Ethernet мне вспоминается только картинка с настройкой тактирования. Демки с таким кодом могло и не быть, но я как-то и не искал.

> А то вон на солнечный инвертер с странным преобразователем - "contact nearest sales department". Блин, троллфэйс какой, сорц на апнот настолько зажать.

Отжигают. Кстати, недавно на аналогичное у Intel наткнулся: https://community.intel.com/t5/Embedded-Intel-Core-Processor...
«I have sent you an e-mail with the isp test application folder to the e-mail address on your account. Intel Atom ISP Test App is free software: and it's under the terms of the GNU General Public License.»

Если оно под GNU GPL, почему нельзя выложить на интеловском git, а нужно каждому отдельно руками на почту слать? Дивные люди. К счастью, кто-то на свой github всё-таки залил.

> Я так понял что в 1й версии они реюзнули чип для DVD плееров, те стали малопопулярны, а тут вот такой sink для лежака придумали. Это объясняет почему ARM до кучи, а videocore - их все :)

Ааа, так вот оно чего. Теперь понятно, откуда там блок MPEG-2 декодера, требующий лицензионного ключа.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Проект Raspberry Pi представил плату Pico на основе собственного микроконтроллера, opennews, 21-Янв-21, 23:15  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру