diff --git a/docs/assets/img/product_pics/unit/dds/dds_01.webp b/docs/assets/img/product_pics/unit/dds/dds_01.webp new file mode 100644 index 00000000..f641afd8 Binary files /dev/null and b/docs/assets/img/product_pics/unit/dds/dds_01.webp differ diff --git a/docs/assets/img/product_pics/unit/dds/dds_02.webp b/docs/assets/img/product_pics/unit/dds/dds_02.webp new file mode 100644 index 00000000..e4807216 Binary files /dev/null and b/docs/assets/img/product_pics/unit/dds/dds_02.webp differ diff --git a/docs/assets/img/product_pics/unit/dds/dds_sch.webp b/docs/assets/img/product_pics/unit/dds/dds_sch.webp new file mode 100644 index 00000000..f9d8dab3 Binary files /dev/null and b/docs/assets/img/product_pics/unit/dds/dds_sch.webp differ diff --git a/docs/en/api/tough/touch.md b/docs/en/api/tough/touch.md new file mode 100644 index 00000000..1b2ec45b --- /dev/null +++ b/docs/en/api/tough/touch.md @@ -0,0 +1,156 @@ +# TOUCH + +> TOUGH integrates a 2-inch resistive touch screen on the front side of the product with an internal NS2009 driver chip. In the M5Tough library, we provide a series of APIs that can be used for touch interaction detection. + +## Touch Class + +>In the initialization of `M5.begin()`, an instance of `touch` has been created and initialized. You can use the API in this instance to obtain touch interaction information. + + +- **Function: Initialize the touch screen, this function will be called by default in M5.begin to initialize the touch screen** + +- `void begin(bool EEPROMEnabled = true);` + +- **Function: Perform screen touch calibration (calibration data will be saved to EEPROM), return to True if it has been calibrated, otherwise enter the calibration page, the user needs to touch the specified location according to the screen prompts** + +- `bool calibrationTouch(TFT_eSPI *fb);` + +**Routine:** + +``` +#include + +void setup() +{ + M5.begin(true, true, true, true); + while (!M5.touch.calibrationTouch(&M5.Lcd)); + M5.Lcd.fillScreen(TFT_BLACK); + M5.Lcd.print("Calibration Successfully"); +} + +void loop() +{ + +} + +``` + +- **Function: Read touch data** +- `void read();` + +- **Function: Read the X coordinate of the touch finger** +- `int GetTouchX();` + +- **Function: Read Y coordinate of touch finger** +- `int GetTouchY();` + +- **Function: Detect touch finger pressing** +- `bool isPressed();` + +- **Function: Detection of touch finger release** +- `bool isRelease();` + +- **Function: Detect the movement of the touch finger** +- `bool isMoving();` + +- **Function: Wait for the touch finger to release** +- `bool WaitRelease();` + +- **Function: Wait for the touch finger to be released and set the timeout period** +- `bool WaitRelease(uint64_t AutoReleseTime);` + +- **Function: Read the touch point information, return a TouchPoint structure, which contains X, Y coordinate information, and implement operator overloading internally, support direct assignment and comparison of TouchPoint type structures** +- `TouchPoint getPoint();` + +## TouchPoint + +>By calling the getPoint method, a TouchPoint structure type data can be obtained. Its internal members and methods are as follows. + +``` +class TouchPoint +{ +public: + TouchPoint(int16_t x_ = -1, int16_t y_ = -1); + bool operator==(const TouchPoint &p); + bool operator!=(const TouchPoint &p); + bool operator=(const TouchPoint &p); + + bool Equals(const TouchPoint &p); + + void set(int16_t x_ = -1, int16_t y_ = -1); + bool vaild(); + + int16_t x, y; +}; + +``` + +>Users can create a screen area by creating an instance of the TouchZone structure, using the built-in `contains` method to determine whether TouchPoint is contained in the area. + +## TouchZone + +``` +typedef struct TouchZone +{ + uint16_t x; + uint16_t y; + uint16_t w; + uint16_t h; + TouchZone(): x(-1), y(-1), w(0), h(0) {} + TouchZone(uint16_t _x, uint16_t _y, uint16_t _w, uint16_t _h): x(_x), y(_y), w(_w), h(_h)(); + bool contains(const TouchPoint &p) + { + if ((this->x == -1) || (this->y == -1) || (this->w == 0) || (this->h == 0)) + return false; + if ((p.x ​​>= this->x) && (p.x <= (this->x + this->w)) && + (p.y >= this->y) && (p.y <= (this->y + this->h))) + { + return true; + } + return false; + } +} TouchZone_t; + +``` + + +> When dynamically reading touch data, you need to add `void update();` to the loop to refresh the touch data. + + +**Routine:** + +```arduino +#include + +TouchZone clearBtn(0,0,50,50); + +void setup() +{ + M5.begin(true, true, true, true); + while (!M5.touch.calibrationTouch(&M5.Lcd)); + M5.lcd.drawString("CLEAR",5,5,3); +} + +void loop() +{ + M5.update(); + if(M5.touch.isPressed()){ + TouchPoint Point = M5.touch.getPoint(); + if(M5.touch.isMoving()){ + char buffer[24]; + sprintf(buffer, "X: %3d, Y: %3d", Point.x, Point.y); + M5.Lcd.drawPixel(Point.x, Point.y ,TFT_GREEN); + Serial.println(buffer); + } + if(clearBtn.contains(Point)){ + M5.lcd.fillScreen(TFT_BLACK); + M5.lcd.drawString("CLEAR",5,5,3); + } + } +} + + + +``` + +- For more information about Touch API, please refer to [M5Tough-Github source code](https://github.com/m5stack/M5Tough/tree/master/src) diff --git a/docs/en/app/balac.md b/docs/en/app/balac.md index f0ff81f3..826fb4b5 100644 --- a/docs/en/app/balac.md +++ b/docs/en/app/balac.md @@ -64,7 +64,7 @@ Communication protocol - IIC: 0x38 + I2C: 0x38 Battery diff --git a/docs/en/arduino/arduino_home_page.md b/docs/en/arduino/arduino_home_page.md index 247d3757..d0bd41d4 100644 --- a/docs/en/arduino/arduino_home_page.md +++ b/docs/en/arduino/arduino_home_page.md @@ -103,6 +103,14 @@ const m5paper_api = { "id":"m5paper_api" }; +const tough_api = { + 'title':"M5Tough API", + 'item':{ + 'TOUCH':'#/en/api/tough/touch' + }, + "id":"tough_api" +}; + var arduino_home_page = new Vue({ el:'#arduino_home_page', data() { @@ -113,7 +121,8 @@ var arduino_home_page = new Vue({ m5stickc_api: m5stickc_api, m5core2_api: m5core2_api, coreink_api: coreink_api, - m5paper_api: m5paper_api + m5paper_api: m5paper_api, + tough_api: tough_api } }; } diff --git a/docs/en/atom/atomicgps.md b/docs/en/atom/atomicgps.md index dd1f5c68..207f3935 100644 --- a/docs/en/atom/atomicgps.md +++ b/docs/en/atom/atomicgps.md @@ -82,7 +82,7 @@ UART Parameter setting: Baud rate - 4800bps-921600bps + default: 9600bps Output protocol diff --git a/docs/en/core/tough.md b/docs/en/core/tough.md new file mode 100644 index 00000000..c69337a7 --- /dev/null +++ b/docs/en/core/tough.md @@ -0,0 +1,245 @@ +# TOUGH + + + + + +## Description + +**TOUGH** is the embedded master control for industrial scenarios in the M5Stack development kit series. The main control ESP32 model is D0WDQ6-V3, with two Xtensa® 32-bit LX6 processors that can be controlled separately, the main frequency is up to 240Mhz, supports WiFi and Bluetooth functions, onboard 16MB Flash and 8MB PSRAM, and can be through TYPE-C interface Download programs and powerful configuration to meet the resource overhead of complex applications. The front is equipped with a 2.0-inch resistive touch screen. The built-in RTC module can provide accurate timing function. The power supply part is equipped with AXP192 power management chip. At the same time, the fuselage is equipped with a TF-card (microSD) card slot and speakers, and a power amplifier chip with I2S digital audio interface can effectively prevent audio signal distortion. + +## Product Features + +- Based on ESP32 development board, support WiFi, Bluetooth +- 16M Flash, 8M PSRAM +- Built-in speaker, power indicator, RTC, I2S power amplifier, resistive touch screen, power button, reset button +- TF card slot (support up to 16GB) +- Development platform [UIFlow](http://flow.m5stack.com), [MicroPython](http://micropython.org/), [Arduino](http://www.arduino.cc) + +## contains + +- 1x M5Stack TOUGH +- 1x Type-C USB(20cm) + +## Application + +- Industrial Controller + +## Specifications + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Master control resourcesParameters
ESP32-D0WDQ6-V3240MHz dual core, 600 DMIPS, 520KB SRAM, Wi-Fi, dual mode Bluetooth
Flash16MB
PSRAM8MB
Input voltage5V @ 500mA
Host interfaceTypeC x 1, GROVE(I2C+I/0+UART) x 1
IPS LCD screen2.0"@320*240 ILI9342C
Resistive touch screen driver ICNS2009
Speaker1W-0928
I2S power amplifierNS4168
RTCBM8563
PMUAXP192
USB chipCP2104
DC-DC boostSY7088
TF card slotSupport up to 16G
Lithium battery interfaceMX1.25mm in-line 2P
Antenna2.4G 3D antenna
+ + +## EasyLoader + +>EasyLoader is a concise and fast program writer, which has a built-in case program related to the product. It can be burned to the main control by simple steps to perform a series of function verification. Please install the corresponding driver according to the device type. M5Core host [Please click here to view the CP210X driver installation tutorial](en/arduino/arduino_development) + +- **Windows** + - [FactoryTest](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Windows/CORE/EasyLoader_M5Tough_FactoryTest.exe) + +## Pin mapping + +**LCD screen & TF Card** + +LCD pixels: 320x240 +TF card supports up to 16GB + + + + + +
ESP32 ChipGPIO38GPIO23GPIO18GPIO5GPIO15
AXP192 Chip AXP_IO4AXP_LD03AXP_LDO2
ILI9342CMISOMOSISCKCSDCRSTBLPWR
+ + + + +
ESP32 ChipGPIO38GPIO23GPIO18GPIO4
TF CardMISOMOSISCKCS
+ +**Resistive touch screen** + + + + +
ESP32 chipGPIO21GPIO22GPIO39
Res.TOUCH/NS2009SDASCLPENIRQ
+ +**NS4168 power amplifier** + + + + +
ESP32 ChipGPIO12GPIO0GPIO2AXP_IO2
NS4168BCLKLRCKDATASPK_EN
+ +**RTC** + + + + + +
ESP32 ChipGPIO21GPIO22
AXP192AXP_PWRAXP_LDO1
BM8563SDASCLINTPWR
+ +**USB to serial download** + + + + +
ESP32 ChipGPIO1GPIO3
CP2104RXDTXD
+ +**Internal I2C connection** + + + + + + +
ESP32 ChipGPIO21GPIO22
AXP192SDASCL
BM8563SDASCL
NS2009SDASCL
+ +## TOUGH M-BUS schematic + + + +## M5Core2 port description + + + + + + + + + + + + + + +
PORTPINRemarks:
PORT-A (red)G32/33I2C
+ +## ESP32 ADC/DAC can map pin + + + + + + + + + + + + + + + + + + + + + + +
ADC1ADC2DAC1DAC2
8 channels10 channels2 channels2 channels
G32-39G0/2/4/12-15/25-27G25G26
+ + +For more information about pin assignments and pin remapping, please refer to [ESP32 datasheet](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/esp32_datasheet_en.pdf) + + +## Related Links + +- **Datasheet** + - [ESP32](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/esp32_datasheet_cn.pdf) + - [NS4168](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/NS4168_CN_datasheet.pdf) + - [ILI9342C](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/ILI9342C-ILITEK.pdf) + - [BM8563](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/BM8563_V1.1_cn.pdf) + - [SY7088](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/SY7088-Silergy.pdf) + - [AXP192](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/AXP192_datasheet_en.pdf) + - [NS2009](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/core/tough/NS2009_C219024.pdf) + +- **API** + + - [Arduino API](zh_CN/arduino/arduino_home_page?id=tough_api) + + +## Schematic + + + +## Example + +### Arduino IDE + +- [FactoryTest](https://github.com/m5stack/M5Tough/tree/master/examples/Basics/FactoryTest) +- [M5Tough-Lib](https://github.com/m5stack/M5Tough) + + \ No newline at end of file diff --git a/docs/en/hat/hat-cardkb.md b/docs/en/hat/hat-cardkb.md index 25914f86..0623881d 100644 --- a/docs/en/hat/hat-cardkb.md +++ b/docs/en/hat/hat-cardkb.md @@ -8,7 +8,7 @@ **CardKB HAT** is an implementation of a full-featured QWERTY keyboard tailored as a HAT for the M5StickC. Consider that you want to make some cool stuff that require interaction through typing on a keyboard. But M5StickC itself just has 2 buttons. So, here comes the flexible and yet powerful “CardKB HAT” to solve the issue. -The CardKB HAT also offers support for several button combinations (Shift+Key, Fn+Key) adding virtually many different keys. This comes with an RGB LED to indicate the keyboard state. IIC address is 0x5F. +The CardKB HAT also offers support for several button combinations (Shift+Key, Fn+Key) adding virtually many different keys. This comes with an RGB LED to indicate the keyboard state. I2C address is 0x5F. **Button combination description:** @@ -26,7 +26,7 @@ The CardKB HAT also offers support for several button combinations (Shift+Key, F ## Product Features - Full-function keyboard with multi-key combination support -- IIC Address : 0X5F(I2C) +- I2C Address : 0X5F(I2C) ## Include diff --git a/docs/en/hat/hat-env.md b/docs/en/hat/hat-env.md index 98c4c66b..b03ddefa 100644 --- a/docs/en/hat/hat-env.md +++ b/docs/en/hat/hat-env.md @@ -6,7 +6,7 @@ ## Description -**Hat ENV** It is able to detect the temperature, humidity, air pressure and magnetic field. This product relates via I2C protocol which allows you to obtain 4 types of environment data thru just 2pins, together with the tiny body, makes it a powerful application for envitonment data collecting. +**ENV HAT** It is able to detect the temperature, humidity, air pressure and magnetic field. This product relates via I2C protocol which allows you to obtain 4 types of environment data thru just 2pins, together with the tiny body, makes it a powerful application for envitonment data collecting. ## Product Features diff --git a/docs/en/hat/hat-pir.md b/docs/en/hat/hat-pir.md index 7e94ad19..5ad40ada 100644 --- a/docs/en/hat/hat-pir.md +++ b/docs/en/hat/hat-pir.md @@ -6,7 +6,7 @@ ## Description -**Hat PIR** is an M5StickC compatible human body induction sensor, it belongs to "Passive pyroelectric infrared detector", that detect the infrared come from the human body. When the infrared is detected, the sensor will output HIGH and last for two seconds until the next detecting round. +**PIR HAT** is an M5StickC compatible human body induction sensor, it belongs to "Passive pyroelectric infrared detector", that detect the infrared come from the human body. When the infrared is detected, the sensor will output HIGH and last for two seconds until the next detecting round. *Notice: There exist 2 seconds delay* diff --git a/docs/en/hat/hat-powerc.md b/docs/en/hat/hat-powerc.md index 6f8df16f..f9fbd906 100644 --- a/docs/en/hat/hat-powerc.md +++ b/docs/en/hat/hat-powerc.md @@ -15,7 +15,7 @@ - Battery testing - Mobile power bank - Battery charger -- IIC Address 0x75 +- I2C Address 0x75 ## Include @@ -28,6 +28,10 @@ Resources Parameter + + IP5209 I2C Address + 0x75 + Net weight 55g @@ -46,10 +50,6 @@ -## Communication protocol - -IP5209 I2C address: 0x75 - ## Related Link - **[IP5209 Datasheet](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/hat/IP5209.pdf)** diff --git a/docs/en/hat/hat-roverc.md b/docs/en/hat/hat-roverc.md index 2a721f7a..60148939 100644 --- a/docs/en/hat/hat-roverc.md +++ b/docs/en/hat/hat-roverc.md @@ -39,6 +39,10 @@ Resources Parameter + + I2C Address + 0x38 + Net weight 213g diff --git a/docs/en/hat/hat_envII.md b/docs/en/hat/hat_envII.md index f6b11c4d..e1c594ea 100644 --- a/docs/en/hat/hat_envII.md +++ b/docs/en/hat/hat_envII.md @@ -6,13 +6,13 @@ ## Description -**ENV II** is an environment sensor which can sense temperature, humidity and atmospheric pressure. It is built with SHT30, BMP280 and BMM150 sensors, it is programmed over I2C. SHT30 is a digital temperature and humidity sensor with high precision and low power consumption. BMP280 is an absolute barometric pressure sensor which is especially designed for mobile applications. BMM150 is a magnetometer, which can be used to monitor the change of magnetic field and the direction of magnetic field.It offers the highest flexibility to optimize the device regarding power consumption, resolution and filter performance. +**ENV II HAT** is an environment sensor which can sense temperature, humidity and atmospheric pressure. It is built with SHT30, BMP280 and BMM150 sensors, it is programmed over I2C. SHT30 is a digital temperature and humidity sensor with high precision and low power consumption. BMP280 is an absolute barometric pressure sensor which is especially designed for mobile applications. BMM150 is a magnetometer, which can be used to monitor the change of magnetic field and the direction of magnetic field.It offers the highest flexibility to optimize the device regarding power consumption, resolution and filter performance. ## Product Features - Measurement of temperature, humidity, air pressure and magnetic field - High-precision -- Support IIC +- Support I2C - GROVE interface, support [UIFlow](http://flow.m5stack.com) and [Arduino](http://www.arduino.cc) - Two Lego installation holes diff --git a/docs/en/module/commu.md b/docs/en/module/commu.md index 5bd1d336..a0199425 100644 --- a/docs/en/module/commu.md +++ b/docs/en/module/commu.md @@ -6,7 +6,7 @@ ## Description -**COMMU** is a Muti-Communication-Interface-Converter. Integrated with 2*IIC, 1*TTL, 1*CAN, 1*RS485. Apparently COMMU has packed with most of series communications. +**COMMU** is a Muti-Communication-Interface-Converter. Integrated with 2*I2C, 1*TTL, 1*CAN, 1*RS485. Apparently COMMU has packed with most of series communications. Default connection: TTL - UART0, RS485 - UART2. Since ESP32 pin map is allowed for re-assign, you can re-assign or re-mapping the TTL or RS485 interface to other pins. diff --git a/docs/en/module/encoder.md b/docs/en/module/encoder.md index ff433e54..30a889b3 100644 --- a/docs/en/module/encoder.md +++ b/docs/en/module/encoder.md @@ -8,14 +8,14 @@ **ENCODER** is compatible with FACE Kit. You can have it replace the key-card panel inside the FACE kit. It is designed for rotary encoder control, integrated Mega328 microprocessor inside and LEDs around the encoder. -The series communication protocol between M5 core and ENCODER is IIC (The default I2c address is: 0x5E) +The series communication protocol between M5 core and ENCODER is I2C (The default I2c address is: 0x5E) ## Product Features - 12 RGB Led -- IIC communication +- I2C communication - Simple API for programming - Mega328 inside - Encoder detection @@ -96,7 +96,7 @@ The series communication protocol between M5 core and ENCODER is IIC (The defaul r, g, b: 0 ~ 254 */ void Led(int led_index, int r, int g, int b){ - // IIC send data + // I2C send data Wire.beginTransmission(Faces_Encoder_I2C_ADDR); Wire.write(led_index); Wire.write(r); @@ -112,7 +112,7 @@ void Led(int led_index, int r, int g, int b){ void get_encoder_increment(void){ int temp_encoder_increment; - // IIC read data + // I2C read data Wire.requestFrom(Faces_Encoder_I2C_ADDR, 3); if(Wire.available()){ temp_encoder_increment = Wire.read();// get increment diff --git a/docs/en/module/goplus.md b/docs/en/module/goplus.md index af37be6a..6e2847fb 100644 --- a/docs/en/module/goplus.md +++ b/docs/en/module/goplus.md @@ -10,7 +10,7 @@ Comes with 2x DC motor channel, 4x Servo motor channel, IR transmitter, IR receiver, 3x extend PORT B(GPIO Port). This Module can surely help build more complicated and organized motor applications. -Communication Protocol: IIC (0x61). +Communication Protocol: I2C (0x61). ## Product Features diff --git a/docs/en/module/goplus2.md b/docs/en/module/goplus2.md index d1d56e55..cdf61b75 100644 --- a/docs/en/module/goplus2.md +++ b/docs/en/module/goplus2.md @@ -8,7 +8,7 @@ **GoPlus2** is a stackable multi-functional motor and servo control module. The master control integrates the STM32F030C8T6 chipset. The module is equipped with 2-way DC motor drive interface and 4-way servo drive interface. Three PORT-B interfaces(Analog Input,Digital Output,Digital Input) can be expanded. Built-in 500mAh battery and support infrared (IR) transmission and receive. In order to meet the requirements of multi-channel interface power supply at the same time, a DC power interface is provided for external power supply, battery can be charged through the M5Core with USB-C. -Communication protocol: IIC(0x38) +Communication protocol: I2C(0x38) ### Product Features diff --git a/docs/en/module/joystick.md b/docs/en/module/joystick.md index 2bda1b5a..2972e6fd 100644 --- a/docs/en/module/joystick.md +++ b/docs/en/module/joystick.md @@ -7,12 +7,12 @@ **JOYSTICK** is a joystick control panel compatible with the FACE kit. By pushing the joystick on the panel, you can input angle, direction and other data. Using the I2C communication protocol. It's possible to get the offset data of the joystick (X, Y coordinate) and the state of the middle button. An LED bar composed of 12 LEDs is embedded around the joystick. You can customize the luminous form of the LED light according to your needs. -JOYSTICK IIC address is 0x5E by default. +JOYSTICK I2C address is 0x5E by default. ## Product Features - 4 RGB Led -- IIC communication +- I2C communication - Simple API for programming ## Include diff --git a/docs/en/module/lego_plus.md b/docs/en/module/lego_plus.md index 37764926..ba6e1e13 100644 --- a/docs/en/module/lego_plus.md +++ b/docs/en/module/lego_plus.md @@ -8,7 +8,7 @@ **DC MOTOR** is built with MEGA328 and L293DD microcontrollers, implemented 4 driver channels. A DC power input is designed for power supplement. Through M-BUS the DC in can automatically power the M5 core at top. DC motor module can drive RJ12 interface encoder-motor easily and quickly, such as LEGO ev3 Motor.(This product is not affiliated with or endorsed by LEGO. LEGO is a trademark of the LEGO Group of companies) -Series Communication: IIC (0x56). +Series Communication: I2C (0x56). ## Product Features @@ -16,7 +16,7 @@ Series Communication: IIC (0x56). - DC Connector Type: XT30 (female) - 4x Motor port - Compatible with LEGO EV3 motor -- 2x IIC GROVE port (extend PORTA from M5 Core) +- 2x I2C GROVE port (extend PORTA from M5 Core) - L293DD: PUSH-PULL Driver Chip ## Include diff --git a/docs/en/module/plus.md b/docs/en/module/plus.md index 81c80843..349260fc 100644 --- a/docs/en/module/plus.md +++ b/docs/en/module/plus.md @@ -10,7 +10,7 @@ ## Product Features -- IIC address:(0x62) +- I2C address:(0x62) - 400mAh Battery - Programmable gear potentiometer - IR transmitter diff --git a/docs/en/module/servo.md b/docs/en/module/servo.md index afb09a7e..538f065b 100644 --- a/docs/en/module/servo.md +++ b/docs/en/module/servo.md @@ -6,7 +6,7 @@ ## Description -**SERVO** is made to implement the bestest, easiest way to drive Servo motors. This M5 module will make quick work of your next Servo project! It is able to drive mutiple Servo motors, up to 12 channels(Max load :14W) . We also added an DC input for power supplement. Through M-BUS the DC in can automatically power the M5 core at top.Servo is powered by MEGA328 communicate via IIC(0x53). +**SERVO** is made to implement the bestest, easiest way to drive Servo motors. This M5 module will make quick work of your next Servo project! It is able to drive mutiple Servo motors, up to 12 channels(Max load :14W) . We also added an DC input for power supplement. Through M-BUS the DC in can automatically power the M5 core at top.Servo is powered by MEGA328 communicate via I2C(0x53). ## Product Features diff --git a/docs/en/product_list.json b/docs/en/product_list.json index 8982d3dc..97fc2063 100644 --- a/docs/en/product_list.json +++ b/docs/en/product_list.json @@ -66,6 +66,7 @@ {"a":"/#/en/unit/4relay", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/4relay.webp", "p":"4-RELAY", "sku":"U097" ,"kw":"SWITCH", "category":"I/0"}, {"a":"/#/en/unit/extio", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_extio_01.webp", "p":"EXT.IO", "sku":"U011" ,"kw":"PCA9554PW"}, {"a":"/#/en/unit/dac", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_dac_01.webp", "p":"DAC", "sku":"U012" ,"kw":"MCP4725"}, + {"a":"/#/en/unit/dds", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_dds_01.webp", "p":"DDS", "sku":"U105" ,"kw":"AD9833 Direct Digital Frequency Synthesis"}, {"a":"/#/en/unit/relay", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_relay_01.webp", "p":"RELAY", "sku":"U023" ,"kw":"SWITCH"}, {"a":"/#/en/unit/hub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_hub_01.webp", "p":"HUB", "sku":"U006" ,"kw":"CONNECTOR"}, {"a":"/#/en/unit/pahub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_pahub_p1.webp", "p":"PaHUB", "sku":"U040" ,"kw":"CONNECTOR"}, diff --git a/docs/en/tool/usb_downloader.md b/docs/en/tool/usb_downloader.md index 02a90360..8c0424aa 100644 --- a/docs/en/tool/usb_downloader.md +++ b/docs/en/tool/usb_downloader.md @@ -1,4 +1,4 @@ -## Accessory ESP32-Downloader {docsify-ignore-all} +## ESP32-Downloader SKU:A012 @@ -7,7 +7,7 @@ ## Description -USB downloader is a USB-to-UART converter. It can be used to download firmware form PC to Microprocessor devices. +**ESP32-Downloader** is a USB-to-UART converter. It can be used to download firmware form PC to Microprocessor devices. TXD led, RXD led, Power led and 6pin @ 2.54mm bus sockets. diff --git a/docs/en/unit/4relay.md b/docs/en/unit/4relay.md index bead519e..f7bc78d3 100644 --- a/docs/en/unit/4relay.md +++ b/docs/en/unit/4relay.md @@ -13,7 +13,7 @@ - 4-way relay - AC-250V/10A - LED status indication -- IIC communication (0x26) +- I2C communication (0x26) ## Include @@ -47,7 +47,7 @@ Communication - IIC(0x26) + I2C(0x26) Net Weight diff --git a/docs/en/unit/cardkb.md b/docs/en/unit/cardkb.md index 703389f6..e29f2190 100644 --- a/docs/en/unit/cardkb.md +++ b/docs/en/unit/cardkb.md @@ -8,7 +8,7 @@ **CardKB** is a unit with an implemented full-featured QWERTY keyboard. Consider that you want make some cool stuff that require keyboard typing and interaction, but M5 core by itself only has 3 buttons, what can you do? introducing CardKB, the flexible and powerful keyboard unit. -CardKB also can achieve button combination (Sym+Key, Shift+Key, Fn+Key) and output richer key value. This unit communicates with M5Core through GROVE A port (IIC interface). The default Address is 0x5F. +CardKB also can achieve button combination (Sym+Key, Shift+Key, Fn+Key) and output richer key value. This unit communicates with M5Core through GROVE A port (I2C interface). The default Address is 0x5F. **1. Button combination description:** @@ -57,7 +57,7 @@ CardKB also can achieve button combination (Sym+Key, Shift+Key, Fn+Key) and outp Communicationmethod - IIC + I2C Net weight diff --git a/docs/en/unit/color.md b/docs/en/unit/color.md index cda40119..4b5c92dc 100644 --- a/docs/en/unit/color.md +++ b/docs/en/unit/color.md @@ -64,7 +64,7 @@ This Unit communicates with the M5Core via the GROVE A interface(I2C). Address i Communicationmethod - IIC + I2C Net weight diff --git a/docs/en/unit/dac.md b/docs/en/unit/dac.md index ad870f72..92a8e63e 100644 --- a/docs/en/unit/dac.md +++ b/docs/en/unit/dac.md @@ -45,7 +45,7 @@ The device I2C address is 0x60 by default unless changed manually. communication protocol - IIC + I2C Net weight diff --git a/docs/en/unit/dds.md b/docs/en/unit/dds.md index a0b6d7f3..95e01a3d 100644 --- a/docs/en/unit/dds.md +++ b/docs/en/unit/dds.md @@ -2,7 +2,7 @@ SKU:U105 -
+
## Description @@ -15,6 +15,9 @@ It supports deep sleep mode, which can reduce the power consumption in the idle - Digital programmable frequency and phase - Signal output amplitude 0-0.6V - Sine wave/Triangle wave/Square wave/Sawtooth wave (fixed frequency: 13.6KHz)/DC output +- Output frequency range: 0MHz to 1MHz (10MHz based on the reference clock) +- 28bit frequency resolution +- 11bit phase resolution ## Includes @@ -47,21 +50,33 @@ It supports deep sleep mode, which can reduce the power consumption in the idle Signal output amplitude 0-0.6V + + Output frequency range + 0MHz to 1MHz (10MHz based on the reference clock) + + + Frequency resolution + 28bit + + + Phase resolution + 11bit + Net weight - 7g + 11.1g Gross weight - 19g + 34.7g Product size - 48*24*8mm + 71*24*8mm Package size - 67*53*12mm + 88.5*60*21mm @@ -71,12 +86,33 @@ It supports deep sleep mode, which can reduce the power consumption in the idle ## EasyLoader +>EasyLoader is a concise and fast program writer, which has a built-in case program related to the product. It can be burned to the main control by simple steps to perform a series of function verification. Please install the corresponding driver according to the device type. M5Core host [Please click here to view the CP210X driver installation tutorial](en/arduino/arduino_development) + +
+
+
+
+ Windows +
+
+
+ +
+ + +

