LPT ve COM bağlantı noktaları, modern masaüstü bilgisayarlarda zaten nadir görülen bir durumdur ve dizüstü bilgisayarlar hakkında söylenecek hiçbir şey yoktur. USB yavaş ama emin adımlarla bunların yerini alarak geliştiriciler için hayatı daha zor, kullanıcılar için ise daha kolay hale getirdi. Ah, bir zamanlar bir mikro denetleyiciyi bilgisayarın COM bağlantı noktasına yalnızca max232 kullanarak ve sürücüler hakkında endişelenmeden bağlamak ne kadar güzeldi. Biraz daha fazlası ve bu yalnızca endüstriyel bilgisayarlarda mümkün olacaktır.

Genel eğilimin ardından çip üreticileri USB ile çalışmak için uygun fiyatlı çipler üretmeye başladı. Bu veri yolunu destekleyen USB-UART dönüştürücüler veya mikrodenetleyiciler gibi. Ne yazık ki, kütüphanelerin varlığına rağmen ikincisinde ustalaşmak hala zordur, bu nedenle deneyimsiz bir mühendisin ilk seçeneği kullanması daha kolaydır. Ve bu yazıda iki benzer mikro devreye bakacağız - FT232 ve CP2103 ve bunlara dayalı dönüştürücü devreler.

FT232RL'ye USB-UART dönüştürücü

FTDI'nin FT232RL mikro devresi, mühendislik çevrelerinde hak ettiği popülerliğe sahiptir. Kullanıcıya tam teşekküllü bir COM portu oluşturma fırsatı sunar, bireysel pinleri, sürücüleri kontrol etme işlevine, minimum sayıda ek elemanla basit bir bağlantı devresine ve lehimlemeye uygun bir mahfazaya sahiptir. Ayrıca bu mikro devrenin ek bir avantajı, USB cihazlarının bazı parametrelerini değiştirebileceğiniz EEPROM belleğini programlama yeteneğidir. Dezavantajlarından biri, atmega mikrokontrolcünün fiyatıyla oldukça karşılaştırılabilir olan ~120-150 ruble yüksek fiyatıdır.
FT232RL'de kendi USB-UART dönüştürücü versiyonumu yaptım. Tüm kullanıcı pinleri kartın kenarlarında PLS'ye yönlendirildi. Adaptörün devre tahtasına takılabilmesi için PLS arasındaki mesafeyi seçtim. Mikrodenetleyicinin UART'ını bağlamak için tasarlanan RXD ve TXD pinleri, bağlantı kolaylığı için ayrı bir PLS'ye yönlendirildi. Ayrıca FT232RL çipi tarafından bilgi iletme/alma işlemini göstermek için kart üzerine 2 adet LED ve çıkışların besleme voltajını seçmek için jumper'lar yerleştirdim. Beş veya üç volt olabilir. USB konektörünü mini versiyonda aldım, USB-B çok hantal. Tahta üç jumper ile tek katman halinde yerleştirildi.

FT232RL için USB-UART adaptör devresi


Alınan cihazın görünümü

Bu USB-UART adaptörünü monte ederseniz hemen bir USB bağlantı noktasına takmak için acele etmeyin. Çalışmadan önce güç kaynağının pozitif, toprak ile D+, D- terminalleri arasında kısa devre olmadığından emin olmanız gerekir. Bir test cihazı alın ve onları arayın. Kısa devre yoksa diğer terminalleri görsel olarak kontrol edin ve ancak o zaman adaptörü bağlayabilirsiniz.

İlk açtığınızda işletim sistemi sizden sürücüleri yüklemenizi isteyecektir. Üreticinin resmi web sitesinden - FT232 sürücüsü - indirilebilirler. Sürücüleri kurmak hiç de zor değil, bu yüzden bunun hakkında konuşmayacağız.
Sürücü yüklendiğinde sistemde ek bir COM bağlantı noktası görünecektir. Bu sözde sanal COM bağlantı noktasıdır, ancak normal bir bağlantı noktasıyla tamamen aynı şekilde kullanılabilir. Seri numarasını görmek için Windows kullanıyorsanız cihaz yöneticisine gitmeniz gerekir. Kontrol paneline gidin, sistem > cihaz yöneticisini seçin. "Bağlantı Noktaları (COM ve LPT)" bölümünde adaptörümüz bulunmalıdır - "USB Seri Bağlantı Noktası (COM10)". Başka bir bağlantı noktası numaranız olabilir.
Adaptörün çalıştığından emin olmak için herhangi bir terminal programını açmanız, uygun COM portunu seçmeniz, RXD ve TXD pinlerini bir jumper ile kapatmanız ve terminal üzerinden herhangi bir karakter dizisini göndermeniz gerekir. Adaptör çalışıyorsa terminal yankı şeklinde bir yanıt alacak ve karttaki LED'ler kısa süreliğine yanıp sönecektir.
Adaptörü mikrodenetleyiciye bağlamak için mikrodenetleyicinin RXD pinini adaptörün TXD pinine, mikrodenetleyicinin TXD pinini ise adaptörün RXD pinine bağlamanız gerekmektedir. Topraklarını da birbirine bağlamak gerekiyor.

CP2103'e USB UART adaptörü

Silicon Labs'ın CP2103 çipi esasen FT232'nin bir analogudur. Minimum sayıda harici bileşen içeren basit bir bağlantı devresine sahiptir, tüm sinyalleriyle tam teşekküllü bir COM bağlantı noktası düzenlemenize olanak tanır, ek kullanıcı pinleri ve bunların konfigürasyonu, sürücüleri, küçük boyutları ve daha uygun fiyatı için bir programa sahiptir. Dezavantajları arasında kasanın küçük olması ve evde kapatılmasının sakıncalı olması dikkat çekicidir. Belki de bu mikro devrenin DIY'ciler arasında popüler olmamasının ana nedeni budur.
Sırf eğlence olsun diye buna dayalı bir USB UART dönüştürücü yaptım. Tüm kullanıcı pinleri, kartın kenarları boyunca PLS'lere yönlendirildi. RXD ve TXD ayrı bir konnektöre çıktı. Burada çıkışlar için besleme voltajını seçmek için bir atlama teline ihtiyaç duyulmadı, çünkü bu voltaj 3,6 V'tan büyük olamaz. Mini bir USB konektörü seçtim, kart arka tarafta dört atlama teli ile tek katman halinde yerleştirildi. Veri iletimini/alımını gösterecek LED'ler yapmadım çünkü CP2103 mikro devresinde bu amaçlara yönelik pinler yok. Herhangi bir özel pini kullanabilirsiniz, ancak bunların özel bir yazılım kullanılarak yapılandırılması gerekir. Öğrendiğimde adaptörün zaten hazır olduğunu ve onu yeniden yapamayacak kadar tembel olduğumu fark ettim, özellikle de onu kapatma zahmetinden sonra. Ekrandan eklediğim tek şey bir güç LED'i.


