USB - UART Bridge RS232 Port Adaptörü, TIA/EIA232 standardına uygun çevre birimlerini bağlamak için tasarlanmış yüksek hızlı bir USB cihazıdır.

Adaptör, Silicon Labs CP2102 denetleyicisine dayanmaktadır ve bir USB veri yolu ile donatılmış sistemlerde kullanılmak üzere tasarlanmıştır. Çevre birimleri, standart bir DB9 konektörü kullanılarak bağlanır.

  • USB 2.0 spesifikasyonu desteği;
  • RS232 arabirim sinyallerinin tam seti;
  • RS232 sinyal genliği ±5.5V'den kötü değil;
  • USB veri yolu ile çalışır.

Adaptörün takılması ve bağlanması

  1. CP2102 adaptörünü kurmadan ve bağlamadan önce, harici cihazların enerjisinin kesildiğinden ve toprak döngüsüne bağlı olduğundan emin olun.
  2. Ardından, bağlanın harici cihaz DB9 konektörüne.
  3. Bağdaştırıcıyı boş bir USB konektörüne takın, konektörde durana kadar temas yüzeylerinin uygunluğunu görsel olarak kontrol edin.
  4. giriş-çıkış cihazına besleme gerilimi, sistem çalışmaya hazırdır.

CP2102 adaptörünü kurmadan önce, USB spesifikasyonunun çalışırken takılabilir olduğunu, ancak seri G/Ç çevre birimleri için geçerli olmadığını unutmayın. Adaptörle çalışırken yalnızca enerjisi kesilmiş çevre birimleri bağlanmalıdır! Bu kurallara uyulmaması, bilgisayar sistemi bileşenlerinin çıkışına neden olabilir!

Sürücüyü Windows işletim sistemlerine göre yükleme

CP2102 adaptörünü bir işletim ortamında USB bağlantı noktasına bağladıktan sonra Windows sistemleri 2K/XP şu şekilde algılanır:

Şimdi CP210x USB'yi UART sürücüsüne indirmeniz gerekiyor. Kuruluma başlayalım:

Ön kurulum sırasında kullanıcı, aygıt sürücülerinin depolanacağı dizini belirleyebilir. CP210x:


İşletim sistemi, aygıt sürücülerinin konumu hakkında bilgi isterse, kullanıcının bunlara giden yolu belirtmesi gerekecektir. CP2102 adaptörünün yazılım modeli, her biri kendi başına tanımlanan bir kompozit cihaz ve bir USB - UART köprüsünden oluşur. enf-dosya.

Bu nedenle, otomatik bulma işlemi sırasında işletim sistemi her iki dosyayı da sırayla ister.

Bağdaştırıcı sürücüleri, aksi kullanıcının kendisi tarafından belirtilmediği sürece, kurulum öncesi işlem sırasında belirtilen dizinden kurulum için sisteme sunulmalıdır. Başlangıçta işletim sistemi, bileşik aygıt (USB Kompozit Aygıt) için sürücüleri yükler:

Eğer Şimdiki versiyonu USB Kompozit Aygıt sürücüleri bir dijital sertifika tarafından doğrulanmadı Microsoft, kullanıcı bu konuda aşağıdaki mesajla uyarılır:

Kompozit cihaz için gerekli dosyaların yolu, kurulum öncesi koşullara göre seçilir:

Bir sonraki kurulum adımı, USB'den UART'a köprü sürücüleridir. Önceki adımda olduğu gibi, otomatik kurulum önerilir.

USB - UART Bridge Controller sürücülerinin mevcut sürümü Microsoft'tan bir dijital sertifika ile doğrulanmazsa, kullanıcı bu konuda bir mesajla uyarılır. Gerekli dosyaların yolu, kurulum öncesi koşullara göre seçilir:

Kurulumdan sonra, CP210x USB Kompozit Aygıt evrensel seri veri yolu denetleyicisi ve CP210x USB - UART Köprü Denetleyicisi kullanılarak uygulanan COM3 seri bağlantı noktası sistem özelliklerinde görünür ve aygıt listesi aşağıdaki formu alır:

Her şey, sürücü yüklendi!

