Sadržaj:

Pretvaranje ploča USB-a zasnovanih na SAMD21 u hardverski serijski port!: 3 koraka
Pretvaranje ploča USB-a zasnovanih na SAMD21 u hardverski serijski port!: 3 koraka

Video: Pretvaranje ploča USB-a zasnovanih na SAMD21 u hardverski serijski port!: 3 koraka

Video: Pretvaranje ploča USB-a zasnovanih na SAMD21 u hardverski serijski port!: 3 koraka
Video: Как связать промышленные датчики 4–20 мА с ПЛК Raspberry Pi Pico | ПЛК Мицубиси FX1N 2024, Juli
Anonim
Image
Image
Kreirajte serijski uređaj s USB priključkom
Kreirajte serijski uređaj s USB priključkom

Danas je standardno koristiti USB priključak na Arduino (ili bilo kojoj drugoj kompatibilnoj) ploči kao emulirani serijski port. Ovo je vrlo korisno za otklanjanje grešaka, slanje i primanje podataka s naših dragih ploča.

Radio sam na uChip-u Kad sam, pregledavajući podatkovnu tablicu njegovog MCU-a (SAMD21), primijetio da se USB gpio PORTA 24 i 25 (koji su D-/D+ respektivno) mogu koristiti i kao SERCOM (PAD 2 i 3).

Nakon što sam to primijetio u podatkovnoj tablici, pomislio sam da bi ponekad bilo prilično korisno priključiti hardverski serijski uređaj izravno na USB priključak, a ne pričvršćivanjem letećih žica na ploču ili lemljenjem izravno na ploču.

Stoga je ovo kratki vodič koji vam pokazuje kako postaviti ploču tako da možete koristiti njen USB kao hardverski serijski port.

U ovom posebnom vodiču serijski uređaj spojen je Bluetooth HC-06 serijski adapter. Međutim, kôd možete prilagoditi bilo kojem drugom serijskom uređaju, sve dok lemite adapter USB kabela na serijski uređaj.

Obračun materijala

uChipx 1

mikro-USB na USB/A adapter x 1 (veza)

HC-06 BT modul x 1

Reciklirani USB kabel x 1

Baterija (3V3 <VBAT <5) x 1

Korak 1: Kreirajte serijski uređaj s USB priključkom

Odlijepite USB kabel i lemite njegove žice na serijski uređaj kako je prikazano na shemi i dolje napisano.

- USB kabel crn -> GND

- USB kabel crven -> VCC (napajanje)

-USB kabel (D-) bijeli -> RX

- USB kabel (D+) zelen -> TX

Korak 2: Programirajte UChip

Program UChip
Program UChip

Povežite uChip sa računarom i umetnite skicu “HWSerialUSB.ino” u ploču. Zatim odspojite uChip da biste nastavili sa sljedećim koracima.

SAVJET: Kako funkcionira kod? Zašto je moj USB port sada drugačiji?

Ovdje je ukratko opisan trik koji radim u kodu.

U osnovi, stvaram novu instancu “SerialUSB_HW” koristeći GPIO koji je trenutno dodijeljen za rad kao D- i D+.

U programu Setup () omogućujem SERCOM funkcionalnost za USB pinove, koristeći funkciju “pinPeripherial ()” koja se nalazi u zaglavlju “wiring_private.h” koje se nalazi na početku koda.

Sada mogu koristiti instancu “SerialUSB_HW”, kao i standardni serijski ili SerialUSB, primajući i šaljući podatke na svoj serijski uređaj HC-06.

Korak 3: Sastavite - povežite - eksperimentirajte

Sastavi - Poveži - Eksperimentiraj
Sastavi - Poveži - Eksperimentiraj

Priključite bateriju na uChip

-pin_8-> VBAT--

- pin_16 -> VBAT+

Umetnite OTG adapter, a zatim serijski uređaj s potpuno novim USB priključkom i … to je sve, hardver je spreman!

Nakon uparivanja sa modulom HC-06 (standardna lozinka je 1234), povežite se sa BT uređajem pomoću telefona ili BT interfejsa. Sada biste trebali primiti status ugrađene LED diode.

Pošaljite znak 'o' za uključivanje LED -a ili bilo koji drugi znak za isključivanje.

Eksperimentirajte i isprobajte druge serijske uređaje. Sada znate kako koristiti USB port kao hardverski serijski port!

SAVJET: U kodu postoji #define koji vam omogućuje prebacivanje između korištenja USB priključka kao emulirane serijske ili hardverske serije. Eksperimentirajte i provjerite da priključeni serijski uređaj (HC-06) ne komunicira ako ne prisilimo USB da radi kao hardverska serija!

Preporučuje se: