Добрый день всем, Как и обещал отписываюсь о первых результатах экспериментов с этим добром. Сегодня ко мне приехали мелкая девборда: http://stc-51.com/devtools/stc51-starter.php программатор (на практике - просто usb-uart донгл), и десяток STCшных мк попроще. В общем, главным плюсом стоит отметить стоимость. В остальном, не хуже и не лучше других мк. Процесс особенно вначале не для слабонервных, так что запасаемся валерьянк^Wтерпением. Особенно при чтении даташитов. В виде компилятора я выбрал sdcc, ибо был в репозиториях и умеет архитектуру 8051, на выходе него легко можно получить готовый хекс для заливки. Для работы под виндой производитель рекомендует Keil, но я его не ковырял, ибо нет у меня желания в винду возвращаться. Для работы с SDCC потребуется хедер файлик: http://www.stc-51.com/devtools/STC_NEW_8051.H Там худо бедно описаны STCшные регистры и на помигать диодами и инициализировать уарт хватит.
Для заливки используется спец софтина: http://stc-51.com/devtools/STC-ISP-V4.8 ... NGLISH.EXE Прошивальщик написан на VB6 и криво переведен на английский. Впрочем, все основное понятно. Если верить документации, то загубить STC неправильными фьюзами проблематично. Параметры работы выбираются галочками в GUI. необходимость gui для прошивки здорово раздражает, в makefile не запихнешь.
Сам протокол никак не документирован, но я подрубил две RX пины от ft2232 и немного посниффил самопальной софтиной протокол. (Ну и еще кое что почерпнул отреверсив местами софтину-прошивальщик) Частично процесс уже восстановил. Суть такая: мк при старте маленькое время ждет по уарту волшебного байтика (0x7f), по которому автовыставляет, если это возможно, баудрейт уарта, далее контроллер шлет кучу данных, в которых видна его сигнатура, выставленные параметры, частота с которой он работает и еще какой-то хлам, назначение которого я не совсем пока еще понял), далее контроллер софт-сбрасывается, и уже высылаются хекс иидет дальнейший обмен данными. Сейчас как закончу носиться с документами в аспирантуру, напишу нормальный прошивальщик из командной строки.
Если не считать недостатком немного кривой английский в даташитах, и идиотский прошивальщик, то в общем и целом остается более или менее приятное впечатление.
_________________ Отворот и приворот. Потомственный мастер. Выезд со своей отверткой.
Имхо интересно разве что для массовых производителей, экономящих каждый цент. Чипы сами по себе малоинтересны - слабая периферия, по цене ненамного ниже STM8/32.
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
А корпус DIP8 ничем не лучше SO-14 даже для домашних LUT-изделий «выходного дня», не говоря уже о TSSOP для серии
_________________ Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Добрый день всем, Как и обещал отписываюсь о первых результатах экспериментов с этим добром. Для работы с SDCC потребуется хедер файлик: http://www.stc-51.com/devtools/STC_NEW_8051.H
Я заметил, что таблицы SFR разные, допустим для STC12C5Axx и STC12C56xx. И адреса некоторых регистров не совпадают. А хедер-файл, как ни странно, один.
Что-нибудь новенькое наэкспериментировали?
P.S. Нашел заголовки для других камней на их китайском сайте.
Кроме пробных программок небольших я особенно не гонял. Так что про хедер и SFR ничего не могу сказать. sdcc вроде нормально подцепил. Штатный прошивальщик неюзабельное Г. Быстренько наваял сниффер, отреверсил почти полностью протокол прошивки. Вот сырцы сниффера: https://github.com/nekromant/usniffer (cборка как обычно - autoreconf --install --force && ./configure && make && make install, под виндовс не собирал) Нужно два уарта, RXы вешаем на линии по которым будем прошивать STCшку, после запускаем и смотрим дамп. Коды устройств я выдрал из штатной прошивальни, прошивка шьется блоками, каждому из которых считается чексумма. Какой алгоритм подсчета чексуммы я пока не допер, но близок к этому. Думаю к новому году домучаю до конца и напишу свою реализацию, чтобы с мейкфайлов можно было нормально шить.
_________________ Отворот и приворот. Потомственный мастер. Выезд со своей отверткой.
По периферии - что-то вроде avr. местами понавороченнее. Блок GPIO например тут поболе режимов умеет. Скорость - до 35 мегагерц, рекламируют как 'mostly single cycle execution'. Ну и это CISC, код выходит местами более компактным, по сравнению с аврками. C stm8 сравнить не могу - не ковырял и пока st не разродиться нормальным компилятором (gcc || sdcc) не планирую. Радует что сотенку очень мелких 8ногих можно взять крайне дешево (то что надо для мелких решений). Жаль нету аналога vusb под них. С ним было бы совсем ку!
_________________ Отворот и приворот. Потомственный мастер. Выезд со своей отверткой.
цены не такие уж низкие - почти 1$ за самую мелочь, сопоставимо с Attiny13/Atmega48/STM8S103/STM32F100. Плюс на сайте декларируют Free shipping, а на странице заказа наворотили 38$ за доставку.
Да, там все уартом, даже если в самом мк уарта нет. Шиппинг у них фри, просто они накосячили когда на али заполняли. Надо написать им при заказе, исправят. Можно так же stcшки брать с siliconray.com - вкусное местечко, там даже Free gift'ы можно выбрать к заказам в зависимости от суммы заказа (блок питания там, мультиметр, смдшные резюки). Но шиппинг почтой там Flat Rate - 15$, т.е. выгодно брать, когда заказ около сотни в сумме.
_________________ Отворот и приворот. Потомственный мастер. Выезд со своей отверткой.
Necromant, внимательно слежу за твоей темой.. Поясни, как-же они по usart-у шьются, если у них сброс внутренний.. или как?
Просто. по сути мк отличает cold-reset при подаче питания от дерганья ноги ресета, и при нем очень малый промежуток времени ждет ключевого байта на RX. 0xf7 по которому выставляет частоту передатчика и гадит параметрами программе. Это как бы первая стадия. Вторая - после записи/чтения параметров он перенастраивает частоту уарта, иногда на большую. и получает прошивку, которую пишет. Я пока не до конца отреверсил протокол - много работы с диссертацией. Везде юзается even четность. Так прошиваются, насколько понял, даже самые мелкие мк где аппаратного уарта по даташитам и нет. Вот пример прошивки тестовых данный, которые я просниффил http://necromant.ath.cx/wp/2011/10/14/%d1%80%d0%b5%d0%b2%d0%b5%d1%80%d1%81%d0%b8%d0%bd%d0%b3-%d0%bf%d1%80%d0%be%d1%82%d0%be%d0%ba%d0%be%d0%bb%d0%b0-%d0%bf%d1%80%d0%be%d1%88%d0%b8%d0%b2%d0%ba%d0%b8-stc/?lang=ru
_________________ Отворот и приворот. Потомственный мастер. Выезд со своей отверткой.
В принципе весьма неплохие мелкосхемки… Можно бы и приграться, НО… В наших краях пока не наблюдается. «От100» на побаловаться никто возить не будет, тем более 1-2 штуки. В качестве ассемблера вполне подходит Атмеловский c51asm.exe - http://www.atmel.com/dyn/resources/prod ... in_1-2.zip с его возможностью назначать любой собственный SFR директивой SFR, ну и прочими приятностями относительно адресации данных, еепром, флеш и внешней памяти (подобно кейлу). SDCC конечно тоже весьма приятно, но пока я с этим не играюсь… Изучать протокол заливки в принципе без особой надобности – есть оболочка-утилита и для начала того вполне достаточно. Единственно – требуется страховаться по выводам программирования от случайных комбинаций , которые могут привести к запуску режима ввода программы, да и функции P4 на начальном этапе лучше не трогать (по аналогии с реаниматором AVR). Чего касательно купить – так цена должна быть в разумно-конкурентных пределах : AT89C2051 24PU – 10 гришек – девать некуда (AT89C4051 24PU ~15) AT89C52 24PI – 13 гришек- туда же 8-pin PICи – от 7 до16 гришек, то же и по AVR - в избытке 14-16-18 pin в пределах 25 гришек максимум Ну а о «больших» (40pin и более) разговор несколько другой, но… это уже для «суперконструкций» которые обычно копируют (обезьянничают) а не разрабатывают Там цены от 30 и до…300
Такс, у меня дошли руки, запилил прошивальщик этих мк под линукс, ибо виндовый это ужас летящий на крыльях ночи, как и укуренный неюзабельный Keil. Пришлось попотеть, чтобы разобрать протокол без документации. В общем, пока умеет: Детект типа мк и вывод справочной информации. Определять версию загрузчика. Определять (сравнительно точно) частоту мк На основе этого делать хэндшейк, переключение баудрейта и закачку бинарника. Примеры проектов с make & sdcc, вместе с обработанным скриптом keil2sdcc.pl заголовочником положил к себе на гитхаб https://github.com/nekromant/stc-makefile-example Сам прошивальщик: https://github.com/nekromant/stcdude Может кому и пригодится. Моя стцдудка тянет в зависимостях только lua. Подробный анонс у меня в бложике: http://ncrmnt.org/wp/2012/10/01/stcdude ... 1-is-here/
Проверено с STC10F04XE, STC12C5A32S2 и STC12C5A60S2 и кварцами 8 12 16 и 20. Мк одних с ними серий будут работать скорее всего без проблем, мк других серий с аппаратным уартом скорее всего тоже, но на них не сгенерил mcudb пока, как потребуется - пишите. Остальные - надо пробовать.
P.S. Их официальный магаз - siliconray.com, кратно 10шт. На таобао они в разы дешевле, где-то 1-2 юаня за самые навороченные, но оттуда заказывать гемор.
P.P.S. Да, у меня не быстро дошли руки их домучать
Попутно я еще сварганил на них пару проектов. По сравнению с AT89 (AT89SND1, например) они РЕАЛЬНО быстрые. Софтовая задержка на С которая на STC отрабатывает 1 секунду, на AT89 колупается около 30-40 при той же частоте. Периферии немного, железка тупая. В общем, для особенно мелких проектов, где не нужен USB - самое то.
_________________ Отворот и приворот. Потомственный мастер. Выезд со своей отверткой.
Заголовок сообщения: Re: Микроконтроллеры STC: первые впечатления.
Добавлено: Чт июл 06, 2017 09:51:21
Родился
Зарегистрирован: Сб май 20, 2017 17:43:02 Сообщений: 4
Рейтинг сообщения:0
Necromant, Приветствую!
Имеется STC12C5608AD(из сгоревшего блока - сама живая), стоит задача скопировать ее в новую такую же "болванку". Правильно ли я понимаю, что более менее единственным вариантом будет, написать "програмку" для нее, для вычитки память AP, через старт написанной программы для нее из IAP? Или есть еще варианты?
Чисто теоретически - верно.... Только вот... Как бы потом штатного бутлоадера не лишиться...
И самое главное - запишется ли область ISP из программатора? Помимо прочего для такого фокуса необходимо чтобы ОСНОВНАЯ программа вызвала переключение на перезагрузку из области ISP, что авторами прикладной прожки наверняка не предусматривалось.
Заголовок сообщения: Re: Микроконтроллеры STC: первые впечатления.
Добавлено: Чт июл 06, 2017 11:12:34
Родился
Зарегистрирован: Сб май 20, 2017 17:43:02 Сообщений: 4
Рейтинг сообщения:0
BOB51, тут да.. но поле для деятельности есть - как с "программой" так и "болванок" - пруд пруди. Так что не страшно. Просто пытаюсь понять, и собрать варианты, как это можно сделать.. пока в мозг засел такой вариант. Буду рад, если посоветуете, как еще можно
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения