0
0
Fork 0

Update circuit, fix issue #29 (#30)

* Update circuit, Fix issue #29

* Update README_CN, Translate from README.
This commit is contained in:
Lao·Zhu 2022-02-25 23:59:30 +08:00 committed by GitHub
parent 40dfbb7fcd
commit 2257c4317a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 1290 additions and 507 deletions

View File

@ -2,7 +2,6 @@
![image](https://user-images.githubusercontent.com/17078589/107857220-05ecef00-6e68-11eb-9fa0-506b32052dba.png)
[![Build Status](https://github.com/windowsair/wireless-esp8266-dap/workflows/build/badge.svg?branch=master)](https://github.com/windowsair/wireless-esp8266-dap/actions?query=branch%3Amaster) master 
[![Build Status](https://github.com/windowsair/wireless-esp8266-dap/workflows/build/badge.svg?branch=develop)](https://github.com/windowsair/wireless-esp8266-dap/actions?query=branch%3Adevelop) develop
@ -22,15 +21,11 @@
- [x] SWD(SW-DP)
- [x] JTAG(JTAG-DP)
- [x] SWJ-DP
2. 支持的USB通信协议
- [x] USB-HID
- [x] WCID & WinUSB (Default)
- [x] WCID & WinUSB (默认)
3. 支持的调试跟踪器:
- [ ] UART Serial Wire Output(SWO)
- [ ] SWO Streaming Trace
- [ ] UART TCP桥
4. 其它
- [x] 通过SPI接口加速的SWD协议
- [x] ...
@ -42,14 +37,16 @@
![WIFI](https://user-images.githubusercontent.com/17078589/118365659-517e7880-b5d0-11eb-9a5b-afe43348c2ba.png)
ESP8266具有一个内置的mDNS服务仅ipv4. 你可以通过 `dap.local` 操作设备。
![mDNS](https://user-images.githubusercontent.com/17078589/149659052-7b29533f-9660-4811-8125-f8f50490d762.png)
### 调试接口连接
| SWD接口 | ESP8266引脚 |
|----------------|--------|
| SWCLK | GPIO14 |
| SWDIO | GPIO13 |
| LED\_CONNECTED | GPIO2 |
| LED\_RUNNING | GPIO15 |
| TVCC | 3V3 |
| GND | GND |
@ -57,16 +54,24 @@
| JTAG接口 | ESP8266引脚 |
| :----------------: | :---------: |
| TCK | GPIO14 |
| TMS | GPIO13 |
| TDI | GPIO4 |
| TDO | GPIO16 |
| nTRST \(optional\) | GPIO0\* |
| nRESET | GPIO5 |
| LED\_CONNECTED | GPIO2 |
| LED\_RUNNING | GPIO15 |
| TVCC | 3V3 |
| GND | GND |
| TCK | GPIO14 |
| TMS | GPIO13 |
| TDI | GPIO4 |
| TDO | GPIO16 |
| nTRST \(optional\) | GPIO0\* |
| nRESET | GPIO5 |
| TVCC | 3V3 |
| GND | GND |
--------------
| 其它 | ESP8266引脚 |
|:------------------:|:-------------:|
| LED\_WIFI\_STATUS | GPIO15 |
| Tx | GPIO2 |
| Rx | GPIO3 (U0RXD) |
> Rx 和 Tx 被用于UART TCP桥默然不开启此功能。
----
@ -77,8 +82,6 @@
***除此之外,你也可以像我们一开始给出的那张图片直接用杜邦线连接开发板,这就不需要额外的电路。***
> 如果你想修改接口的引脚或者是LED的引脚请小心地参考指示在[DAP_config.h](components/DAP/config/DAP_config.h)文件中修改。
此外,你还可以从贡献者那里获得一个完整的硬件参考电路,详见 [circuit](circuit)文件夹。
------
@ -147,7 +150,9 @@
------
## 速度性能
## 文档
### 速度性能
单独使用ESP8266通用IO时的最大翻转速率只有大概2MHz。当你选择最大时钟时我们需要采取以下操作
@ -157,13 +162,84 @@
> 请注意这个项目最重要的速度制约因素仍然是TCP连接速度。
### 对于OpenOCD用户
这个项目最初是为在Keil上运行而设计的但现在你也可以在OpenOCD上通过它来烧录程序。
注意如果你想使用40MHz的SPI加速器你需要在连接目标设备后指定速度否则会在开始时失败。
```bash
# 在使用flash指令前需要先运行
> adapter speed 10000
> halt
> flash write_image [erase] [unlock] filename [offset] [type]
```
> Keil的操作时序与OpenOCD的有些不同。例如OpenOCD在读取 "IDCODE "寄存器之前缺少SWD线复位序列。
### 系统 OTA
当这个项目被更新时,你可以通过无线方式更新固件。
请访问以下网站了解OTA操作。[在线OTA](http://corsacota.surge.sh/?address=dap.local:3241)
对于大多数ESP8266设备你不需要关心闪存的大小。然而闪存大小设置不当可能会导致OTA失败。在这种情况下请用`idf.py menuconfig`改变闪存大小,或者修改`sdkconfig`
```
# 选择一个flash大小
CONFIG_ESPTOOLPY_FLASHSIZE_1MB=y
CONFIG_ESPTOOLPY_FLASHSIZE_2MB=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
# 然后设置flash大小
CONFIG_ESPTOOLPY_FLASHSIZE="2MB"
```
如果闪存大小为2MBsdkconfig文件会看起来像这样
```
CONFIG_ESPTOOLPY_FLASHSIZE_2MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="2MB"
```
对于闪存大小为1MB的设备如ESP8285必须做以下修改。
```
CONFIG_PARTITION_TABLE_FILENAME="partitions_two_ota.1MB.csv"
CONFIG_ESPTOOLPY_FLASHSIZE_1MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="1MB"
CONFIG_ESP8266_BOOT_COPY_APP=y
```
可以用esptool.py工具检查你使用的ESP8266的闪存大小
```bash
esptool.py -p (PORT) flash_id
```
### Uart TCP桥
该功能在TCP和Uart之间提供了一个桥梁
```
发送数据 -> TCP -> Uart TX -> 外部设备
接收数据 <- TCP <- Uart Rx <- 外部设备
```
![uart_tcp_bridge](https://user-images.githubusercontent.com/17078589/150290065-05173965-8849-4452-ab7e-ec7649f46620.jpg)
当TCP连接建立后网桥将尝试解决首次发送的文本。当文本是一个有效的波特率时bridge 将切换到它。例如发送ASCII文本`115200`会将波特率切换为115200。
由于性能原因,该功能默认不启用。你可以修改 [wifi_configuration.h](main/wifi_configuration.h) 来打开它。
----
## 开发
1. 检查其他分支以了解最新的开发进展。
2. 使用WinUSB模式默认启用
在[dap_configuration.h](main/dap_configuration.h)修改 `USE_WINUSB` 宏。
请查看其他分支以了解最新的开发进展。我们欢迎任何形式的贡献,包括但不限于新功能、关于电路的想法和文档。
目前TCP传输速度还需要进一步提高如果你有什么想法欢迎在下面提出
如果你有什么想法,欢迎在下面提出:
- [新的Issues](https://github.com/windowsair/wireless-esp8266-dap/issues)
- [新的pull request](https://github.com/windowsair/wireless-esp8266-dap/pulls)

File diff suppressed because it is too large Load Diff

View File

@ -6,8 +6,8 @@
(title_block
(title "ESP8266 Wireless DAP")
(date "2022-02-02")
(rev "Version 1.2.1")
(date "2022-02-19")
(rev "Version 1.2.2")
)
(lib_symbols
@ -2012,11 +2012,11 @@
(effects (font (size 1.27 1.27)) (justify right bottom))
(uuid 839365b5-dbc5-4901-868b-70edf493feca)
)
(label "SD_DATA2" (at 91.44 172.72 180)
(label "SD_DATA2" (at 91.44 170.18 180)
(effects (font (size 1.27 1.27)) (justify right bottom))
(uuid 85569aa3-c35e-471a-98d4-e61f8f6968ed)
)
(label "SD_DATA3" (at 91.44 170.18 180)
(label "SD_DATA3" (at 91.44 172.72 180)
(effects (font (size 1.27 1.27)) (justify right bottom))
(uuid a123bec8-d93d-40d6-b7c7-3f2d7bd27f9e)
)

View File

@ -1,3 +0,0 @@
(sym_lib_table
(lib (name "ESP8266")(type "KiCad")(uri "${KIPRJMOD}/ESP8266.kicad_sym")(options "")(descr ""))
)