CP2103 için USB-UART dönüştürücü devresi


Alınan cihazın görünümü

Bu adaptörü yaparken biraz uğraştım. Öncelikle CP2103'ün ayakları arasında çok küçük bir boşluk var, tahtayı dikkatli bir şekilde yapmanız gerekiyor. İkincisi lehimlemenin zor olmasıdır. Eğer saç kurutma makinem olmasaydı bunu kesinlikle yapmazdım.
Aşağıdaki gibi lehimledim. Tahtayı Rose alaşımıyla kalayladım. 100 derecede erir, bu da tahtanın ve çipin aşırı ısınmasını önler. Mikro devre yuvasını akı ile cömertçe nemlendirdim ve oraya yerleştirdim. Büyüteç ve cımbız kullanarak onu bir şekilde koltuğa yönlendirdim. Daha sonra çipi saç kurutma makinesi ile ~150-200 derece sıcaklıkta ısıtmaya başladım. Lehim eridiğinde mikro devre hareket etmeye başladı ve yüzey gerilimi kuvvetleri nedeniyle koltukta tam pozisyonunu aldı. Çok düzgün çıktı, ancak adaptör işe yaramadı. Çipi yeniden ısıttım ve hafifçe bastırıp cımbızla hareket ettirdim. Bundan sonra mikro devre, tahtanın izleriyle temas etti.
Adaptörü monte ettikten sonra güç kaynağı pozitif, toprak ile D+, D- pinleri arasında ve ardından diğer pinler arasında kısa devre olmadığından emin olmanız gerekir. Mikro devre çok küçük olduğu için pimlerin arasına sümük kolaylıkla sıkışabilir. Pinleri kontrol ettikten sonra USB UART adaptörünü bilgisayara bağlayabilirsiniz.
Önceki adaptörde olduğu gibi, ilk kez açtığınızda sistem sizden sürücüleri yüklemenizi isteyecektir. Bunları üreticinin resmi web sitesinden indirin - CP2103 sürücüsü.
Kurulu adaptör, cihaz yöneticisinin "Bağlantı Noktaları" bölümünde "Silicon Labs CP210X USB to UART Bridge (COM6)" olarak tanımlanır. Farklı bir bağlantı noktası numaranız olabilir.
Performans aynı şekilde kontrol ediliyor, tekrarlamayacağım.

Alternatif USB-UART adaptörleri

FT230XS ve CP2102 mikro devreleri kullanılarak alternatif adaptörler yapılabilir. Bunlar soyulmuş ve buna göre FT232 ve CP2103'ün daha ucuz analogları. Her iki mikro devrede de daha az sayıda kullanıcı pini bulunur ve pin çıkışı eşleşmez.

Dosyalar

Bağlantılar

FT232RL - FT Prog kurulumu için yazılım
Kişiselleştirme yazılımı CP2103 - Kişiselleştirme Yardımcı Programı Çok ağırdır!

(ArticleToC: etkin=evet)

Küçük boyutlu USB TTL PL 2303 adaptörü, çeşitli sensörlerden gelen bilgileri okumak için bir kartla birlikte kullanılan bir tür programlayıcıdır:

  • nem;
  • sıcaklık;
  • hareketler.

USB TTL PL2303 adaptörünün radyo kontrollü cihazlarda yaygın kullanımının nedeni budur. TTL USB adaptörü C++ dilinde programlanmıştır; USB TTL adaptörü, düşük ve orta hızlı bilgi işlem teknolojisinde kullanılan veri aktarımına yönelik bir "evrensel veriyoludur".

USB RS232 TTL adaptörüne bağlamak için dört telli bir kabloya ihtiyacınız vardır. Alım ve iletim (RX ve TX) sırasında diferansiyel bağlantı için bir bükümlü çift gereklidir ve geri kalanlar çevresel cihazlara (GND ve +5V) güç sağlamak için gereklidir.

Bu tür cihazların maksimum akımının 500mA'yı ve USB - 900mA'yı geçmemesi koşuluyla, kendi güç kaynakları olmadan bağlanırlar.

TTL mantığı için 0-5 V standart seviyeler olmasına rağmen, USB TTL adaptörüne gerek yoktur.

Ancak USB arayüzü/protokolünün oldukça karmaşık olması nedeniyle, buna dayalı bir cihaz oluşturmak, derin bilgi birikimi ve verileri işleyen mikroişlemciler gerektirir.

Yardımcı olmak için başka bir protokol kullanılabilir - günümüzde en yaygın olan UART (UART). Birçok protokol ailesi arasında en yaygın kullanılanı, genellikle COM bağlantı noktası olarak adlandırılan RS-232'dir. En eskisidir, ancak bugün hala geçerliliğini korumaktadır.

Çizgileri var:

  • iletim - TXD;
  • ana bilgisayar - RXD.

Veri aktarımı için kullanılıyorlarsa donanım kontrolüne gerek yoktur. Donanım için DTS ve RTS kullanılır.

Verici çıkışı alıcı girişine bağlanır ve bunun tersi de geçerlidir.

RS-232, elektriksel çalışma prensibi açısından standart (5 volt) mantıktan farklıdır. Bu versiyonda “0” sırasıyla +3 ila +12 V aralığında, biri ise -3 ila -12 aralığındadır.

