[HWCDC] Improve HW CDC Implementation (#5643)

This pull request contains a few fixes and improvements to the HWCDC implementation.
- Rework `HWCDC::write()` to accept unlimited data
- Add Semaphore to guard the TX Ring Buffer
- Add events support
- Remove unnecessary 1200bps touch for flashing over HWCDC
- Fix `HardwareSerial::setDebugOutput()` not resetting `putc` if the port is already selected, causing debug output to also show on HWCDC even when not selected.
This commit is contained in:
Me No Dev
2021-09-15 19:37:09 +03:00
committed by GitHub
parent 541cef9149
commit 078671d273
4 changed files with 144 additions and 25 deletions

View File

@ -57,13 +57,6 @@ esp32c3.menu.CDCOnBoot.default.build.cdc_on_boot=0
esp32c3.menu.CDCOnBoot.cdc=Enabled
esp32c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1
esp32c3.menu.UploadMode.default=UART0
esp32c3.menu.UploadMode.default.upload.use_1200bps_touch=false
esp32c3.menu.UploadMode.default.upload.wait_for_upload_port=false
esp32c3.menu.UploadMode.cdc=Internal USB
esp32c3.menu.UploadMode.cdc.upload.use_1200bps_touch=true
esp32c3.menu.UploadMode.cdc.upload.wait_for_upload_port=true
esp32c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)
esp32c3.menu.PartitionScheme.default.build.partitions=default
esp32c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS)