Skip to content

board707/w80x_arduino

Repository files navigation

w80x_duino

Arduino package for WinnerMicro boards, based on XT-E804 MCU.

This is a port of the WinnerMicro W806 SDK to the Arduino world. It uses T-HEAD C-SKY Tools V3.10.29 Minilibc abiv2 toolchain (GCC v6.3.0)

Boards

Package development - what works and what not

The ticked options have been implemented and tested, the unticked ones are under development, and more developers are expected to maintain together

  • Arduino IDE package tools for Windows and Linux
  • GPIO
  • HardwareSerial class
  • ADC
  • PWM
  • HardwareTimer lib
  • I2C - HardwareI2c, SoftwareI2c
  • SPI
  • EEPROM library
  • Stream, Print and String classes
  • I2S interface (see libraries/I2S/examples/Wav_SD_Player example)
  • SDIO -> SPI interface
  • DMA

To detailed development info see the CHANGES.txt file.

Library Compatibility List

The libraries listed below tested to be used with w80x controllers:

  • AdafruitGFX and its companion libraries
  • SD.h and other related libraries - SdFat.h, SdFile.h etc
  • LiquidCrytal screen library
  • Basic support of LVGL library using ILI9341_Fast_SPI driver (see #27)

Ported Libraries

Below are links to w80x-ported versions of some arduino libraries:

  • FastLED - the library for controlling an addressable LEDs
  • MCUFRIEND_kbv - the library for 8bits parallel TFT displays

Installation in Arduino IDE

  1. File -> Preferences

  2. Enter the following URL in the additional development board manager URL:

https://raw.githubusercontent.com/board707/w80x_arduino/hal-v0.6.0/package_w80x_index.json

In case of Error: 13 INTERNAL: can not install w80x_duino:csky@2021.04.23 tool use an alternative:

https://raw.githubusercontent.com/board707/w80x_arduino/hal-v0.6.0/package_w80x_test_index.json

If this doesn't work, try any of these link addresses:

http://dl.isme.fun/w80x_arduino/package_w80x_index.json

https://raw.githubusercontent.com/board707/w80x_arduino/hal-v0.6.0/package_w80x_isme_proxy_index.json

  1. Tools -> Boards -> Boards Manager... Search for w80x_duino, select the latest version to install

board_manager

  1. Tools -> Boards

Notes to Linux users

If you experienced the error at the first build under linux:

/w80x_duino/tools/w80x_tool/v1.0/lin/wm_tool: /lib64/libc.so.6: version GLIBC_2.34 not found

or something like it, just go to your w80x_duino/tools/w80x_tool/v1.0/lin/ folder and remove the wm_tool and wm_toold files. After that start building again and now the error should gone.

Support

If you have any problems using the package, please submit an issue directly. Developers are welcome to collaborate and develop and submit commits. This project will continue to be updated.

W806 MCU Info

  • QFN56 package, 6mm x 6mm, pitch 0.35mm

Main Features

  • Integrated 32-bit XT804 processor, operating frequency 240MHz, built-in DSP, floating point unit and security engine
  • Builtin 1MB Flash(2MB for W801),288KB RAM
  • Integrated PSRAM interface, supports up to 64MB external PSRAM memory
  • 6x high-speed UARTs
  • 4-port 16-bit ADC,max sample rate 1KHz
  • 1 high-speed SPI(slave mode),up to 50MHz
  • 1 SPI (master - slave mode)
  • 1 SDIO_HOST,supports SDIO2.0、SDHC、MMC4.2
  • 1 SDIO_DEVICE,supports SDIO2.0,up to 200Mbps
  • 1 Hardware I2C
  • up to 44 GPIOs
  • 5-channels PWM
  • 1 Duplex I2S interface
  • LCD interface,supports 4x32 device
  • 1 7816 interface
  • 15 Touch Sensor

Power options

  • 3.3V single supply
  • Sleep, standy and shutdown power modes
  • Standby power consumption is less than 10uA

Credits

  • Hi-Link developed and produced this development board
  • This open source project is maintained on base of the nulllab team project nulllab team

Original README (chinesse)