Çözüm. UART USB TTL adaptörlerinin amacı karmaşık bir arayüzü "birleştirmek"tir

Basit ve “çalışan” bir UART protokolüne sahip, mikrodenetleyiciler tarafından desteklenen ve 0-5V mantık seviyeleriyle çalışan USB.

USB RS232 TTL Pl 2303 adaptörü, bilgisayarda sanal bir COM bağlantı noktası oluşturan bir PL2303 yongasına monte edilmiştir. Mikrodenetleyicili cihazların yanıp sönmesi için kullanılır.

Maliyeti 40,84 ruble.

Ukrayna'ya teslimat için ek 149,74 ruble ödemeniz gerekiyor.

PL2303 USB'den TTL Modül Adaptör Dönüştürücünün Ana Özellikleri:

  • voltaj tipi – düzenli;
  • güç kaynağı – 3,3/5 V;
  • amaç - bilgisayar için;
  • sıcaklık aralığı - -40 İLA +85;
  • Üretici: Diymore.

USB 3,3V 5,5V - TTL Mini Bağlantı Noktası Adaptörü

Gözden geçirmek

  • Boyut – 36x17,5 mm (UxG);
  • Pimler: GND, CTS, VCC, TXD, DTR, RXD, RXD;
  • Yonga seti FT232RL;
  • Destekler – 5V, 3,3V;
  • Adım – 2,54 mm.

100,24 rubleye mal olan mükemmel kalitede modüller. çevrimiçi mağaza tarafından sunulmaktadır https://ru.aliexpress.com/popular/ttl-adapter.html .

GPS adaptörünü kullanarak bir arabayı tespit etmek için USB TTL PL2303 HX RS232 dönüştürücü

Maliyeti 42,7 ruble.

Özellikler şunları içerir:

  • Statik elektrik birikimini önleyen antistatik ambalaj,
  • işi olumsuz etkileyen;
  • yüksek güvenilirlik, kararlılık;
  • WIN7 desteği.

Öğrenci üretim deneylerinde vb. 5 gram ağırlığında (ambalajsız) bir ürün kullanılıyor. Boyutu 50X15X7 mm'dir. USB PL2303 - RS232 modelinin dönüştürücüleri için

TL'nin (beş pinli erkek) ve PC'yi (USB standardı) bağlamak için bir çift arayüzü vardır.

FT232RL USB 3,3V 5,5V - TTL mini bağlantı noktası

Maliyeti 106,43 ruble. Bu, mikrodenetleyicilerin USB yeteneklerini artırmak için ucuz bir seçenektir. Koruma için, aşırı akım yüklemelerine karşı koruma sağlayan 500ma'lık kendi kendini sıfırlayan bir sigorta.

Özellikler

  • kırmızı renk;
  • güç kaynağı USB-5 veya 3,3 V;
  • ağırlık – 4 gram;
  • boyutlar - 43x17 mm.

Küçük boyutu, gadget'ın boyutunun kritik olduğu geliştirmelerde kullanılmasını mümkün kılar.

PL2303 çipinde USB'den TTL'ye UART'a

Arduino programlama için kullanılır.

Max3232 yongasındaki dönüştürücü, RS-232 bağlantı noktası sinyallerini TTL teknolojilerini temel alan dijital devrelerde kullanıma uygun sinyallere dönüştürür.

Maliyeti 76,11 ruble.

CP2102 USB 2.0'dan TTL UART 6Pin'e

Bir CP2102 kartı, dahili USB2.0 tam hızlı, kuvars osilatörü, UART veri yolundan oluşur ve harici bir USB modem gerektirmeden sinyalleri destekler.

  • 4 gram ağırlığında;
  • Şunlar için LED göstergeler: güç, iletim ve alma;
  • Çalışma durumu – 3,3 ve 5 V.

Maliyeti 82,3 ruble.

Çoğu blog cihazı İnternet sitesi birlikte çalışmak UART. Ve bu doğaldır - UART çok basit ve iddiasız bir protokoldür. Hem mikrodenetleyici tarafından hem de PC tarafından çalışmak kolaydır. Ancak UART kullanmanın bir dezavantajı var. Mikrodenetleyicilerin büyük çoğunluğunda UART bulunur ancak PC'lerde durum biraz daha kötüdür. UART arayüzü COM bağlantı noktasına özgüdür (RS232 sürümünde), ancak bilgisayar çevre birimlerine yönelik artan gereksinimler nedeniyle COM bağlantı noktası eskimeye başlıyor. Bunun nedeni düşük hız, genişleyememesi vb.'dir. Bir bağlantı noktası sınıfı olarak dizüstü bilgisayarlardan uzun zamandır kaybolmuştur. Sıra masaüstü bilgisayarlarda...
Ama o kadar da kötü değil. Bir çıkış yolu var! Birçok üretici USB-UART dönüştürücü yongaları (köprüler) geliştirmiş ve üretmiştir. Çalışmalarının prensibi şudur. Sistemde sanal bir COM bağlantı noktası oluşturan özel bir sürücü bilgisayara yüklenir. PC programları için bu bağlantı noktası normal COM bağlantı noktasından farklı değildir - değişikliği "fark etmezler". Bu sanal bağlantı noktasına gönderilen tüm mesajlar USB protokol mesajlarına dönüştürülür. USB bağlantı noktasına bağlı bir dönüştürücü çip bu mesajları alır ve UART sinyalleri üretir. Popüler ve uygun fiyatlı mikro devreler arasında FT232 ve PL-2303 bulunur (ve ayrıca OTI006858 ve CP2102 de vardır).

Şimdi sorunun konusuna biraz daha yaklaşalım.
Böylece bir USB'den UART'a dönüştürücüye ihtiyacımız olduğunu fark ettik. Bunu birkaç yolla alabilirsiniz:
1 Gerekli mikro devreyi satın alın ve cihazı kendiniz lehimleyin. Herhangi bir cihazı monte ediyorsanız, dönüştürücünün cihaza entegre olması uygun olacaktır. Google'da ararsanız, bu tür dönüştürücülerin birçok devresini bulacaksınız - kartın aşındırılması ve dönüştürücünün montajı sorun olmayacaktır.
2 Hazır bir dönüştürücü satın alın. Kötü bir seçenek de değil. Satışta bu tür birçok cihaz var. Farklı form faktörlerinde, farklı fiyatlarla - her zevke uygun olanı seçin!
3 Başka bir seçenek daha var - bir alternatif. Katılıyorum - her zaman kabul edilebilir olmayabilir ama yine de... Dönüştürücüyü başka bir cihazdan "ödünç alabilirsiniz".