Description:

+

Control DDS Unit Output Sine wave/Triangle wave/Square wave/Sawtooth wave.

+
+
+
## Example ### Arduino IDE -- [Arduino example program](https://github.com/m5stack/M5Stack/blob/master/examples/Unit/DDS_AD9833/DDS_AD9833.ino) +- [Arduino example program](https://github.com/m5stack/M5Stack/tree/master/examples/Unit/DDS_AD9833) ## Schematic @@ -136,14 +172,14 @@ It supports deep sleep mode, which can reduce the power consumption in the idle // /*------------------------------------------------ -------------------------------------------------- -*/ - ``` + + \ No newline at end of file diff --git a/docs/en/unit/envII.md b/docs/en/unit/envII.md index 8935ad6f..f4753318 100644 --- a/docs/en/unit/envII.md +++ b/docs/en/unit/envII.md @@ -15,7 +15,7 @@ BMP280 is an absolute barometric pressure sensor which is especially designed fo ## Product Features - High-precision -- Support IIC +- Support I2C - GROVE interface, support [UIFlow](http://flow.m5stack.com) and [Arduino](http://www.arduino.cc) - Two Lego installation holes diff --git a/docs/en/unit/extio.md b/docs/en/unit/extio.md index 6ed75a28..3903ec7f 100644 --- a/docs/en/unit/extio.md +++ b/docs/en/unit/extio.md @@ -12,7 +12,7 @@ The EXT.IO Integrates the PCA9554PW chipset. This 8-bit I/O expander for the two It provides general-purpose remote I/O expansion for most microcontroller families via the I2C interface. -IIC address by default is 0x27, unless changed manually. +I2C address by default is 0x27, unless changed manually. It’s difficult to foresee the needs of your project from the start. EXT.IO is the perfect solution for expanding the number of IO. It allows you to add new features, logic, timing and sensing to already highly integrated designs. @@ -35,7 +35,7 @@ It’s difficult to foresee the needs of your project from the start. EXT.IO is Parameter - IIC address + I2C address 0x27 diff --git a/docs/en/unit/heart.md b/docs/en/unit/heart.md index 1ca9ae11..67b63137 100644 --- a/docs/en/unit/heart.md +++ b/docs/en/unit/heart.md @@ -44,7 +44,7 @@ The MAX30100 provides very small total solution size without sacrificing optical communication protocol - IIC:0x57 + I2C:0x57 Operating Voltage diff --git a/docs/en/unit/hub.md b/docs/en/unit/hub.md index 85f3aafd..90690e68 100644 --- a/docs/en/unit/hub.md +++ b/docs/en/unit/hub.md @@ -6,7 +6,7 @@ ## Description -**HUB** is a unit that is used in order to expand the GROVE ports over the M5Stack device. For example, if we want sensors with different IIC addresses or output to 3 devices at the same time. (M5Stack device usually can output one device at a time to to limited amount of grove ports) +**HUB** is a unit that is used in order to expand the GROVE ports over the M5Stack device. For example, if we want sensors with different I2C addresses or output to 3 devices at the same time. (M5Stack device usually can output one device at a time to to limited amount of grove ports) Notice: **HUB** is just a hardware expander, if you are looking for hardware and software (standard protocol) expander like I2C, Single-bus, please check **PaHUB** or **PbHUB**. diff --git a/docs/en/unit/m5camera_f.md b/docs/en/unit/m5camera_f.md index 38457301..c1e9ddf1 100644 --- a/docs/en/unit/m5camera_f.md +++ b/docs/en/unit/m5camera_f.md @@ -153,7 +153,7 @@ what this software can do? **BME280 Interface** -*It's IIC address is 0x76.* +*It's I2C address is 0x76.* | *BME280* | *M5CameraF* | | :-----------: | :------: | @@ -163,7 +163,7 @@ what this software can do? **MPU6050 Interface** -*It's IIC address is 0x68.* +*It's I2C address is 0x68.* | *MPU6050* | *M5CameraF* | | :-----------: | :------: | diff --git a/docs/en/unit/m5camera_x.md b/docs/en/unit/m5camera_x.md index 5e585798..941f8453 100644 --- a/docs/en/unit/m5camera_x.md +++ b/docs/en/unit/m5camera_x.md @@ -145,7 +145,7 @@ what this software can do? **BME280 Interface** -*It's IIC address is 0x76.* +*It's I2C address is 0x76.* | *BME280* | *M5Camera* | | :-----------: | :------: | @@ -155,7 +155,7 @@ what this software can do? **MPU6050 Interface** -*It's IIC address is 0x68.* +*It's I2C address is 0x68.* | *MPU6050* | *M5Camera* | | :-----------: | :------: | diff --git a/docs/en/unit/ncir.md b/docs/en/unit/ncir.md index e7dc1791..67fad599 100644 --- a/docs/en/unit/ncir.md +++ b/docs/en/unit/ncir.md @@ -14,7 +14,7 @@ Simply point the sensor towards what you want to measure and it will detect the
The MLX90614 is factory calibrated in wide temperature ranges: -40 to 125 ˚C for the ambient temperature and -70 to 380 ˚C for the object temperature. -Connect with M5Core via GROVE A IIC(0x5A). +Connect with M5Core via GROVE A I2C(0x5A). ## Product Features diff --git a/docs/en/unit/rfid.md b/docs/en/unit/rfid.md index ccf7c34c..85ca2980 100644 --- a/docs/en/unit/rfid.md +++ b/docs/en/unit/rfid.md @@ -12,7 +12,7 @@ The MFRC522 operates in the 13.56MHz frequency band and uses the modulation and It is able tp establish applications such as access control system, punching system, warehouse goods storage and community vehicle access registration. -Connect this Unit to GROVE PORTA on M5Core, IIC address is 0x28. +Connect this Unit to GROVE PORTA on M5Core, I2C address is 0x28. ## Product Features diff --git a/docs/en/unit/sonic.md b/docs/en/unit/sonic.md index a962663a..f8a08d98 100644 --- a/docs/en/unit/sonic.md +++ b/docs/en/unit/sonic.md @@ -6,14 +6,14 @@ ## Description -**Ultrasonic** is an ultrasonic distance measuring sensor unit, with the capability of simultaneous reception and transmission. The ultrasonic probe has a sound frequency of 40KHz, a direction angle of ±20 ° and an accuracy of 1mm. The internal part is calculated by an RCWL-9600 ultrasonic distance measuring chip, and the measurement results can be directly obtained through IIC interface (0x57). The effective distance is 20-1500mm. +**Ultrasonic** is an ultrasonic distance measuring sensor unit, with the capability of simultaneous reception and transmission. The ultrasonic probe has a sound frequency of 40KHz, a direction angle of ±20 ° and an accuracy of 1mm. The internal part is calculated by an RCWL-9600 ultrasonic distance measuring chip, and the measurement results can be directly obtained through I2C interface (0x57). The effective distance is 20-1500mm. ## Product Features - Split transceiver - 20-1500mm distance effectiveness - Wide angle range -- IIC communication, result output directly +- I2C communication, result output directly ## Includes diff --git a/docs/en/unit/thermal.md b/docs/en/unit/thermal.md index fe125694..0e8b1029 100644 --- a/docs/en/unit/thermal.md +++ b/docs/en/unit/thermal.md @@ -13,7 +13,7 @@ The MLX90640 Infrared (IR) sensor array combines high resolution and reliable op The field of view (FoV) option includes a standard 55° x 35° version and a wide angle version of 110° x 75° for distances up to 7m. This Unit is **110°×75° FoV**, also known as the BAA package. -The Unit communicates with the M5Core through the Grove A interface, IIC address is **0x33** +The Unit communicates with the M5Core through the Grove A interface, I2C address is **0x33** diff --git a/docs/ja/README.md b/docs/ja/README.md index 5c05c876..368ec4e4 100644 --- a/docs/ja/README.md +++ b/docs/ja/README.md @@ -330,7 +330,7 @@ Base
- +   @@ -863,7 +863,7 @@ 応用製品 - +
diff --git a/docs/ja/module/goplus.md b/docs/ja/module/goplus.md index 18bb227c..d6841f03 100644 --- a/docs/ja/module/goplus.md +++ b/docs/ja/module/goplus.md @@ -16,7 +16,7 @@ comes with 2x DC motor channel, 4x Servo motor channel, IR transmitter, IR recei -Communication Protocol: IIC (0x61). +Communication Protocol: I2C (0x61). ## Product Features diff --git a/docs/zh_CN/api/system_m5stickc.md b/docs/zh_CN/api/system_m5stickc.md index 4b4dff15..bf8cdeb1 100644 --- a/docs/zh_CN/api/system_m5stickc.md +++ b/docs/zh_CN/api/system_m5stickc.md @@ -58,7 +58,7 @@ void setup() { ## GetBm8563Time() -*这是 BM8563 芯片的 API 函数。该芯片与 ESP32 之间通过 IIC 通信,IIC 地址为 0x51* +*这是 BM8563 芯片的 API 函数。该芯片与 ESP32 之间通过 I2C 通信,I2C 地址为 0x51* **函数原型:** diff --git a/docs/zh_CN/api/tough/lcd.md b/docs/zh_CN/api/tough/lcd.md index 31992aa5..0ae57476 100644 --- a/docs/zh_CN/api/tough/lcd.md +++ b/docs/zh_CN/api/tough/lcd.md @@ -4,6 +4,5 @@ ## M5Display类 ->在`M5.begin()`初始化中,已经创建了实例`lcd`并进行了初始化. 你可以用该实例中的API进行图案绘制与文本显示。 - +>`M5Display`在继承了`TFT_eSPI`类的基础上增加对屏幕亮度调节与休眠唤醒等API,在`M5.begin()`初始化中,已经创建了实例`lcd`并进行了初始化. 你可以用该实例中的API进行图案绘制与文本显示。 diff --git a/docs/zh_CN/api/tough/touch.md b/docs/zh_CN/api/tough/touch.md index dec3d997..4b1baa81 100644 --- a/docs/zh_CN/api/tough/touch.md +++ b/docs/zh_CN/api/tough/touch.md @@ -153,4 +153,4 @@ void loop() ``` -## 更多有关Touch API内容,请参考[M5Tough-Github]()源码 \ No newline at end of file +- 更多有关Touch API内容,请参考[M5Tough-Github源码](https://github.com/m5stack/M5Tough/tree/master/src) \ No newline at end of file diff --git a/docs/zh_CN/app/balac.md b/docs/zh_CN/app/balac.md index e6d5e744..758e133e 100644 --- a/docs/zh_CN/app/balac.md +++ b/docs/zh_CN/app/balac.md @@ -62,7 +62,7 @@ 通讯协议 - IIC: 0x38 + I2C: 0x38 电池 diff --git a/docs/zh_CN/arduino/arduino_home_page.md b/docs/zh_CN/arduino/arduino_home_page.md index 40c33110..0741f05b 100644 --- a/docs/zh_CN/arduino/arduino_home_page.md +++ b/docs/zh_CN/arduino/arduino_home_page.md @@ -102,6 +102,13 @@ const m5paper_api = { "id":"m5paper_api" }; +const tough_api = { + 'title':"M5Tough API", + 'item':{ + 'TOUCH':'#/zh_CN/api/tough/touch' + }, + "id":"tough_api" +}; var arduino_home_page = new Vue({ el:'#arduino_home_page', @@ -113,7 +120,8 @@ var arduino_home_page = new Vue({ m5stickc_api: m5stickc_api, m5core2_api: m5core2_api, coreink_api: coreink_api, - m5paper_api: m5paper_api + m5paper_api: m5paper_api, + tough_api: tough_api } }; } diff --git a/docs/zh_CN/atom/atomicgps.md b/docs/zh_CN/atom/atomicgps.md index 0bdd8e9a..028f0b53 100644 --- a/docs/zh_CN/atom/atomicgps.md +++ b/docs/zh_CN/atom/atomicgps.md @@ -82,7 +82,7 @@ UART 参数设置: 波特率 - 4800bps-921600bps + 默认: 9600bps 输出协议 diff --git a/docs/zh_CN/core/fire.md b/docs/zh_CN/core/fire.md index da6c94f9..a9cc386e 100644 --- a/docs/zh_CN/core/fire.md +++ b/docs/zh_CN/core/fire.md @@ -114,7 +114,7 @@ Fire 中的 GPIO 16 / 17 默认与PSRAM连接,因此当你在连接或是堆 底座接口 - PortA(IIC)、PortB(GPIO)、PortC(UART) + PortA(I2C)、PortB(GPIO)、PortC(UART) 电池 diff --git a/docs/zh_CN/core/m5go_lite.md b/docs/zh_CN/core/m5go_lite.md index 57ee17ef..8a66b34a 100644 --- a/docs/zh_CN/core/m5go_lite.md +++ b/docs/zh_CN/core/m5go_lite.md @@ -105,7 +105,7 @@ 底座接口 - PortA(IIC)、PortB(GPIO)、PortC(UART) + PortA(I2C)、PortB(GPIO)、PortC(UART) 电池 diff --git a/docs/zh_CN/core/tough.md b/docs/zh_CN/core/tough.md index 0e7fac15..e1060ea8 100644 --- a/docs/zh_CN/core/tough.md +++ b/docs/zh_CN/core/tough.md @@ -1,8 +1,8 @@ # TOUGH -SKU:K010 + -
+ ## 描述 @@ -96,57 +96,15 @@ 天线 2.4G 3D天线 - - 工作温度 - 32°F to 104°F ( 0°C to 40°C ) - - - 净重 - 52g - - 毛重 - 70g - - - 产品尺寸 - 76*58*41.6mm - - - 包装尺寸 - 75 x 60 x 20mm - - - 外壳材质 - Plastic ( PC ) - ## EasyLoader ->EasyLoader是一个简洁快速的程序烧录器,其内置了一个产品相关的案例程序,通过简单步骤将其烧录至主控,即可进行一系列的功能验证.**(程序烧录前,请根据设备类型安装相应驱动程序. M5Core型主机[请点击此处查看CP210X驱动安装教程](zh_CN/arduino/arduino_development?id=安装串口驱动),M5StickC/V/T/ATOM系列可免驱动使用)** - -
-
-
-
- Windows - -
-
-
- -
- - -