Modern bilgisayarların COM bağlantı noktalarını hızla kaybettiği bir ortamda, USB dönüştürücü<->COM, bir radyo korsanı için çok faydalı ve gerekli bir şeydir. Ama aynı zamanda USB dönüştürücü<->UART da faydalı ve gerekli bir şeydir. Doğal olarak, ikisine de sahip olmak istedim ve başka bir şey ve tüm bunlar çok pahalı değil.

Bu gizmoslardan herhangi birini satın almak veya monte etmek bugün bir sorun değil. Ağda çok sayıda şema, mağazalarda çok sayıda cihaz var. Ancak, ortaya çıktığı gibi, bunları yalnızca birbirinden ayrı olarak satın alabilirsiniz! Ve bu, düşündüğüm tüm USB dönüştürücülerin<->COM'lar sinyal seviyelerini önce TTL'ye ve ancak daha sonra RS-232'ye dönüştürür. Elbette bu çözümlerin hiçbiri evrensellik açısından bana uymuyordu. Neden ayrı bir USB dönüştürücü satın alayım?<->UART, zaten USB'ye dahil edilmişse<->COM? Böyle düşünerek fazladan param olmadığına karar verdim ve en iyi çözüm kendi evrensel dönüştürücünüzü yapacak.

Temel olarak, iyi bilinen çip cp2102 alındı. Birincisi, tam teşekküllü bir COM portunu (sadece Rx, Tx değil tüm hatlar) taklit etmenize izin verir, ikincisi, minimum bir gövde kitine sahiptir ve minimum boyutta bir tahta yapmanıza izin verir ve üçüncüsü, ortaya çıktı. en olmak cazip fiyat. Dönüştürücü devresi bu mikruha için veri sayfasından pratikte hiçbir değişiklik yapılmadan alınmıştır, gerekirse USB'den UART'a UART'tan RS-232'ye ayırabilmek için sadece yarıya indirdim.

USB'den UART'a Dönüştürücü Şeması:

UART - RS232 Dönüştürücü Şeması:

Sonuç olarak, iki (başlangıçta planlandığı gibi) bile değil, bir arada üç cihaza kadar çıktı. Geliştirilen cihazın her iki parçası da bağımsız USB dönüştürücüler olarak kullanılabilir.<->UART ve UART<->RS232 (ikincisinin harici güç gerektirmesi üzücü). İki parçayı birbirine bağlayarak bir USB dönüştürücü elde ederiz.<->com. Dönüştürücünün parçalarını eşleştirmek için, doğru şekilde bağlandığında çift taraflı kartlara çok başarılı bir şekilde lehimlenen IDC-14F ve BH-14 konektörlerini kullandım (aşağıda fotoğrafta tam olarak nasıl olduğunu görebilirsiniz).

Bitmiş cihazın fotoğrafı:

Tek zor an, bir QFN paketinde mevcut olduğu için cp2102 yongasını lehimlemektir. Daha önce mikro devre üzerindeki lehimli kontakları ve tahtadaki pedleri ışınlamış olan bir saç kurutma makinesi ile lehimlemeniz gerekir. Bu durumda, herhangi bir özel pahalı akı kullanmak gerekli değildir. Sıradan çam reçinesi yeterlidir, sadece alkolde çözülmesi ve ardından bir şırınga veya özel bir fırça ile bölgelere uygulanması gerekir. Alkol yoksa, reçineyi votkada çözebilirsiniz, ancak bu durumda, çözeltiyi uyguladıktan sonra, su alkolden çok daha kötü buharlaştığı için biraz beklemeniz gerekecektir.

USB konektörü, karta esnek bir tel ile özel olarak bağlanmıştır ve sert lehimli değildir. Pratikte görüldüğü gibi, bu tür dönüştürücüler genellikle çeşitli dönüştürücüleri bir bilgisayara (COM'dan HART'a, COM'dan RS485'e vb.) dönüştürücüye bağlı tüm ekipmanın ağırlığı.

Ayrı olarak, kapasitör seçimi konusu üzerinde durmak istiyorum. Veri sayfası, 4,7 uF ve 1 uF güç kaynağı için kapasitörlerin derecelerini gösterir. Genellikle, kartta yer kazanmak için veya başka bir nedenle, bunun yerine daha küçük kapasitörler koyarlar. Yine, uygulamanın gösterdiği gibi, bu, dönüştürücüye bağlı cihazların güç kaynağında kararsızlığa neden olabilir ( harici güç kaynağı ve COM bağlantı noktasından güç almalıdır) ve sonuç olarak çalışmazlıklarına.