Bu makalede, USB'den UART'a dönüştürücü olarak bir cep telefonu kablosunu kullanmayı öneriyorum ( Veri kablosu). Neden cep telefonu için bir kordon? Şimdi açıklayacağım.
Bir süre önce, UART protokolü cep telefonu ile bilgisayar arasında iletişim kurmak için yaygın olarak kullanılıyordu. Yaygın kullanımının nedenleri açık; üreticilerin bilgisayarla ucuz ve yaygın bir iletişim kanalına ihtiyacı vardı. COM bağlantı noktası veya USB olabilir. O zamanlar USB ile çalışmak pahalıydı ve karlı değildi - COM kazandı. Cep telefonları "dışarıda" bir UART sinyali verir ve Veri Kablosu kabloları bunu bir COM veya USB bağlantı noktasına dönüştürür. Günümüzde elektronik çok yol kat etti ve cep telefonlarının mikroişlemcilerinde USB zorunlu hale geldi. Modern telefonların kablolarının yerini normal USB uzatma kabloları alıyor.
Ve şimdi en ilginç kısma geliyoruz. Yeni telefonlar ortaya çıkıyor, eski dönüştürücü kablolar kimse için işe yaramaz hale geliyor, bu da satıcıların ne pahasına olursa olsun onlardan kurtulmaya çalıştığı anlamına geliyor. Bu eski bayat bağcıkların fiyatları gerçekten çok saçma. Ben de o kadar paraya bu dantelli kutulara rastladım ve dayanamadım ve iki tane aldım. Şimdi sana söyleyeceğim böyle bir kablodan tam teşekküllü bir USB UART dönüştürücü yapmak için yapılması gerekenler.

Öncelikle bu danteli satın almanız gerekiyor.

Tüm bağcıklar uymuyor. Öncelikle dönüştürücüsü olan bağcıkların isimlerini Google'da aratmanız gerekiyor. Görsel olarak ortasında kutu bulunan bir kablo aramanız gerekir.

İşte ambalaj kutusu ve içindekiler.

Kit, kablonun kendisini ve bir sürücü diskini içerir. Diski hemen atabilirsiniz - orada öyle bir çöp koleksiyonu var ki, ihtiyacınız olan bir şeyi bulmak sorunlu. Dantelin kendisini al.

Şimdi Tahtaya daha yakından bakalım dönüştürücü



İnceleme sonucunda bir mikro devre buluyoruz Üretken PL-2303HX.

Vakaların %90'ında bu özel mikro devreyi bu tür bağcıklarda göreceğiz. Nedeni ise ucuzluğu. Üstelik bu çip, mağazadan satın alacağınız çoğu USB-UART dönüştürücüde de bulunacaktır. FT232'yi çok nadiren göreceksiniz, çünkü daha pahalıdır ve ucuz Çin bağcıklarında mevcut değildir (markalı bir kordonla karşılaşmadığınız sürece). Eğer bir FT232RL ile karşılaşırsanız kendinizi şanslı sayın, böyle bir kabloyu programcıyla dalga geçmek için kullanabilirsiniz (FT232RL beatbang modunda çalışabilir).

Not! Tahtada bir Prolific klonu bulabilirsiniz. Mesela bu ikincisinde aldığım bağcıklardandı.

Anakart aynı, tasarım aynı, ancak kristal açıkça Üretken değil (görünüşüne bakılırsa daha ucuz bir klon). Kuvarsın yokluğu endişe verici, ancak kart çalışıyor (dahili bir RC osilatöründen çalıştığından şüpheleniyorum - bu pek iyi değil). Her durumda, bu tür mikro devreler Prolific'e tamamen benzer (en azından bacaklar açısından).

Şimdi Prolific web sitesine gidin ve çipin veri sayfasını indirin
- USB-UART Dönüştürücü Üretken

Veri sayfasında pin düzenini buluyoruz ve ihtiyacımız olan UART sinyallerinin hangi bacaklarda olduğuna bakıyoruz:
— Verici Teksas – 1;
- Alıcı RXD-5.

İlgili bacakları çip üzerinde buluyoruz.

Daha sonra, geleneksel bir test cihazı kullanarak telleri lehimleyebileceğimiz en yakın temas yüzeylerini buluyoruz. Bacaklara lehim yapamazsınız - onlar küçüktür. Ayrıca "araziye" de ihtiyacımız var - burada her şey basit, büyük çokgenler olacak. Kabloları ilgili pedlere lehimleyin.
Kablonun diğer ucuna uygun bir konnektör takıyoruz.

