последовательный порт через Rx и Tx хотят работать

мое последовательное соединение печатает чепуху, но это систематически, так что это не просто случайно, как вы видите на изображении 1, любая помощь будет оценена

другая информация:

первое изображение последовательного монитора COM6 — это мое собственное последовательное соединение, номер изображения. 2 — это последовательный монитор COM4, который уже использует встроенный последовательный порт для USB. последнее изображение показывает, как я сделал собственное последовательное соединение

2 черных кабеля обеспечивают около 4 вольт, я знаю, что они не нужны, потому что USB уже обеспечивает 5 вольт и заземление

и да, обычно USB на последнем изображении был бы подключен к моему компьютеру

, 👍0

Обсуждение

Это переходник с USB на RS232? RS232 != UART. Кроме того, есть риск убить ваше целевое устройство из-за неправильного применения напряжения., @Majenko


2 ответа


Лучший ответ:

0

Вы используете адаптер USB-RS-232. Это неправильно.

RS-232 (электрически) отличается от UART. Логика не только инвертирована, но и использует сигнализацию ±10 В NRZ.

Это означает, что когда UART ожидает сигнала 3,3 В HIGH, адаптер отправляет ему сигнал -10 В. Когда он ожидает сигнала 0 В LOW, ему отправляется сигнал +10 В.

Так что да, это тарабарщина - он получает противоположное тому, что ожидает увидеть, - и избыточное и отрицательное напряжение рискует повредить ваш ESP. К счастью, задействованные токи обычно настолько слабы, что не сразу повреждают его, но при длительном использовании вы, вероятно, сможете попрощаться со своим ESP.

Немедленно отсоедините этот ключ и приобретите подходящий адаптер USB-UART.

,

Или реализуйте адаптер RS232-UART с помощью MAX232., @chrisl

@chrisl MAX232, вероятно, это то, что там внутри, так что вы бы удвоили его и создали сценарий «двойного негатива»;) Довольно расточительно на компоненты и вещи. Лучше всего делать все правильно. Но да, вы *могли* сделать это, если вы достаточно психотичны..., @Majenko


0

Просто проверьте код, запустив его на всех разных скоростях передачи данных (в последовательном мониторе). Обычно он должен работать на скорости, указанной в коде.

,