1. USB to UART는 어디에 사용하는가?
- MCU (마이크로컨트롤러, 요새는 프로그래밍이 가능한 SoC를 포함하기도 한다)를 활용하는 임베디드 개발자는 MCU에 동작 펌웨어를 빌드하는 과정이 필요하기 마련이다.
- 또한 간단한 시리얼 통신으로 현재 MCU 작동 상태를 모니터링하는 디버깅 수단이 필요할 수 도 있겠다.
- PC와 MCU를 연결하여 이러한 과정을 수행할 수 있는데, 그 수단중 하나가 USB (PC 인터페이스)와 UART (MCU 인터페이스) 이다.
- 즉 위에 상기된 과정을 수행하기위한 USB to UART 회로 (USB신호를 UART 신호로 변경하거나, 혹은 그 반대의 경우)가 사용된다.
2. USB와 연결할 타겟 시스템 MCU의 데이터시트를 확인하자
- 펌웨어 다운로드 모드로 진입하는 조건과 UART의 사양은 당연하게도 연결할 MCU의 데이터시트를 확인해야한다
- 데이터 시트를 확인하고 조건을 알게 되었으면 USB UART 회로를 설계할 수 있다.
3. ESP32 USB <-> UART 회로 설계 (EasyEDA 사용)
- CP2102 칩을 선택하여 설계하였다.
- R3와 R2 22옴 저항기의 경우 반사파를 억제하기 위한 수단의 저항기이다. (DP, DN 신호)
- VBUS는 USB 인터페이스로 부터 얻게되는 5V 인데. CP2102 데이터시트를 참고해보면 USB 연결을 검출하는 용도 정도로 생각된다.
- USB의 VBUS, DP, DN 신호의 ESD(정전기)을 막기 위한 TVS 다이오드를 추가(TVS4~TVS6) 하였다.
- CP2102의 데이터시트를 확인해보면 해당 IC의 전체적인 다이어그램을 확인해 볼수 있었다.
- USB와 UART쪽의 아키텍처를 확인해볼 수 있다.
- CP2102의 데이터시트를 살펴보면 IC에 자체적인 3V3 레귤레이터가 있는 것으로 확인된다.
- 데이터시트 상에는 레귤레이터의 사용에 따라 3가지의 옵션을 제공하고 있는데 본인이 설계할 회로에 적합한 옵션을 사용하면 될 것 같다.
- 여기에서는 USB 전원은 CP2102 칩의 인식용으로 사용하고, IC자체의 레귤레이터를 사용하지 않는 방향으로 전원공급을 정하였다.
- 자체 레귤레이터를 사용하지 않는 이유는 간단한데, 최대 공급 전류량이 100mA로 너무 부족하다. 저전력 회로와 연결되면 모를까 MCU와 주변회로를 동작시키기에는 부족한 공급 전류량이다.
- 실제적으로 회로도를 바탕으로 PCB에 설계된 모습이다.
'Embedded System > 전자회로 (PCB)' 카테고리의 다른 글
[모듈 제작] 전류 CT 센서 인터페이스 모듈 - 설계 및 주문 완료 (0) | 2024.07.27 |
---|---|
[회로설계] ESP32 데이터수집장치 보드 제작 (0) | 2024.07.10 |
OPAMP(연산증폭기) 기본 회로 (0) | 2024.03.24 |
교류 전기 해석 (전력 계측 시스템을 위하여) (1) | 2023.10.25 |
[OPAMP] 연산증폭기 특성 분석 (0) | 2023.10.13 |