Englebert
14ffbb4d3f
|
1 year ago | |
---|---|---|
include | 1 year ago | |
lib | 1 year ago | |
src | 1 year ago | |
test | 1 year ago | |
README.md | 1 year ago | |
platformio.ini | 1 year ago |
README.md
PROGRAM FLOW
Screens available:
- Introductions Screen
- Just the logo or some cool graphics
- Controller Screen
- Showing the buttons states and gimbal positions
- I2C Rates, Battery health, Gimbal Rate
- Gimbal Trims - Throttle, Yaw
- Gimbal Trims - Pitch, Roll
- Settings
- About
The Introduction screen will only appear once.
Pin Layouts
+-----------------------+
| O | USB | O |
| ------- |
[ OLED VCC ] 3V3 | [ ] [ ] | VIN [ 5V FROM RPi ]
[ Ground From Pi ] GND | [ ] [ ] | GND [ GROUND FROM RPi ]
[ ] Touch3 / HSPI_CS0 / ADC2_3 / GPIO15 | [ ] [ ] | GPIO13 / ADC2_4 / HSPI_ID / Touch4 [ BUTTON8 ]
[ ] CS / Touch2 / HSPI_WP / ADC2_2 / GPIO2 | [ ] [ ] | GPIO12 / ADC2_5 / HSPI_Q / Touch5 [ BUTTON7 ]
[ BUTTON9 ] Touch0 / HSPI_HD / ADC2_0 / GPIO4 | [ ] [ ] | GPIO14 / ADC2_6 / HSPI_CLK / Touch6 [ BUTTON6 ]
[ I2C2_SDA ] U2_RXD / GPIO16 | [ ] [ ] | GPIO27 / ADC2_7 / Touch7 [ BUTTON5 ]
[ I2C2_SCL ] U2_TXD / GPIO17 | [ ] [ ] | GPIO26 / ADC2_9 / DAC2 [ BUTTON4 ]
[ BUTTON10 ] V_SPI_CS0 / GPIO5 | [ ] ___________ [ ] | GPIO25 / ADC2_8 / DAC1 [ BUTTON3 ]
[ BUTTON1 ] SCK / V_SPI_CLK / GPIO18 | [ ] | | [ ] | GPIO33 / ADC1_5 / Touch8 / XTAL32 [ A_SENSE ]
[ BUTTON2 ] U0_CTS / MSIO / V_SPI_Q / GPIO19 | [ ] | | [ ] | GPIO32 / ADC1_4 / Touch9 / XTAL32 [ V_SENSE ]
[ SDA to Pi ] SDA / V_SPI_HD / GPIO21 | [ ] | | [ ] | GPIO35 / ADC1_7 [ ROLL ]
[ ] CLK2 / U0_RXD / GPIO3 | [ ] | | [ ] | GPIO34 / ADC1_6 [ PITCH ]
[ ] CLK3 / U0_TXD / GPIO1 | [ ] | | [ ] | GPIO39 / ADC1_3 / SensVN [ YAW ]
[ SCL to Pi ] SCL / U0_RTS / V_SPI_WP / GPIO22 | [ ] | | [ ] | GPIO36 / ADC1_0 / SensVP [ THROTTLE ]
[ ] MOSI / V_SPI_WP / GPIO23 | [ ] |___________| [ ] | EN
| |
| | | ____ ____ | |
| | | | | | | | |
| |__|__| |__| |__| |
| O O |
+-----------------------+
Power Pins
VIN - VIN pin can be used to directly supply the ESP32 and its peripherals, if you have a regulated 5V voltage source. 3V3 - 3.3V pin is the output of an on-board voltage regulator. This pin can be used to supply power to external components. GND - Ground pin(s)
GPIO Pins
ESP32 development board has 25 GPIO pins which can be assigned to various functions programmatically. Each digital enabled GPIO can be configured to internal pull-up or pull-down, or set to high impedance. When configured as an input, it can also be set to edge-trigger or level-trigger to generate CPU interrupts.
ADC Channels
The board integrates 12-bit SAR ADCs and supports measurements on 15 channels (analog enabled pins). Some of these pins can be used to build a programmable gain amplifier which is used for the measurement of small analog signals. The ESP32 is also designed to measure the voltages while operating in the sleep mode.
DAC Channels
he board features two 8-bit DAC channels to convert digital signals into true analog voltages. This dual DAC can drive other circuits.
Touch Pads
The board offers 9 capacitive sensing GPIOs which detect capacitive variations introduced by the GPIO’s direct contact or close proximity with a finger or other objects.
UART Pins
ESP32 development board has 2 UART interfaces, i.e. UART0 and UART2, which provide asynchronous communication (RS232 and RS485) and IrDA support, and communicate at up to 5 Mbps. UART provides hardware management of the CTS and RTS signals and software flow control (XON and XOFF) as well.
SPI Pins
SPI Pins ESP32 features three SPIs (SPI, HSPI and VSPI) in slave and master modes. These SPIs also support the following general-purpose SPI features:
- 4 timing modes of the SPI format transfer
- Up to 80 MHz and the divided clocks of 80 MHz
- Up to 64-Byte FIFO
- All SPIs can also be used to connect to the external Flash/SRAM and LCD.
PWM Pins
The board has 25 channels (Nearly All GPIO pins) of PWM pins controlled by Pulse Width Modulation (PWM) controller. The PWM output can be used for driving digital motors and LEDs. The controller consists of PWM timers and the PWM operator. Each timer provides timing in synchronous or independent form, and each PWM operator generates the waveform for one PWM channel.
EN Pin
Used to enable ESP32. The chip is enabled when pulled HIGH. When pulled LOW the chip works at minimum power.