UART arayüzü hemen hemen tüm mikrodenetleyiciler tarafından desteklenir ve her türlü MK cihazını geliştirirken ve hata ayıklarken çok uygundur: bellenimi önyükleyici aracılığıyla yükleyin ve cihazın hata ayıklama günlüklerini bilgisayarda görüntüleyin. Ancak, ne yazık ki, modern bilgisayarlarda, COM bağlantı noktası, USB veri yolu tarafından değiştirilerek ve hatta dizüstü bilgisayarlarda daha fazla mevcut arabirim sayısından yavaş yavaş kaybolmaktadır. Bu, bir USB -> COM adaptörü üretme konusunda kafamı karıştırdı. Genellikle, bu tür adaptörler, popüler FT232 serisi mikro devre temelinde yapılır, ancak birkaç dezavantajı vardır: 1) mikro devrenin maliyeti ~ 150 ruble 2) mikroskobik boyutlar ve ardından baskılı lehimleme ve üretme zorlukları devre kartı.

FT232'ye alternatif olarak, iki kat daha ucuza mal olan ve iki kat daha küçük boyutları olan ve hatta QFN-28 kasası (5mm x 5mm) olan daha az bilinen bir CP2102 keşfedildi. Bu mikro devre, herhangi bir harici kablo bağlantısı gerektirmeyen (güç veri yolundaki bir çift filtre kapasitörü sayılmaz) tamamen bitmiş bir USB-UART dönüştürücüdür ve aşağıdaki özelliklere sahiptir:

  • USB 2.0 spesifikasyonu uyumlu, tam hız (12 Mbps)
  • Üretici kimliği, ürün kimliği, seri numarası, cihaz açıklaması vb. depolamak için entegre 1024 bayt EEPROM.
  • 300 bps'den 1 Mbits'e kadar sanal RS232 hızı
  • 5, 6, 7 ve 8 baytlık veri aktarım biçimleri için destek; 1, 1.5 ve 2 stop biti, çeşitli parite
  • alıcı arabelleği - 576 bayt, verici arabelleği - 640 bayt
  • dahili referans frekans kaynakları, dahili 3.3V regülatör
  • Windows Vista/XP/Server 2003/2000, Linux için Sürücüler, Mac OS X/ OS-9

şema

Adaptör şeması veri sayfasından alınmıştır, isteğe bağlı çevre birimleri atılmış ve gücün varlığını belirtmek için bir LED eklenmiştir.

DB9 fişi, bilgisayarın COM bağlantı noktasının çıkışına benzer şekilde kablolanmıştır, işte kablolaması (sinyallerin yönü bilgisayara göre gösterilir).

Adaptör tasarlamanın ana sorunu - baskılı devre kartı ve QFN-28'in montajı sorunu, mikro devreyi baskılı devre kartına baş aşağı yapıştırarak ve uçlarını 0,1 mm PEV tel ile lehimleyerek çözüldü. Biraz kasvetli, ama minyatür. İşte sonuç:


Ve DB-9 durumunda, her şey şöyle görünür:

sürücüler

Şimdi, kurulumu dikkatlice kontrol ettikten sonra test edebilirsiniz. Cihaz sistem tarafından algılandı ancak Windows sürücüleri bulamadı. onları indirdim. Bundan sonra, sistemimde yeni bir bağlantı noktası belirdi - Windows'ta COM5 ve Linux'ta /dev/ttyUSB0. Şimdi, RXD'yi TXD'ye bağlayarak (adaptör fişinin 2 ve 3 numaralı pinleri) ve herhangi bir COM terminalini çalıştırarak, baytların gönderildiğinden ve alındığından emin olabilirsiniz .. ayrıca, ikincisi ilkiyle çakışır ..

Önemli bir nokta: Adaptörün çıkışındaki sinyal seviyeleri TTL'dir ve standart RS232 arayüzünün sinyal seviyelerinden farklıdır, bu nedenle COM portu için sıradan cihazlar doğrudan adaptöre bağlanamaz, ayrıca bu adaptöre zarar verebilir . Standart COM cihazlarını bağlamak için MAX232 ailesi çipine bir seviye dönüştürücü eklemeniz gerekir.

