Interesante ideje se nekada kriju iza naizgled običnih pojava. Tako se i za Winner Micro W801-C400 32 bitni SOC može reći da je to W806-200 na steroidima. IEEE802.1 1 b/g/n WiFi uz podršku za WMM/WMM-PS/WPA/WPA2/WPS. BT/BL.E4.2 i integrisana antena na ploči. TEE security engine i SASC/TIPC, DSP i pokretni zarez, enkripcija, firmware signature, security debug/upgrade, idealan za IoT: pametne kuće, pametne igračke, industrijsku kontrolu i nadzor u medicinskoj opremi. Uz to ugrađeno 2MB Flash i 288 KB RAM, do 64MB eksternog PSRAM-a. 6 integrisanih UART kanala, 4 16 bitnih DAC (do 1KHz sampling rate). SPI, SDIO, PWM, 7816 interfejsi, I2C, DuplexI2S i GPIO kontroler sa do 44 GPIO tačaka, LCD kontroler 4×32, kontroler do 15 Touch senzora. Pa moduli za hardversku enkripciju: RC4256, AES128, DES/3DES, SHA1/MD5, CRC32, 2048 RSA, generator slučajnih brojeva. Manje od od 10uA u Standby režimu.
I sve ovo i još gomila dodatnog, ali zaista nema smisla više nabrajati za ni 100 dinara za SoC, a do 300 sa razvojnom pločicom. Uz besplatan IDE i to vrlo moćan i sasvim korektno napisan SDK sa dovoljno primera. Uz, neverovatno, ali istinito čak i podršku u GNU C-u. Pogledati zvanično GNU C uputstvo poglavlje 3.19.10, validna arhitektura -march=ck801 za one koji bi da budu beskrajno kreativni u iznalaženju puteva.
U čemu je onda „kvaka“ ovog, naizgled savršenog rešenja. Jer da je nema, preplavio bi tržište brzinom svojih 240MHz u koracima od 32 bita, po ceni koja je neprimetna, sa sve dostavom i troškovima poštarine.
Winner Micro W80x (800, 801 i 806) problemi i polurešenja
Problemi su zajednički za sve tri platforme, mada mi radimo sa onom najjačom i najkompletnijom W801-C400.
Prvi problem je literatura na kineskom jeziku. Na sreću, danas svaki browser ima Translate plug-in koji može da prevodi u realnom vremenu. Na sajtovima koji su na kineskom je zaista korišćen razumljiv stil pisanja koji automatskim prevodiocima ne zadaje muke. Dakle, problem rešava moderna tehnologija. Sem jednog – svi dokumenti u pdf-u su isto samo na kineskom, a za to nemamo online prevodilac. Trebaće malo više pažnje i truda da se raščivija šta je šta za W801 ili W806. Mada moramo priznati da je kod uvek pisan na engleskom. Beskrajno dobro i vredno mesto na netu je: https://www.cnblogs.com/milton/p/15621540.html
Drugi problem je što razvojna pločica HLK-W801-KIT-V1.1 ne radi. Odnosno radi, ali…Iz zvaničnog besplatnog i vrlo moćnog Eclips-olikog C-SKY IDE-a to je moguće uraditi samo uz zvaničan CK-Link Lite debugger koji košta jednostavno previše. Dobro, malo surfovanja i naćićete da sasvim dobro posao odrađuje i BluePill sa svoim M3 STM32F103, naćićete i hex i shvatiti da nova verzija C-SKY-a ne podržava BluePill. Problem je u inicijalnom naponskom stanju USB porta. Može se rešiti, ali morate da čupate kabl iz USB porta pred flash. Ne baš elegantno rešenje. Problem je u implementaciji CH340N, koji po pravilu mora imati bar 10nF na V3, a postavljen je 0,1nF.
Pogledajte sliku ispod i obratite pažnju na donji desni ugao. Piše PB24. To je mala greška u printu, treba da piše PB4.
Treća zanimljivost je postojanje jednog programčića pod imenom Upgrade_Tools_V1.4.10.zip.
Upgrade tools služi za flešovanje .bin fajlova na W80X. Radi uvek, ako imate .bin svog programa i povežete pločicu preko USB-a. Potražite, ne uputstvo koje dugme treba stisnuti, jer je program na kineskom, već kako postaviti toolchain na vašem računaru da bi dobili .bin. Uputstvo koje ide preko MSYS2 je korektno. (https://github.com/IOsetting/wm-sdk-w806)
Ono što smo mi želeli da pokažemo je da je W80X, moguće programirati i u Aurduino IDE. Jeste moguće, ali… Možda bi se ova recenzija mogla nazvati i „jeste, ali…“.
W80X_duino
Postoji sajt posvećen programiranju W80X arhitekture u Arduino IDE. (https://github.com/nulllaborg/nulllab_w80x_arduino). Uputstvo je korektno uz dve napomene:
- Obavezno koristite Arduino IDE u verziji 1.x, nikako u verziji 2.x. Mi smo radili u Arduino IDE 1.8.19 app verziji koju smo preuzeli sa Microsoft APP stora.
- U Files/Preferences/Additional Board Manager URL postavite https://cdn.jsdelivr.net/gh/Hi-LinkDuino/w80x_arduino/package_w80x_index.json, a ne proxy link koji je tu dat.
I sada dolazi najzanimljiviji deo. Probajte da flešujete W801 i pokušaće da sinhronizuje COM port, sačekaće, zamoliće za ručni reset. Pritisnite dugme, reset će se desiti, ali upisa neće biti. I jedino što ćete pročitati je da je vreme isteklo.
USB port iz nekog razloga nije odradio svoj deo i upisa programa nije bilo. Zanimljivo, ako koristite Winner Micro Upgrade Tools, upisa će biti. Ne ulazeći u razloge što iz nekih programa može, a iz nekih ne može da se flešuje pločica imamo rešenje. Potrebno je zameniti C8. Umesto 0,1uF, treba staviti 4,7uF.
Ovaj zdepasti braon kondenzator je od 4,7uF koga smo stavili umesto originalnog od 0,1uF. U nekim uputstvima stoji da je potrebno zameniti C11, a ne C8. C11 je isto kondenzator veličine 0,1uF koji se nalaz između RESET i GND. Moguće je da i to rešenje radi, ali mi to ne možemo potvrditi.
Da vidimo šta smo dobili promenom C8. Povezivanje na COM5, čekamo na sinhronizaciju.
Traži da pritisnemo RESET dugme, sinhronizacija uspeva iz prve. mac, Start download, 0 do 100%, još jedan RESET.
I diode svetle.
Zaključak
Winner Micro se trudi i u poslednjih par meseci koliko je pločica kod nas, vidimo da sa svoje strane ulažu velike napore da otvore dokumentaciju i primere ka svetu. Sve je više engleske literature. Tu je i novi C-Sky CDK IDE. Potencijal ove serije je veliki, mora preživeti ove početne probleme i nadamo se da ćemo dobiti još jednu dobru platformu bar onoliko dobru koliko su to Espressif ESP32 modeli.
Pitanje koje se pred nas postavlja je da li vredi ulagati vreme i trud. To sada niko ne može znati. Ako baš ne želite da budete mainstream, a ESP32 S3 serija vam nije dovoljno privlačna svojom problematičnošću, možda je ovo prava platforma za vas: moćna, ekonomična i sa svim opcijama budućnosti pred sobom koje možete da zamislite.