Страница 1 из 5

А W801 все еще никак не запрограммировать, или уже есть что?

Добавлено: Чт окт 20, 2022 21:58:35
Eddy_Em
Еще год назад купил дешевую девборду на W801, но в то время вообще не было средств программировать под них: ни скомпилять, ни прошить.
Сейчас решил погуглить: вообще нуль.

Ну неужто до сих пор под эти МК никто ничего не пишет? Они хоть и совершенно безмозглые в плане периферии, зато вполне мощные. И типа wifi с bluetooth есть. Вот только где SDK? Где документация вменяемая? Где софт для прошивки? А хрен чего - нет вообще ничего, даже документация на китайском…
// ясен пень, подразумевается софт под Linux, мне эта ваша [censored] мастдаина, даже если мне 100тыр в месяц будут доплачивать за пользование этой дрянью, не нужна! Таким анальным сексом я готов заниматься не меньше, чем за пару миллионов рублей в месяц.

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Чт окт 20, 2022 22:58:39
Игорь_396
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4307515#p4307515"]Еще год назад купил дешевую девборду на W801, но в то время вообще не было средств программировать под них: ни скомпилять, ни прошить.
Сейчас решил погуглить: вообще нуль.

Ну неужто до сих пор под эти МК никто ничего не пишет? Они хоть и совершенно безмозглые в плане периферии, зато вполне мощные. И типа wifi с bluetooth есть. Вот только где SDK? Где документация вменяемая? Где софт для прошивки? А хрен чего - нет вообще ничего, даже документация на китайском…[/uquote]
Не подойдет?

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Чт окт 20, 2022 23:07:54
Eddy_Em
Игорь_396, спасибо, посмотрю.
Но на первый взгляд исключительно негативные впечатления. Похоже, это УГ - примерно как ESP32 — параша, не имеющая SDK в исходниках и которую baremetal невозможно программировать!

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Пт окт 21, 2022 01:16:21
SIM31
https://mysku.club/blog/aliexpress/91119.html
Плюсы:
1) Дешево.
2) Доступно.
3) Хорошая организация демонстрационных примеров.
4) Можно плату сделать «Ардуино-совместимой» ( github.com/nulllaborg/nulllab_w80x_arduino )
5) SDK под Линукс ( github.com/droppingy/W801_SDK-linux )
6) Запуск LuatOS на чипе: we.easyelectronics.ru/part/luatos-i-opyty-nad-w806.html

Минусы:
1) Нет нормальной документации на английском/русском.
2) Нет нормальной отладки. ( Есть проект github.com/henrycoding/cklink-lite )
3) Основное сообщество и разработчики — жители Китая.
4) Нет стабильного, поддерживаемого разработчиками единого SDK.
5) Не слишком эффективная архитектура ( при равной производительности чипы F417/F427 работают на 160-180 МГц, а W801 — 240 МГц)

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Пт окт 21, 2022 09:46:01
Eddy_Em
5) SDK под Линукс ( github.com/droppingy/W801_SDK-linux )
Жесть-то какая! Абдуриноподобное дерьмище.
В общем, как я и понял, baremetal для этого УГ не существует скорей всего. Ну, нехай и дальше валяется у меня в дальнем ящике рядом с ch552 и, уж не помню чем, на базе 8051…

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Ср дек 14, 2022 22:30:15
maxlab
Вот тут чувак бодается с ними в реал-тайм почти https://www.youtube.com/@nvv1305
Я его просил кино запилить как он это делает. https://www.youtube.com/watch?v=uMJ7SQkhtYc&t=106s

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Ср дек 14, 2022 23:19:54
Eddy_Em
maxlab, судя по тому, что это чудо делает, оно вообще в линуксе разбирается, как я - в балете!

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Чт дек 15, 2022 12:24:32
maxlab
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=4336812#p4336812"]maxlab, судя по тому, что это чудо делает, оно вообще в линуксе разбирается, как я - в балете![/uquote]
Это не важно! Важен результат. С линухом потом разберется...
Там, кстати, ссылка проскакивала как vscode настроить чтобы с 801 работать

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Чт дек 15, 2022 13:37:10
Eddy_Em
А текст есть? Я не собираюсь смотреть тупые видосики в попытке три строки текста выудить.

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Чт дек 15, 2022 18:25:49
tonyk
Eddy_Em писал(а):Вот только где SDK? Где документация вменяемая? Где софт для прошивки? А хрен чего - нет вообще ничего, даже документация на китайском…
Тебе это странно? Сам производитель не хочет платить деньги за фундаментальные для жизни своего МК вещи, а ты удивляешься, почему никто не делает это бесплатно? :)))) Ах да, философия анального огорода, продвигаемая Eddy_Em, не допускает работать за деньги для создания востребованного продукта.
Я тоже смотрел в сторону W80x, но или производитель сильно торопиться с выпуском на рынок этих МК, поэтому доки и SDK ещё не готовы, или эти W8xx являют собой чей-то неудачный интеллектуальный пук, который скоро развеется, и от него не останется ничего.

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Пт дек 16, 2022 13:02:14
maxlab
"HLK-W801 project template for vscode (with eide plug-in)"
https://github.com/github0null/w801_vsc_eide_template
https://github.com/topics/hlk-w80x

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Пт дек 16, 2022 13:13:15
musor
выне знакти толлк в извращениях!!! нак задумано !!!

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Вс янв 29, 2023 21:24:17
maxlab
Можно программировать и прошивать в Arduino IDE 2.0.3
В отладку тоже можно... но я пока не знаю как. Его родной программер/дебуггер стоит охулиард рублей. Не мой вариант.
Копаю в сторону JTAG, но не известно пока поддерживает ли этот камень такой способ.

