Noduino Quantum

来自Jack's Lab
2016年11月13日 (日) 15:29Comcat (讨论 | 贡献)的版本

跳转到: 导航, 搜索

目录

1 Overview

Quantum-6.jpg Quantum-3.jpg Quantum-4.jpg Quantum-5.jpg


  • CP2102 USB to UART Chip
  • ESP32 Bluetooth and WiFi SoC
  • 40MHz Crystal (±10ppm, ±10ppm)
  • 16MB SPI Flash (25Q128xxx, QIO, 80MHz)
  • 5V - 12V Power Supply


  • UART Baud rate is 115200




2 Pin Map

We place the PIN map on the back of the board:

Quantum-back.jpg


You guys can refer to this doc for more details: http://www.espressif.com/sites/default/files/documentation/esp32_chip_pin_list_en_0.pdf

Esp32-pin-iomux.png



3 Quick Start

3.1 USB2UART

Quantum use the CP2102 USB to UART chip, you need to install the driver firstly. Accessing following url to get your driver:


The default baud rate is 115200



3.2 Linux

Please refer to: https://github.com/icamgo/esp-idf/blob/master/docs/linux-setup.rst



3.3 MAC OS

Please refer to: https://github.com/icamgo/esp-idf/blob/master/docs/macos-setup.rst



3.4 Windows

Please refer to: https://github.com/icamgo/esp-idf/blob/master/docs/windows-setup.rst



3.5 Auto Reset

You need to press the RST buttom after uploading the firmware into flash. If you guys do not like to do this please patch the /path/to/esp-idf/components/esptool_py/esptool/esptool.py :

diff --git a/esptool.py b/esptool.py
index 755f4cb..ff92c91 100755
--- a/esptool.py
+++ b/esptool.py
@@ -197,6 +197,12 @@ class ESPLoader(object):
               + '\xc0'
         self._port.write(buf)
 
+    def reset_to_app(self):
+        self._port.setDTR(False)
+        self._port.setRTS(True)
+        time.sleep(0.05)
+        self._port.setRTS(True)
+
     """ Calculate checksum of a blob, as it is defined by the ROM """
     @staticmethod
     def checksum(data, state=ESP_CHECKSUM_MAGIC):
@@ -1421,7 +1427,6 @@ def dump_mem(esp, args):
         sys.stdout.flush()
     print 'Done!'
 
-
 def write_flash(esp, args):
     """Write data to flash
     """
@@ -1503,6 +1508,7 @@ def write_flash(esp, args):
     if args.verify:
         print 'Verifying just-written flash...'
         verify_flash(esp, args, header_block)
+    esp.reset_to_app()
 
 
 def image_info(args):

Then Quantum can reset to run your app automatically after uploading the firmware into flash



4 Turtorial

  • ESP32 Smartconfig Support WeChat Airkiss by default
  • ESP32 JTAG Using a FT2232H breakout board to debug the kernel/core through JTAG/OpenOCD/GDB



5 Peripherals








6 ESP32 Arch

ESP32 block diagram:

Esp32-block-diagram.jpg

ESP32 use two LX6 core which ISA is xtensa.


We plan to write the document of the xtensa architecture like the MIPS or SPARC


The Xtensa instruction set is designed to meet the diverse requirements of dataplane processing. This 32-bit architecture features a compact 16- and 24-bit instruction set with modeless switching for maximum power efficiency and performance. The base instruction set has 80 RISC instructions and includes a 32-bit ALU, up to 64 general-purpose 32-bit registers, and six special-purpose registers. Using this instruction set, you can expect significant code size reductions that result in higher code density and better power dissipation.




7 Hardware

Noduino-quantum-v0.8-sch.png


Noduino-quantum-v0.8-layouut.png



8 Reference

For more information please refer to

























个人工具
名字空间

变换
操作
导航
工具箱