Aşağıda, Eagle'da bir projeyi ve ayrıca bir lazer ütü için bir baskılı devre kartının bitmiş bir çizimini indirebilirsiniz (çift taraflı bir baskılı devre kartını ütülemek için, aydınger kağıdına bir çizim yazdırmanızı tavsiye ederim).

Küçük bir cihaz hakkında “AVR910 Programcısı” konusunun devamında, bir sonraki “cihazımı” dikkatinize sunmak istiyorum.
Bir zamanlar, mikrodenetleyicide ustalaşmaya başladığımda, onun yardımıyla bir bilgisayarla veri alışverişi yapma amacım vardı.

ATmega16 denetleyicisinde bir UART (RS-232) veya daha basit bir ifadeyle, yalnızca 5 Volt seviyeli bir COM bağlantı noktası bulunur.
Bir bilgisayarla "azaltmak" için bu seviyeleri 10 volta çıkarmanız gerekir.
Bu işlem esas olarak MAX232 çipi tarafından yapılır.

Bilgisayardaki (donanım) COM bağlantı noktası kullanıldığında kullanılabilir.
Ama USB portunu kullanmak istedim. Mağazaya gittim ve basit bir veri kablosu satın aldım. cep telefonu.
Düşündüğüm gibi, o zaman tüm kablolar aynı ve içindeki pinler RX ve TX.
Yanılmışım... Karşılaştığım kablolar, tam bir COM bağlantı noktası sağlamayan bir PL2303 yongasında yapılmış.
Satın alınan üç kablodan, dedikleri gibi "bir patlama ile" çalışan bir tane aldım.
Bir mikroçipe dayanmaktadır CP-2102. Bu USB-RS232 adaptör.

İnternette bu çipe dayalı bir adaptör şeması bulduktan sonra cihazı monte etmeye başladım. Bu çip, verilerinize göre programlanabilir (Cihazınızı bir bilgisayara bağlamak istiyorsanız, Üretici, seri numarası, cihaz adı). Hepsi eklerde.

Şeması aşırı derecede basittir.
Ayrıca, kontrolör, seviye geçişleri (5-10 Volt) olmadan hemen bağlanabilir.
Yürütme, her zamanki gibi, süper minyatür.

Hariç tutulan parça. Dergimiz okuyuculardan gelen bağışlarla var. Bu makalenin tam sürümü yalnızca mevcuttur

Dosyalar

Sürücü Örneği
🕗 13/12/08 ⚖️ 3,23 Mb ⇣ 435 Merhaba okuyucu!

--
Dikkatiniz için teşekkürler!

Kendi sürücülerinizi yapmak için program
🕗 13/12/08 ⚖️ 238,88 Kb ⇣ 416 Merhaba okuyucu! Benim adım Igor, 45 yaşındayım, Sibiryalıyım ve hevesli bir amatör elektronik mühendisiyim. 2006'dan beri bu harika siteyi buldum, oluşturdum ve bakımını yaptım.
10 yıldan fazla bir süredir dergimiz sadece benim pahasına var.

İyi! Bedava bitti. Dosyalar ve faydalı makaleler istiyorsanız - bana yardım edin!

--
Dikkatiniz için teşekkürler!
Igor Kotov, Datagor dergisinin genel yayın yönetmeni

Şema ve mühür
🕗 13/12/08 ⚖️ 41.22 Kb ⇣ 461

Çeşitli arduino ve aduino benzeri olmayan denetleyicileri programlayın, TTL mantığı ile seri arabirime sahip her şeyden bir bilgisayardaki bilgileri alın.
Arduino Pro MIni, Gboard/Iboard ve ev yapımı controller ile projelerimde kullanıyorum.

Diğer benzer cihazlardan farkı nedir?

  1. Kart üzerinde USB bulunmayan kontrolörlerde RESET girişine direkt olarak bağlanabilen ek bir DTR pini. Bundan sonra programlama yaparken RESET düğmesine basmak gerekli değildir. Benim için bu, denetleyici zanaatımın bağırsaklarında gizlendiğinde ve düğmeye erişim çok zor olduğunda çok uygundur.
  2. Yerel sürücülerle sorunları olan sahte FTDI'nin aksine, üretici desteği, orijinal sürücüler ve yazılımlarla uyumluluk
  3. Kart üzerindeki ek pimler (kontaklar için delikler), örneğin USB'nin güç tasarrufu moduna alınmasına izin verir.
  4. Ticari projelerde oldukça ilginç olan VID, PID ve kartın tanındığı metni değiştirmek, kendi sürücünüzü gerekli parametrelerle birleştirmek için ilginç bir fırsat. Bunun hakkında daha fazla konuşacağım.