案例描述:

-

该案例将执行喇叭,wifi,按键,加速计,TF-card(microSD),屏幕等硬件运行测试.

-
-
-
+>EasyLoader是一个简洁快速的程序烧录器,其内置了一个产品相关的案例程序,通过简单步骤将其烧录至主控,即可进行一系列的功能验证.**(程序烧录前,请根据设备类型安装相应驱动程序. M5Core型主机[请点击此处查看CP210X驱动安装教程](zh_CN/arduino/arduino_development?id=安装串口驱动)** +- **Windows** + - [FactoryTest](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Windows/CORE/EasyLoader_M5Tough_FactoryTest.exe) ## 管脚映射 @@ -157,7 +115,7 @@ TF 卡最大支持 16GB - +
ESP32 ChipGPIO38GPIO23GPIO18GPIO5GPIO15
AXP192 Chip AXP_IO4AXP_DC3AXP_LDO2
AXP192 Chip AXP_IO4AXP_LD03AXP_LDO2
ILI9342CMISOMOSISCKCSDCRSTBLPWR
@@ -176,7 +134,7 @@ TF 卡最大支持 16GB **NS4168功放** - +
ESP32 ChipGPIO12GPIO0GPIO2AXP_IO2GPIO34
ESP32 ChipGPIO12GPIO0GPIO2AXP_IO2
NS4168BCLKLRCKDATASPK_EN
@@ -184,8 +142,8 @@ TF 卡最大支持 16GB - - + +
ESP32 ChipGPIO21GPIO22
AXP192AXP_PWR
BM8563SDASCLINT
AXP192AXP_PWRAXP_LDO1
BM8563SDASCLINTPWR
**USB转串口下载** @@ -278,17 +236,11 @@ TF 卡最大支持 16GB ### Arduino IDE -- [FactoryTest](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Core/M5Core2/Arduino) -- [M5Tough-Lib](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Core/M5Core2/Arduino) +- [FactoryTest](https://github.com/m5stack/M5Tough/tree/master/examples/Basics/FactoryTest) +- [M5Tough-Lib](https://github.com/m5stack/M5Tough) \ No newline at end of file diff --git a/docs/zh_CN/hat/hat-env.md b/docs/zh_CN/hat/hat-env.md index 3d05db78..a6f8b696 100644 --- a/docs/zh_CN/hat/hat-env.md +++ b/docs/zh_CN/hat/hat-env.md @@ -6,7 +6,7 @@ ## 描述 -**ENV Hat**是一款兼容M5SticKC的多功能环境传感器,内部集成DHT12、BMP280和BMM150,能够检测温度、湿度、大气压值、三轴磁力计数据,该模块采用的统一的I2C协议接口,因此在引脚上没有过多的占用.对于希望同时拥有精致体积与丰富功能的项目来说,**ENV Hat**是一个不错的选择. +**ENV HAT**是一款兼容M5SticKC的多功能环境传感器,内部集成DHT12、BMP280和BMM150,能够检测温度、湿度、大气压值、三轴磁力计数据,该模块采用的统一的I2C协议接口,因此在引脚上没有过多的占用.对于希望同时拥有精致体积与丰富功能的项目来说,**ENV Hat**是一个不错的选择. ## 产品特性 diff --git a/docs/zh_CN/hat/hat-pir.md b/docs/zh_CN/hat/hat-pir.md index 46ca28a6..0cf25466 100644 --- a/docs/zh_CN/hat/hat-pir.md +++ b/docs/zh_CN/hat/hat-pir.md @@ -6,7 +6,7 @@ ## 描述 -**PIR Hat**是一款兼容M5SticKC的人体红外传感器,它属于"被动式热释电红外探测器",通过检测由人体或物体发射、反射的红外辐射进行判断工作.当检测到红外时、输出高电平,并进行一段时间的延时(期间保持高电平且允许重复触发),直至触发信号消失(恢复低电平). +**PIR HAT**是一款兼容M5SticKC的人体红外传感器,它属于"被动式热释电红外探测器",通过检测由人体或物体发射、反射的红外辐射进行判断工作.当检测到红外时、输出高电平,并进行一段时间的延时(期间保持高电平且允许重复触发),直至触发信号消失(恢复低电平). *注意: 检测触发后存在2秒延时.* diff --git a/docs/zh_CN/hat/hat-powerc.md b/docs/zh_CN/hat/hat-powerc.md index a4690099..8ff24c48 100644 --- a/docs/zh_CN/hat/hat-powerc.md +++ b/docs/zh_CN/hat/hat-powerc.md @@ -31,6 +31,10 @@ 规格 参数 + + IP5209 I2C地址 + 0x75 + 净重 55g @@ -51,7 +55,7 @@ ## 通信协议 -IP5209 I2C地址: 0x75 + ## 参考文档 diff --git a/docs/zh_CN/hat/hat-roverc.md b/docs/zh_CN/hat/hat-roverc.md index 2f58878c..470e8328 100644 --- a/docs/zh_CN/hat/hat-roverc.md +++ b/docs/zh_CN/hat/hat-roverc.md @@ -38,6 +38,10 @@ 规格 参数 + + I2C地址 + 0x38 + 净重 213g @@ -86,16 +90,16 @@ ## 案例程序 -- **UIFlow** - - - - **Arduino** 配合JoyC HAT使用 [点击此处](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Hat/RoverC),获取完整程序. 单独使用 [点击此处](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Application/RoverC_Arduino_Alone),获取完整程序. +- **UIFlow** + + + ## 版本变更 diff --git a/docs/zh_CN/module/encoder.md b/docs/zh_CN/module/encoder.md index 46095180..c1b64d97 100644 --- a/docs/zh_CN/module/encoder.md +++ b/docs/zh_CN/module/encoder.md @@ -106,7 +106,7 @@ M5Core与ENCODER之间的串行通信协议是I2C(地址:0x5E) r, g, b: 0 ~ 254 */ void Led(int led_index, int r, int g, int b){ - // IIC send data + // I2C send data Wire.beginTransmission(Faces_Encoder_I2C_ADDR); Wire.write(led_index); Wire.write(r); @@ -122,7 +122,7 @@ void Led(int led_index, int r, int g, int b){ void get_encoder_increment(void){ int temp_encoder_increment; - // IIC read data + // I2C read data Wire.requestFrom(Faces_Encoder_I2C_ADDR, 3); if(Wire.available()){ temp_encoder_increment = Wire.read();// get increment diff --git a/docs/zh_CN/module/goplus.md b/docs/zh_CN/module/goplus.md index 41998d10..341a7fa7 100644 --- a/docs/zh_CN/module/goplus.md +++ b/docs/zh_CN/module/goplus.md @@ -10,7 +10,7 @@ 配备2通道直流电机驱动、4通道舵机驱动接口、红外收发器、3个扩展端口B(GPIO端口).具备多种功能特性,能够帮助你快速搭建功能强大的电机应用. -通信协议:IIC(0x61). +通信协议:I2C(0x61). ### 产品特性 diff --git a/docs/zh_CN/module/goplus2.md b/docs/zh_CN/module/goplus2.md index ac23870c..17d0b564 100644 --- a/docs/zh_CN/module/goplus2.md +++ b/docs/zh_CN/module/goplus2.md @@ -8,7 +8,7 @@ **GoPlus2** 是一款可堆叠的多功能电机舵机控制模块。下位机采用STM32F030C8T6,模块配备2路直流电机驱动接口,4路舵机驱动接口,可扩展3个PORT-B接口,满足模拟输入、数字输入输出的需求,同时支持红外(IR)发射与接收。模块提供一个DC直流电源接口用于外部供电,此外模块内部有500mAh电池,可通过M5Core主机对其充电。 -通信协议:IIC(0x38) +通信协议:I2C(0x38) ### 产品特性 diff --git a/docs/zh_CN/product_list.json b/docs/zh_CN/product_list.json index 07c32e39..24d5b7ba 100644 --- a/docs/zh_CN/product_list.json +++ b/docs/zh_CN/product_list.json @@ -66,6 +66,7 @@ {"a":"/#/zh_CN/unit/4relay", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/4relay.webp", "p":"4-RELAY", "sku":"U097" ,"kw":"SWITCH", "category":"I/0"}, {"a":"/#/zh_CN/unit/extio", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_extio_01.webp", "p":"EXT.IO", "sku":"U011" ,"kw":"PCA9554PW"}, {"a":"/#/zh_CN/unit/dac", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_dac_01.webp", "p":"DAC", "sku":"U012" ,"kw":"MCP4725"}, + {"a":"/#/zh_CN/unit/dds", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_dds_01.webp", "p":"DDS", "sku":"U105" ,"kw":"AD9833 信号源 信号发生器"}, {"a":"/#/zh_CN/unit/relay", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_relay_01.webp", "p":"RELAY", "sku":"U023" ,"kw":"SWITCH"}, {"a":"/#/zh_CN/unit/hub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_hub_01.webp", "p":"HUB", "sku":"U006" ,"kw":"CONNECTOR"}, {"a":"/#/zh_CN/unit/pahub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_pahub_p1.webp", "p":"PaHUB", "sku":"U040" ,"kw":"CONNECTOR"}, diff --git a/docs/zh_CN/tool/usb_downloader.md b/docs/zh_CN/tool/usb_downloader.md index 45ea713c..a71c1244 100644 --- a/docs/zh_CN/tool/usb_downloader.md +++ b/docs/zh_CN/tool/usb_downloader.md @@ -1,4 +1,4 @@ -# Accessory ESP32-Downloader +# ESP32-Downloader SKU:A012 @@ -6,7 +6,7 @@ ## 描述 -内置 CP2104 芯片的串口转 USB 烧录工具。 +**ESP32-Downloader** 是一款内置 CP2104 芯片的串口转 USB 烧录工具。 ## 参数 diff --git a/docs/zh_CN/unit/4relay.md b/docs/zh_CN/unit/4relay.md index 301bdeb5..c3f7ff29 100644 --- a/docs/zh_CN/unit/4relay.md +++ b/docs/zh_CN/unit/4relay.md @@ -47,7 +47,7 @@ 通讯方式 - IIC(0x26) + I2C(0x26) 净重 diff --git a/docs/zh_CN/unit/cardkb.md b/docs/zh_CN/unit/cardkb.md index 8216edc7..36b9a10d 100644 --- a/docs/zh_CN/unit/cardkb.md +++ b/docs/zh_CN/unit/cardkb.md @@ -53,7 +53,7 @@ 通讯方式 - IIC + I2C 净重 diff --git a/docs/zh_CN/unit/color.md b/docs/zh_CN/unit/color.md index ed00f4f2..55951da6 100644 --- a/docs/zh_CN/unit/color.md +++ b/docs/zh_CN/unit/color.md @@ -26,7 +26,7 @@ -该 Unit 与 M5Core 通过 PORT A 接口 ( IIC ) 通信,其 I2C 地址是 0x29 。 +该 Unit 与 M5Core 通过 PORT A 接口 ( I2C ) 通信,其 I2C 地址是 0x29 。 ## 产品特性 @@ -60,7 +60,7 @@ 通讯方式 - IIC + I2C 净重 diff --git a/docs/zh_CN/unit/dac.md b/docs/zh_CN/unit/dac.md index f14b1182..575800ed 100644 --- a/docs/zh_CN/unit/dac.md +++ b/docs/zh_CN/unit/dac.md @@ -42,7 +42,7 @@ 通讯方式 - IIC + I2C 净重 diff --git a/docs/zh_CN/unit/dds.md b/docs/zh_CN/unit/dds.md index 5658dfe6..2525f389 100644 --- a/docs/zh_CN/unit/dds.md +++ b/docs/zh_CN/unit/dds.md @@ -13,8 +13,9 @@ - 数字可编程频率和相位 - 信号输出幅值0-0.6V - 正弦波/三角波/方波/锯齿波(固定频率:13.6KHz)/DC输出 -- 输出频率范围:0 MHz至12.5 MHz -- 28位分辨率(25 MHz基准时钟时为0.1 Hz) +- 输出频率范围:0MHz至1MHz(10MHz基准时钟) +- 28bit频率分辨率 +- 11bit相位分辨率 ## 包含 @@ -49,42 +50,69 @@ 输出频率范围 - 0 MHz至12.5 MHz + 0 MHz至1MHz(10 MHz基准时钟) - 分辨率 - 28位(25 MHz基准时钟时为0.1 Hz) + 频率分辨率 + 28bit + + + 相位分辨率 + 11bit 净重 - 7g + 11.1g 毛重 - 19g + 34.7g 产品尺寸 - 48*24*8mm + 71*24*8mm 包装尺寸 - 67*53*12mm + 88.5*60*21mm + +## EasyLoader + +>EasyLoader是一个简洁快速的程序烧录器,其内置了一个产品相关的案例程序,通过简单步骤将其烧录至主控,即可进行一系列的功能验证.**(程序烧录前,请根据设备类型安装相应驱动程序. M5Core型主机[请点击此处查看CP210X驱动安装教程](zh_CN/arduino/arduino_development?id=安装串口驱动)** + +
+
+
+
+ Windows +
+
+
+ +
+ + +

案例描述:

+

控制DDS Unit输出正弦波/三角波/方波/锯齿波.

+
+
+
+ ## 相关链接 - **[AD9833](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/unit/dds/ad9833.pdf)** -## EasyLoader - ## 案例程序 ### Arduino IDE -- [Arduino示例程序](https://github.com/m5stack/M5Stack/blob/master/examples/Unit/DDS_AD9833/DDS_AD9833.ino) +- [Arduino示例程序](https://github.com/m5stack/M5Stack/tree/master/examples/Unit/DDS_AD9833) ## 原理图 @@ -149,7 +177,7 @@