ЗЫ. В китайском даташите есть упоминание JTAG. Это видно по цоколевке камня и навевает осторожный оптимизм :)

В преференсах установи ссылку на плату https://cdn.jsdelivr.net/gh/Hi-LinkDuin ... index.json
На плате удали резистор R7. Он идет на ногу 4 (RTS) преобразователя CH330
Создай скетч и запиши туда тест. Если все правильно, получишь бегущие огни из 3х светодиодов
Спойлер

Код: Выделить всё

static void GPIO_Init(void);
void setup() {
    HAL_Init();
    GPIO_Init();
}

static volatile uint8_t key_flag = 0;

void loop() {
   // put your main code here, to run repeatedly:
    HAL_Delay(500);
    key_flag++;
    
    if (key_flag % 3 == 0)
    {
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, (GPIO_PinState)0);
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_25, (GPIO_PinState)1);
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_26, (GPIO_PinState)1);
    }
    else if (key_flag % 3 == 1)
    {
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, (GPIO_PinState)1);
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_25, (GPIO_PinState)0);
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_26, (GPIO_PinState)1);
    }
    else
    {
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, (GPIO_PinState)1);
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_25, (GPIO_PinState)1);
        HAL_GPIO_WritePin(GPIOB, GPIO_PIN_26, (GPIO_PinState)0);
    }
}

static void GPIO_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStruct = {0};

    __HAL_RCC_GPIO_CLK_ENABLE();

    GPIO_InitStruct.Pin = GPIO_PIN_5 | GPIO_PIN_25 | GPIO_PIN_26;
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
    HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5 | GPIO_PIN_25 | GPIO_PIN_26, GPIO_PIN_SET);


    HAL_NVIC_SetPriority(GPIOB_IRQn, 0);
    HAL_NVIC_EnableIRQ(GPIOB_IRQn);
}
Скетч в стиле Arduino
Спойлер

Код: Выделить всё

// GPIO Test W801
// Лапы поддерживают режимы: {INPUT, INPUT_PULLUP, INPUT_PULLDOWN, OUTPUT, OUTPUT_OD}

void setup() {

  pinMode(PB5, OUTPUT);
  pinMode(PB25, OUTPUT);
  pinMode(PB26, OUTPUT);
  pinMode(PB18, OUTPUT);
  pinMode(PB17, OUTPUT);
  pinMode(PB16, OUTPUT);
  pinMode(PB11, OUTPUT);
}

static volatile uint8_t key_flag = 0;

