CH340 tabanlı usb-seri (ttl) adaptörü


      Günümüzde usb-seri port adaptörleri bir çok maksatla kullanılmakta bunlardan akla ilk gelenleri ttl düzeyinde seri portları olan router-modem, dosya-sunucu vb. aygıtların konsoluna ulaşmak ve bu aygıtları kurtarmak ve tabi ki popüler arduino. Tam arduino uno'ya göre daha ekonomik fiyatlarla elde edebileceğiniz arduino pro mini (arduino nano ile karıştırmayın lütfen) üzerinde usb-ttl adaptörü bulunmuyor. Arduino pro mini'yi programlamak için kullanabileceğiniz bir çok usb-seri adaptörü mevcut ancak bunların çoğunda (ftdi orjinal ve klonları hariç) dtr pini çıkarılmadığı için pro miniyi programlamak oldukça güç. İşte bu açığı gidermek için ftdi uyumlu başlığı olan ch340 temelli usb-seri adaptör tasarladım.

Eagle dosyaları








     Resme bakanlar FTDI başlığının yanısıra adaptörün yan tarafında 2. bir sıra pin bağlantılarnı farkedecekler işte bu pin bağlantıları hazır satın aldığınız usb ttl adaptörlerin çoğunda yine bulunmayan (ftdi ve klonları hariç) rts, cts, ri, dcd ve dsr sinyalleri. Çoğumuz bu pinlerin ne oldularını ve ne işe yaradığını dahi bilmiyoruz. Tarihsel olarak bunlar modem sinyalleri ve günümüzde pek kullanılmıyor. Fakat usb-ttl adaptörü ile daha eğlenceli (led sürmek, spi programlama vb. komplike) işleri yapmak isteyenler için önemli. Böylelikle bu pcb ile ch340'ın piyasada satılan usb-ttl adaptörlerinin gizlediği tüm gücünü ortaya çıkarıyoruz.

     Led'lerin yokluğu dikkatinizi çektiyse hatırlatayım ch340'ta ledleri sürmek için pin yok. Piyasadaki ch340 adaptörlerindeki rx ve tx ledleri direkt olarak rx ve tx pinlerine bağlı, bu da çok ideal değil.
     Bir diğer husus neden 3.3v ile çalışıyor ? Çünkü bu şekilde elinizdeki 16mhz 5v arduino pro mini'leri voltage divider / buffer vb. ekstra komponentler kullanmadan direkt 3.3v lojik elemanlara (spi flash, sd-card) bağlayabiliyorsunuz ki bu da tasarlayacağınız devreyi çok basitleştiriyor.
     CH340'ın bir takım eksikleri var ama bunları bir sonraki yazımızda (FT230X usb ttl adaptörü) konuşalım.

CH340 tabanlı usb-ttl adaptörü devre şeması
pcb

Dikkatle bakanlar eminim farketmiştir, pcb tasarımı üstteki basılı devreye göre biraz farklı; bunun nedeni ise esp8266, önceki halinde esp8266 programlamaya çalışırken muhtemelen esp'nin çektiği akıma bağlı usb tanımada problemler oluşuyordu bu nedenle pcb'deki düşük değerli bir kondansatörü 100mF tantal kondansatör (C6) ile değiştirdim. Hazır satılan esp-01 adaptörlerinin üstündeki 1000mF kondansatöre şaşmamalı.
1PCS Programmer Adapter ESP01 UART GPIO0 ESP-01 ESP8266 Usb ot

Yorumlar

Popüler Yayınlar