Nereden sipariş verilir?

özellikleri

  • Silicon Labs'den CP2102 çipi
  • UART 300bps - 1Mbps üzerinden veri değişim hızı
  • Tampon 576 bayt oku, 640 bayt yaz
  • USB 2.0 12 Mbps'yi destekleyin
  • SUSPENDED USB modu desteği
  • Dahili güç regülatörü 3.3V 100mA
  • 1024 bayt konfigürasyon parametreleri ile EEPROM
  • Desteklenen İşletim Sistemi Windows 8/7/Vista/Server 2003/XP/2000, Windows CE, Mac OS-X/OS-9, Linux, Android
  • Projeleriniz için kart ve sürücü ayarlarını özelleştirme yeteneği
  • Kart boyutları 26,5 x 15,6 mm

Kartta, ek modem kontrolünün çıkışlarını lehimleyebileceğiniz ve USB'yi SUSPENDED moduna aktarabileceğiniz ek delikler vardır.

Kartın boyutu, diğer benzer USB / UART dönüştürücülerden biraz farklıdır

  1. Gboard /Iboard kontrolörleri ile ticari projeler için alınan FOCA 2.2 kartı
  2. Şimdiye kadar kullanılan ucuz FT232 dönüştürücü
  3. İncelenen CP2102

CP2102'yi bağlama ve yükleme

Kartı kullanmadan önce, Si-Labs'ın resmi web sitesinden sürücüleri yüklemeniz gerekir.

  • Denetleyiciye bağlanmak için 5 kablo gereklidir:
  • GND-GMD
  • Kullanılan karta bağlı olarak VCC - V5.0 (V3.3)
  • TX-RX
  • RX - TX
  • RESET kontrolörü - DTE


Artık kontrolör RESET düğmesine basılmadan programlanabilir.

Dönüştürücünün VID, PID ve diğer özelliklerini değiştirme

Kart, sistemde Silicon Labs CP210X USB - UART Bridge (COM35) olarak tanınır.

Bazen ticari projelerde programlama yapılırken cihazın kendi ticari ismine sahip olması gerekir. CP2102 yongası ve üzerindeki anakart bunun için büyük fırsatlar sunuyor.

İlk olarak, EEPROM CP1202 parametrelerini yapılandırmak için yardımcı programı indirin ve çalıştırın (yardımcı programı çalıştırmak için Java Runtime'ı da indirmem gerekiyordu)

Şimdi aşağıdaki ayarları değiştirebilirsiniz:

  • Satıcı Kimliği (VID). Üretici kimliği. Varsayılan değer 10C4'tür (onaltılık). Bu durumda SiLabs'a aittir.
  • Ürün Kimliği (PID). Ürün kimliği. Varsayılan değer EA60'tır (onaltılık). Bu durumda, tüm CP210x köprülerini ifade eder.
  • En yüksek güç. USB veri yolunda köprü tarafından talep edilen maksimum akım tüketimi. Varsayılan değer 32'dir (onaltılık). Maksimum değer 500mA
  • güç kullanım özellikleri. Diyet. Bus-powered (USB veriyolundan güç alır) veya Self-Powered (harici bir kaynaktan güç alır).
  • sürümü yayınlayın. Kayıt numarası. Varsayılan değer 1.0'dır. Alanlar tamsayı ve kesirli kısımlarda 1-99 arası değerler alabilir.
  • seri numarası. Seri numarası. Varsayılan değer "0001"dir (metin biçimi). Alan, 64 karaktere kadar herhangi bir metin değeri alabilir. Bir bilgisayara birden fazla cihaz bağlamak için gerekli
  • ürün dizisi. Alan, 126 karaktere kadar herhangi bir metin değerini kabul edebilir. Bu tanımlayıcı şurada görüntülenir: işletim sistemi CP210x köprüsünü bilgisayara ilk kez bağlarken ve kullanıcıya uygun sürücüyü seçmede rehberlik ederken
  • Özel Veri Kilidi. Yapılandırma veri koruması.