void loop() {

  delay(100);
  key_flag++;

  if (key_flag % 3 == 0) {
    digitalWrite(PB5, LOW);
    digitalWrite(PB25, HIGH);
    digitalWrite(PB26, HIGH);
    digitalWrite(PB18, LOW);
    digitalWrite(PB17, HIGH);
    digitalWrite(PB16, HIGH);
    digitalWrite(PB11, LOW);
  } else if (key_flag % 3 == 1) {
    digitalWrite(PB5, HIGH);
    digitalWrite(PB25, LOW);
    digitalWrite(PB26, HIGH);
    digitalWrite(PB18, HIGH);
    digitalWrite(PB17, LOW);
    digitalWrite(PB16, HIGH);
    digitalWrite(PB11, HIGH);
  } else {
    digitalWrite(PB5, HIGH);
    digitalWrite(PB25, HIGH);
    digitalWrite(PB26, LOW);
    digitalWrite(PB18, HIGH);
    digitalWrite(PB17, HIGH);
    digitalWrite(PB16, LOW);
    digitalWrite(PB11, HIGH);
  }
}

На данный момент заявлена поддержка GPIO,ADC,PWM
Все остальное через HAL

Осталось разобраться как в PlatformIO это делать

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Вт янв 31, 2023 14:29:02
maxlab
Для любителей хардкора
Среда разработки под виндовоз. Ссылка будет жива неделю-две.
https://cloud.mail.ru/public/D7Be/aG96BRcwZ
Кто может, перезалейте в сундук кота. Я не умею :)
чтобы начать ковыряться по взрослому еще необходимы SDK. Они в публичном доступе есть
wm-806-sdk это для начала
wm-801-sdk это с поддеркой wifi,bt, ip-stack etc
Для дебаженья можно из оригинальной голубой таблетки собрать девайс по мотивам https://github.com/henrycoding/cklink-lite Походу он и в SWD и в JTAG умеет
Более подробней здесь https://hackaday.io/page/12671-how-to-d ... -w801-mcus
Супер полезный ресурс https://www.cnblogs.com/milton/p/15621540.html С автопереводом на английский/русский можно разобраться о чем там речь
Я сегодня постараюсь собрать отладчик и попробовать на демо примере эту ундервафлю :)

upd1: Работает отладка!
Изображение

upd2:bluepill не обязятельно с оригинальным STM32F103. Я залил прошивку для программатора/отладчика на неизвестный китайский клон с 256к флеши на борту. Работает!

upd3:C инструментами программиста закончили. Все работает стабильно. Кому интересно, если будут непонятки... пишите. И мое наблюдение... в bluepill должен стоять или оригинальный CBT6 или клон с памятью 128к и больше.
Обязательно в среду разработки нужно подсунуть в алгоритмы прошивок/отладок файл W806_Flash_Tool.elf

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Ср фев 01, 2023 22:41:45
maxlab
Сегодня вычитал на форуме CSDN что серия чипов W80x подвержена электромагнитным помехам. Т.е. их можно юзать в IoT на не критичных участках автоматизации. Или предпринимать меры по экранировке и делать всякие ухищрения с вотчдогом.

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Чт фев 02, 2023 14:07:51
maxlab
Появилась новая версия CDK IDE. Работает шустро, не глючит.
Качать отсюда https://cloud.mail.ru/public/Woqv/3wWCD7N3v
Ссылка будет работать 2 недели.
Эта версия с самодельным CKLink-Lite не работает. Во всяком случае у меня не получилось.
Загружать прошивку и отлаживать с оригинальным дебаггером, либо компилируйте в iHex и отдельной тулзой заливаете. В дистрибутиве она имеется и она англоязычная. На Али есть CKLink-Lite но не понятно кто производитель девайса и оригинальный ли он.

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Вс фев 05, 2023 14:11:07
maxlab
Привет!
Олдскульная отладка без всяких IDE работает через консольный GDB. Есть поле для творчества :)
А именно - в новой версии CDK сделать подмену отладочных модулей на старые,
которые поддерживают самопальный CKLink-Lite
Изображение

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Пн фев 06, 2023 20:45:19
maxlab
Шалость удалась...
Достаточно подменить T-HeadDebuggerServer на старую версию и новый CDK пыхтит не возмущаясь :)
Изображение

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Вт фев 07, 2023 14:51:48
nictrace
я работаю с ней на убунту.
вот статейка со ссылкой на переделанный SDK 1.10

https://we.easyelectronics.ru/part/w801 ... a.html#cut

Re: А W801 все еще никак не запрограммировать, или уже есть

Добавлено: Вт фев 07, 2023 17:52:28
maxlab
О... Привет nictrace! Не пропадай плз. Есть вопросы, уже голову сломал :)