Bazı basit manipülasyonlarla (açıklaması Habr'a daha uygun) hem önyükleyici hem de arşiv hafıza kartına yüklendi ve cihaz açıldı. Ancak yükleme sonrasında siyah bir ekran beni bekliyordu ve “turuncu” üzerindeki yeşil LED yanıyordu.

Sorun değil, diye düşündüm. "Turuncu" üzerine bir UART bağlandı, ona bir terminal kullanarak bağlanacağım ve ne olduğunu göreceğim. Gerekli parçalar ve teller satın alınarak buna benzer bir kablo lehimlendi (spoiler altındaki resim)

Kablonun Noob versiyonu


Konuyu bilen herkes böyle bir telgraf çekmekle nerede hata yaptığımı hemen anlayacaktır ve bunu okuyanların yarısından fazlası da var. “Portakalımın” terminale tükürdüğünü gören krakozyabrları gördükten sonra bir şeylerin ters gittiğinden şüphelendim. Beni aşağıda açıklanan eylemleri yapmaya iten şey, aptalca hatamın nedeninin anlaşılmasıydı.

1. UART ve RS232 arasındaki fark nedir?

Fark seviyelerdedir. Orange Pi ve diğer benzer cihazlarda uygulanan seri arayüz, TTL mantığına dayanır; yani sıfır bit, sıfır voltaj seviyesine karşılık gelir ve bir bit, +5 V'a karşılık gelir. RS232, 15 V'a kadar daha yüksek bir voltaj seviyesi kullanır, ve biri - 15 V'ye ve sıfır +15 V'ye karşılık gelir. Kanalın gürültü bağışıklığını arttırmak için, 3 V'un altındaki herhangi bir voltaj seviyesi modulo sıfır olarak algılanır. Bir dizi mantıksal değere dayalı veri aktarım protokolü, hem UART hem de RS232 için kesinlikle aynıdır. Bütün bunlar aşağıdaki bayt aktarım şemasında gösterilmektedir

Bunu nasıl unutabilirim? Elektrikli lokomotif araştırma enstitüsünde çalışırken bunları biliyordum. Ve sonra bir nedenden dolayı aptalca bir şey söyledi. Genel olarak, sinyal çeviricili bir tür seviye dönüştürücüye ihtiyaç duyulduğu ortaya çıktı. Seçim, tüm ekipmanı ev bilgisayarımın ana kartındaki COM bağlantı noktasına bağlamaktan yana oldu. Tabii ki UART'a bakabilirsiniz<->USB, çünkü eski seri arayüz giderek geçerliliğini kaybediyor. Ancak daha basit çözümlere olan eğilimim galip geldi ve bu cihaz satın alınmaya aday olarak ortaya çıktı.

Aynı "Ali" de 464 rubleye satıldı. Prensip olarak bu, şehrimdeki mağazalarda veya radyo pazarında bulunabilirdi, ancak ellerimle bir şeyler yapma isteği çoktan uyanmıştı. Bu yüzden bir arayüz kartı satın alma fikrini reddettim ve kendim yapmayı denemeye karar verdim.

Havyayla genel olarak iyi arkadaş olduğumu söylemeliyim. Okulda ve üniversitede, ilk bilgisayarımı almadan önce, her türlü faydalı ve o kadar da saçma olmayan şeyleri lehimlemek ana hobimdi. Ama ben bir köyde yaşıyordum, doksanlı yıllardaydı. Fazla para yoktu; bileşenler, ortaya çıkan radyo çöplerinin parçalanmasıyla elde ediliyordu. Bilginin kaynağı bölge kütüphanesindeki kitaplardı - o zamanlar herkesin interneti yoktu. Zengin enstrümanlar da yoktu. Folyo PCB ve demir klorür efsanevi bir mucizeydi. Genel olarak zordu.

Bilgisayar aldıktan sonra tüm tutkum ona yöneldi. Ve küçük amplifikatörleri ve alıcıları lehimleme becerisi rafa kaldırıldı. Yani ben bir "çaydanlık"ım. Bu nedenle aşağıda yazacaklarımın çoğu konusunda hoşgörülü olmanızı rica ediyorum. Ve bu makale genel olarak benim gibi aptallar içindir.

2. Cihaz devresinin seçimi ve bilgisayarla modellenmesi

İnternette böyle bir cihazın şemasını bulmak çok kolay. Gerçekten bu tür pek çok plan var. Seçim bu karara düştü

Tüm cihazın kalbi, "şarj pompası" prensibiyle çalışan bir seviye dönüştürücü olan MAX232 tipi bir çiptir. Harici kapasitörler C4 ve C5'in dönüşümlü olarak şarj edilmesiyle voltaj 5 V'tan artırılır. Sinyal RS232'ye gönderildiği anda, bu kapasitörler seri olarak bağlanır ve içlerinde biriken voltaj toplanır. Ters iletim sırasında mikro devre bölücü görevi görür. Sinyal iletiminin her iki yönünde de ters çevrilmiştir.

Diyot VD1 "kusursuz" rolünü oynar - yanlış polaritede voltaj uygulandığında güç devresini kapatır.

Cihazı üretmeye başlamadan önce her şeyin nasıl çalışacağını görmeye karar verdim ve gelecekteki cihazı Proteus ortamında modelleyerek başladım. Devreyi test etmek için sanal bir stand kuruldu

Diyotun devrenin çalışması üzerindeki etkisi ilgimi çektiği için yapmak istediğim ilk şey güç devreleri dahil her şeyi simüle etmekti. Proteus'ta varsayılan olarak mikro devrelerdeki güç pinleri gizlenir ve istenilen seviye ve zeminin artısına çekilir. Engellemeyi kaldırmak için öncelikle gizli pinleri göstermeniz gerekir. Bunu yapmak için Şablon -> Tasarım Renklerini Ayarla menüsüne gidin ve Gizli pinleri göster kutusunu işaretleyin.

Burada Çizim gövdesi ve Çizim Adı onay kutularını işaretliyoruz. Bundan sonra, pinleri etiketleyen metin de dahil olmak üzere çipin tamamını seçin ve menüye sağ tıklayın ve Cihaz Yap seçeneğini seçin. Yeni cihaz için bir isim seçip kaydetmemiz istenecek. İşte bu kadar, bundan sonra güç devreleri simülasyon sürecine açıkça dahil edilecek.

Daha sonra UART aracılığıyla anlamlı bir şey ileteceğiz, örneğin ondalık sayı sisteminde 65 kodlu ASCII'de kodlanmış “A” harfini veya ikili sistemde 01000001b dizisini ileteceğiz. Ayrıca aktarımı başlatmak için “0” düzeyinde bir başlangıç ​​biti göndermek, aktarımı tamamlamak için ise “1” düzeyinde bir veya iki durdurma biti göndermek gerekir. Böylece UART üzerinden iletilen bir çerçevenin zamanlama diyagramı şu şekilde görünecektir:

Böyle bir sinyal üretmek için Dijital Model Oluşturucu (DPATTERN) adı verilen ve aşağıdaki ayarlara sahip bir kaynak kullanıyoruz:

104 mikrosaniyelik bir darbe genişliği 9600 baudluk bir hıza karşılık gelir. Dalga biçimi, "L"nin düşük seviye ve "F"nin yüksek seviye anlamına geldiği bir dizi modeliyle belirtilir. Buna göre stringimiz “FLFLLLLLFLF” gibi görünecek. RS232'de alınan verileri sanal bir terminal kullanarak şu şekilde ayarlayarak kontrol edeceğiz:

Eşlik bitini kullanmayacağız, tek durak bitini kullanacağız. Ayrıca terminale verilen sinyalin RS232 protokolüne karşılık gelen ters çevrildiğini de söyleyelim. Devre simülasyonunu başlatarak sinyallerin bir osilogramını alırız ve sanal terminale çıktı veririz.

Kanal A, COM bağlantı noktasına sağlanan çıkış sinyalini taşır. Kanal B, TTL giriş sinyalidir. Değerli “A” harfi terminalde görüntülenir. Dolayısıyla önerilen planın tamamen işlevsel olduğuna inanıyoruz. Teoride.

3. Bileşenlerin seçimi ve satın alınması

Radyo bileşenlerini alabileceğiniz, yaşadığım yere en yakın mağazalardan iki tanesi dikkati hak ediyor: Budenovsky Prospekt'teki “Radyo Bileşenleri” mağazası (burası Rostov-on-Don şehri) ve “1000 Radyo” Rio alışveriş merkezinin karşısındaki Nagibina Bulvarı'ndaki Components mağazası. İkincisi, oldukça eski ve görünüşte tembelce güncellenmiş (ve Joomla'da yapılmış...) olmasına rağmen bir web sitesine sahip olmasıyla ayırt edilir. Fiyat listesini inceledikten sonra satın almam gerekenlerin bir listesini buldum.

Tecrübesizliğimden dolayı SMD bileşenlerinden özenle kaçındığımı hemen söyleyeyim. Bu yüzden MAX232CPE açık delikli versiyonunu seçtim. Aynı elektrolitleri ve diyotu aldım. Ancak, yalnızca MAX232CWE yongasının mevcut olduğu ortaya çıktı - aynı şey, yalnızca... SMD! Bir an düşündükten sonra satıcının teklifini kabul ettim - bir ara başlamalıyız... 15 V'luk kapasitörler yoktu ama aynı kapasitede ve aynı boyutlarda 100 V'luk kapasitörler vardı. Tamam, bu da sorun değil. Erkek DB-9 konnektörü yerine bana dişi konnektör teklif edildi. Böylece aşağıdaki liste elde edildi

Ferrik klorür, tsapon verniği ve tektolit elbette tam olarak kullanılmadı. Ayrıca satın alınan aleti bu listeye dahil etmedim: basit bir lehimleme istasyonu (çünkü ondan önce sadece bakır uçlu 40 watt'lık bir havyam vardı), yan kesiciler ve küçük pense, PCB'yi kesmek için metal makas, sıvı reçine-alkol akısı LTI-120 kuyusu vb. Genel olarak bu destan bana yaklaşık 3.000 rubleye mal oldu.

Genel olarak bileşenler satın alındı ​​​​ve eve getirildi. Gerekli sayıda kontağı barındırmak için 40 pinli PLS blokları kesildi. Kesin bir bağlantı sağlamak için kontaklardan biri kaldırılır. Çıkarılan pime karşılık gelen soket bloğundaki delik polietilen ile kapatılmıştır.

4. Cihazın devre tahtası üzerine monte edilmesi ve çalışmasının kontrol edilmesi

Prensip olarak bu kadar basit bir cihaz için bu gerekli değildir. Ama ben bir acemiyim, bu yüzden devreyi yapmadan önce devreyi gerçek çalışırken test etmeye karar verdim.

En zor şey mikro devreydi. Bunu devre tahtasına lehimlemek için on iki bacağı bakır iletkenlere lehimlemekle uğraşmak zorunda kaldım. On iki bacaklı bir canavar örümcek ortaya çıktı

O anda iki şeyin farkına vardım: Sonuçta bir lehimleme istasyonu satın almış olmam iyi oldu. Kötü olan şey şu ki, bu küçük şeyle çok fazla uğraşmak zorunda kalacağım. Genel olarak bileşenler bir "ekmek tahtasına" lehimlendi, devre "turuncu" bir tahtayla birleştirildi. +5 V güç “turuncu”dan alınır - çift sıralı 40 pinli pin bloğundaki 2. pin

Cihaza bağlanmak için Linux için de mevcut olan macun terminalini kullandık ve minicom'un aksine renkli çıkışı var ve klavyeden terminale karakter girmek için ek konfigürasyon gerektirmiyor.

Genel olarak kart çalışmaya başladı - önyükleme günlüğünün satırları terminal ekranından geçiyordu: önce u-boot'tan, sonra linux çekirdeğinden

Söylemeye gerek yok, ne kadar mutlu oldum: birincisi, şema doğru çalışıyor ve ikincisi, "turuncu" üzerindeki Linux doğru kuruluyor, çok kullanıcılı modda normal çalışıyor

Bu nedenle, çalışmayan HDMI konektörü ve Ethernet arayüzünün bulunmaması, dağıtımın kendi yapılandırmasından kaynaklanmaktadır. Bu sorunlar elbette çözülecektir ve biz burada bunları konuşmuyoruz. Bu nedenle programın bir sonraki noktasına geçelim

5. PCB düzeni

Altium Designer'da yaptım. Bileşenler satın alındıktan sonra pano yerleşimini yapmak daha iyidir. Belki benim durumumda olduğu gibi Altium için ek bileşen kütüphaneleri kurmanız gerekecektir. Bileşenlerin boyutları ve her birinin kapladığı alanın düzeni, mevcut gerçek parçalara uygun olmalıdır. Burada sinir bozucu bir hata yaptım, ancak aşağıda daha fazlası var.

Hemen söyleyeceğim - otomatik kablolamayı kullanmayın. Belki bu yapılandırılabilir, ancak otomatik kablolama, kapasitörlerin bacakları arasında, aralarında 2 mm'lik bir mesafeyle yolu yaklaşık çeyrek milimetre genişliğinde yapan bir yol sürüklemeye çalıştı ki bu benim için çok dikti. bir "kukla" olarak. Ve sezgilerim bu tür şeylerden kaçınmanın tavsiye edilebilir olduğunu ileri sürdü. Bu nedenle, yönlendirme kurallarında yolların genişliğini 0,5 mm olarak ayarlayarak (otomatik yönlendirmenin sonuçlarına göre) manuel yönlendirme kullandım (Tasarım -> Kurallar -> Yönlendirme -> Genişlik)

Ayrıca Altium varsayılan olarak kartın iki katmanlı olduğunu varsayar. Onu tek taraflı bir kartı yönlendirmeye zorlamak için, kablolama kurallarında kablolamayı tek bir katmanda (örneğin, Üst Katman) belirtmelisiniz.

Devre, devre düzenleyicisine yazıldı

Bu durumda, mikro devrenin serbest lehimlenmemiş girişlerinin (bacak 8 ve 10) zemine çekilmesi gerektiği gerçeğinin dikkate alınması gerekir, aksi takdirde Altium devreyi kart editörüne aktarmak için derlemeyecektir.

Sonuç olarak, programı bağımsız olarak kurcalayarak ve Alexey Sabunin'den dersler hedefe ulaşıldı ve ödeme yapıldı

Deliklere monte edilen tüm bileşenler PCB'nin temiz tarafında bulunur ve SMD tasarımı nedeniyle mikro devre rayların yanında bulunur. Devre düzenini yazdırmak için cihaz projesinde Çıkış İş Dosyası adı verilen bir dosya oluşturmanız gerekir.

Aşağıdaki gibi yapılandırılmıştır. Konfigürasyon seçenekleri listesinde Documentation Output seçeneğini seçin ve Add New Documentation Output seçeneğine tıklayın, çıkan menüden PCB Prints'i ve cihazımız ile ilgili board projesini seçin.

Karşınıza çıkan dokümantasyon öğesini, kart tasarımını bakıra aktarmak için kullanacağımız transliterasyon teknolojisi (LUT) için yeniden adlandırıyoruz, LUT diyelim. LUT'a sağ tıklayın ve içerik menüsünden Yapılandır'ı seçin. Yazdırılacak katmanların ayarlarında yalnızca iki öğe bırakın: Üst Katman ve Çok Katmanlı ve ekran görüntüsünde gösterildiği gibi kutuları işaretleyin.

Ayna onay kutusu özellikle bir resmin baskıya yansıtılması için gereklidir. Bu önemlidir, aksi takdirde tasarımı bakıra aktarırken izlerimizin ayna görüntüsüne sahip olursunuz, ancak buna ihtiyacımız yok. Ayrıca Sayfa Yapısı'na da bakmalısınız.

Kağıt boyutunu seçmek ve ölçek faktörüne (Ölçek) dikkat etmek. İlk basıldığında bir nedenden dolayı 1,36'ya eşit olduğu ortaya çıktı, ancak bire eşit olması gerekiyor

Şimdi Yazdır'a tıklayın. Kendi yazıcım yok, bu yüzden Foxit Reader'ı kullanarak PDF'ye yazdırdım ve ardından ortaya çıkan dosyayı bir flash sürücüye en yakın sharashka'ya götürdüm ve burada çizimi parlak fotoğraf kağıdına yazdırdım. Sonunda böyle çıktı

Tahtanın boyutu 62 x 39 mm idi; metal makas kullanılarak bir PCB parçası bu boyuta kesildi. Daha önce, textolite'i demir testeresi ile kesmiştim ve çoğu zaman (veya daha doğrusu her zaman) berbat olduğu ortaya çıkıyordu. Makasla, iletken katmana zarar vermeden veya kalıntı bırakmadan düzgün bir şekilde çıkar.

6. Baskılı devre kartı imalatı

Basitliği ve erişilebilirliği nedeniyle LUT (lazer ütüleme teknolojisi) yöntemi seçildi. Eylem için bir rehber olarak görev yaptı. Teknolojiyi ihlal etmemeye çalıştım: Bakırın üzerinden sıfır noktayla geçtim, asetonla olmasa da yağdan arındırdım, çünkü nereden satın alacağımı bulamadım, ancak Lerua'dan satın alınan beyaz ispirto bazlı evrensel bir yağ çözücü ile Merlin. PCB ve desenden yapılmış sandviçi dikkatlice ve çaba harcayarak maksimum sıcaklıkta ütüledim. Ya bir yerde bir hata yaptığım için ya da iş parçasının soğumasına izin vermediğim için ya da sadece "sharashka" da yazıcıda toner tasarrufu yapıyorlardı, genel olarak pek iyi sonuçlanmadı

Ancak akıllıca davranarak Edding 404 kalıcı kalem stokladım ve bu kalemle sevgili karımın yardımıyla (kirpikleri astarlama ve tırnaklara desen çizme konusundaki ileri becerisi sayesinde) tüm yolları özetledim.

Daha sonra, 6-sulu ferrik klorür çözeltisi, 300 ml su başına yaklaşık 180 gram oranında seyreltildi (musluktan su alındı, sıcak) ve tahta, yenmek üzere dağlama küvetine atıldı. Eşini zehirlemeden tahtayı aşındırmak için gün batımında balkonda operasyon gerçekleştirildi

"Khlonyak" hayal kırıklığına uğratmadı, genellikle düşük kaliteli ürünler sattıklarına dair söylentiler var. Gravür 13 dakika sürdü, son bakır adacıkları da gözümüzün önünde kayboluyordu. Önemli olan, küvetin üzerine cımbızla tahtayı periyodik olarak tekmelemeyi ve süreci izlemeyi unutmamaktır. Fazla bakır kaybolur kaybolmaz tahtayı acilen çıkarıp bol su ile duruluyoruz.

Yıkadıktan, sildikten ve kuruttuktan sonra hakikat anı gelir. Koruyucu kaplama çıkarılmalıdır. Bunu beyaz ruhla yapmaya çalıştım.

Ama işler kötü gidiyordu. Daha sonra eşim oje çıkarıcıyı önerdi - bu mucize iksir kaplamayı anında çıkardı (Kadınlarımızın kullandığı reaktifler beni hâlâ dehşete düşürüyor. Güzellik korkunç bir güçtür!)

İşaretçi de hayal kırıklığına uğratmadı - tüm yollar hayatta kaldı

Koruyucu kaplamayı temizledikten sonra delik açmaya başlayabilirsiniz. Ve burada talihsiz bir hata yaptım - 0,5 mm'lik bir matkabım yoktu ve konuyu yarına ertelemek yerine, gerekli matkabı satın aldım, işe yarayacağını düşünerek acele ettim ve bir milimetrelik bir matkap aldım. Sonuç olarak, pek çok temas pedine zarar verdim, neyse ki çok kötü değil ve geri dönülemez bir şekilde değil. Ama yine de asla acele etmeyin. Mezuniyet öncesi stajımı yaptığım Münih Üniversitesi Mekatronik Bölümü laboratuvarından arkadaşım Mark'ın dediği gibi, "Dmitry, her iş için doğru aleti al." Ve binlerce kez haklıydı.

7. Tahtanın kalaylanması ve bileşenlerin lehimlenmesi

Bileşenlerin lehimlendiği yerler ince, parlak bir lehim tabakasıyla kaplanmalıdır. Başarılı çalışmanın temel koşulu budur. Parçaların tamamını kalaylamadım. Birincisi, onları çarpıtmaktan korkuyordum ve ikincisi, tahtayı yine de vernikle kaplayacaktım. Bu yüzden sadece lehim bağlantılarını kalayladım. Bunu yapmak için, onlara bir fırça ile reçine-alkol akısı LTI-120 uygulayın ve ucundan küçük bir damla lehimin sarktığı 250-300 dereceye ısıtılmış bir havya kullanın, tahtanın istenen noktaları boyunca çizin . Akı nedeniyle yüzey geriliminin artması nedeniyle lehim tam olarak temas pedleri üzerine yayılır.

Bundan sonra "ekmek tahtası" söküldü, kablolar mikro devreden çıkarıldı ve önce lehimlendi. Ellerinizi veya cımbızınızı kullanarak, mikro devreyi pin çıkışına göre dikkatlice yerine yerleştirin, böylece her bacak kendi alanını kaplar. Daha sonra bacak sıralarını akı ile yağlarız. Kısa ve hassas hareketler kullanarak havya ucuna lehim sürmeyi unutmadan sırayla tüm bacaklara dokunuyoruz (ama çok fazla değil, küçük bir damla yeterli). Her şey doğru yapılırsa, bacaklar "sümük" veya komşular arasında köprü kurmadan çok hızlı ve doğru bir şekilde yastığa lehimlenir. Çipi lehimlemem bir dakikadan az sürdü ve bunu ilk defa yapıyorum. Bu başarıyı yapmam için bana ilham verdi bu video, bunun için yazarına çok minnettarım. Her şeyin aslında o kadar da korkutucu olmadığı ortaya çıktı.

Geri kalan detayları da benzer şekilde çözdüm. Buradaki en önemli şey, parçaların uçlarını dikkatlice gerekli uzunlukta kesmektir - yolun üzerinde bir milimetreden fazla çıkıntı bırakmadım ve gerekirse bunları doğru ve dikkatli bir şekilde büktüm. Hiçbir yere acele etmemek ve her şeyi düşünceli bir şekilde yapmak önemlidir, son derece önemlidir. Sonunda ne olduysa o oldu

"Sümükten" kurtulamadım, ancak ilk defa oldukça tolere edilebilir çıktı, yine de muhtemelen eleştirileceğim.

8. Devreleri kontrol etmek ve başka bir sinir bozucu hata

Lehimlemeden sonra tüm akıyı alkolle yıkarız, bir multimetre alırız ve tüm devreleri iletkenliklerini ve devre şemasına uygunluğunu kontrol etmek için çağırırız. Ve burada kötü şey fark edilmeden ortaya çıktı. COM bağlantı noktası konektörünün ayna şeklinde kablolandığı ortaya çıktı! "Earth" beşinci yerine ilk ayağa, Rx ise ikinci yerine dördüncü ayağa oturdu. Ve hala nasıl olduğunu anlamıyorum çünkü Altium'da kablolama yaparken her şey doğruydu. Bu benim için bir sır olarak kalıyor. Hiçbir gizem yok; aslında "dişi" bir konnektöre sahip olduğumdan, Altium'da devreyi oluştururken hala "erkek" konnektörü kullandım. Dolayısıyla ortaya çıkan ayna kablolaması. Neyse ki, cihazı bilgisayarın COM bağlantı noktasına bağlamak için tasarlanan kabloyu uygun şekilde bağlayarak bu sorunu çözdüm. Ancak bu hata nedeniyle karttaki COM'un çok "özel" olduğu ortaya çıktı.

Aksi takdirde kurulumun doğru olduğu ortaya çıktı ve bağlantı kablolarını lehimleyip işyerini düzenleyerek yeni kartı "turuncuya" ve bilgisayara bağladım

İndirme günlüğü satırları yine terminal penceresinden geçiyordu. Mutluydum!

9. Güzellik getirmek

Kontakları oksidasyondan korumak ve cihaza "endüstriyel" bir görünüm kazandırmak için tahta yeşil kapon verniği ile boyandı. Kurulumdan önce kalıcı bir kalemle yapılan tüm işaretler aynı vernikle yıkandı. Pekala... İşte bitmiş ürünün bir fotoğrafı ve bir dizi kablo

Artık yazılımı “turuncu” için daha da hassaslaştırmaya başlayabiliriz. Artık kör ve dilsiz olmayacağım, sistemi bir seri terminal aracılığıyla kurabileceğim.

Çözüm

İlginçti. Bu benim için ilginç çünkü ilk defa oluyor. Bir bilgisayarda tasarlanan ve baskılı devre kartı üzerine kendi elleriyle monte edilen ilk cihaz. Ve eğer birisi ironik bir şekilde gülümserse, kendisinin de bunu ilk kez yaptığını hatırlamasına izin verin... Etiketler ekle