Jadi minggu lalu saya telah bekerja untuk mendapatkan pesan UART yang dikirim dari STM32F407 dan membacanya di laptop saya melalui kabel RS232 ugreen ke USB menggunakan rayap.
Saya telah menggunakan STMCube untuk menghasilkan kode dan menambahkannya dengan membaca instruksi yang relevan di bagian atas file "stm32f4xx_hal_uart.c" (dan menonton banyak video dan membaca online).
Saya telah memeriksa pesan yang dikirim pada osiloskop dan cocok dengan representasi ASCII-nya.
Misalnya saya mengirim 'Q' yaitu 0101 0001, saya menerima 'W' yaitu 0101 0111. Pembacaan pada ruang lingkup menunjukkan:
Output rayap untuk sinyal yang sama seperti yang ditampilkan pada osiloskop.
Saya telah mengkonfirmasi baud rate / parity / HWcontrol cocok dengan rayap dan dalam kode saya.
Untuk menerima karakter yang benar, saya telah mencoba menurunkan dan meningkatkan baud rate.
Saya sudah mencoba set karakter yang berbeda untuk mencoba menemukan pola yang menyebabkan karakter yang salah ditampilkan.
Selain itu saya telah mencoba berbagai terminal seperti pada Putty atau Teraterm.
1
simbol dengan latar belakang kuning di sebelah kiri jejak - itu tingkat 0V) dan kemudian pulsa di bawah 0V. Itu tidak akan benar untuk sinyal logika langsung dari STM32 dan, memang, itu tidak benar. Melihat di sudut kiri bawah, Anda telah mengatur saluran 1 ke kopling AC (itu ~
simbol yang Anda lihat di sana). Sinyal benar-benar idle tinggi dan berdenyut di sekitar 0V. Gunakan kopling DC untuk tampilan yang sehat dari sinyal itu.