FTDI FT2232H (USB <-> UART) tingkat baud?

8

Adakah yang menggunakan salah satu chip FT2232H dari FTDI?

Secara khusus, bagaimana Anda mengetahui tingkat baud yang diizinkan?

Lembar data agak kabur, dan saya harus memilih sesuatu di kisaran 1-3 MBaud tetapi perlu tahu apa opsi saya.

Jason S
sumber

Jawaban:

7

Saya punya masalah ini juga. FTDI menganggapnya lebih sebagai masalah driver daripada masalah chip. Buka area Catatan Aplikasi FTDI dan lihat appnote PDF "AN_120 Aliasing VCP Baud Rates" .

todbot
sumber
Catatan aplikasi memberi tahu Anda apa yang dapat Anda pilih, maka Anda harus memastikan mikrokontroler Anda dapat melakukan baud rate yang sama dengan kesalahan kurang dari 10%.
Kortuk
10%? 10% kesalahan terlalu tinggi untuk komunikasi UART yang baik ... biasanya sekitar +/- 3%.
Jason S
Jika ada jam yang sempurna di satu sisi, Anda mungkin memiliki kesalahan hingga 10% di sisi lain (menggunakan data 8 bit, 1 start, 1 stop) tanpa kesalahan. Anda menambahkan paritas, Anda perlu mengurangi kesalahan maksimum itu. Namun, biasanya kedua belah pihak tidak sempurna, dan Anda harus mengurangi overhead itu karena keduanya memilikinya.
Kortuk
@Kortuk: Jika kesalahan diketahui berada pada arah tertentu, seseorang dapat mengatur toleransi ujung-jauh misalnya cepat 0-10%, tetapi jika seseorang melakukan itu komunikasi mungkin gagal jika ujung jauh lambat 0,01%. Banyak desain UART memiliki rentang kesalahan yang hampir simetris, meskipun beberapa yang berukuran 4x terlalu asimetris; Saya belum pernah melihat yang memungkinkan pengguna untuk menyesuaikan waktu mulai-bit untuk mendukung remote yang lebih cepat atau lebih lambat.
supercat
@supercat, saya pikir MSP430 yang biasa kita gunakan, kita bisa menggunakan "modulasi" yang memberikan kesalahan tinggi pada bit pertama tetapi meningkat atas bit.
Kortuk
2

Yang juga patut diperhatikan adalah bahwa driver Linux saat ini mendukung kecepatan (hanya?) Hingga 460800 baud.

Brad Hein
sumber
2
Tidak sepenuhnya benar, meskipun itu kesalahan yang mudah dibuat. Pemilihan kurs BPS di Linux harus kompatibel dengan POSIX, dan ada banyak beban emosional dari Tujuh Puluh. Misalnya, dulu Anda hanya bisa memilih hingga 38400. Kemudian, Anda bisa membalik sedikit dan 57600 dan 115200 juga akan tersedia. Ini semua di sisi OS, bukan sisi hardware. Pengemudi modern masih harus mendukung Bxxxxbendera yang dimuliakan , tetapi mereka juga dapat melakukan tarif khusus. Lihatlah get_ftdi_divisor()(baris 1077) pada driver. Anda dapat menetapkan tarif BPS khusus hingga 12.000.000 pada FT232H.
Alexios