Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
For noen av mine PIC -prosjekter trenger jeg et serielt (RS232) grensesnitt for å skrive ut noen meldinger på skjermen på datamaskinen min. Jeg har fortsatt en stasjonær datamaskin som har ett RS232 -grensesnitt, men i dag har de fleste datamaskiner et USB -grensesnitt i stedet. Du kan kjøpe enheter som konverterer - TTL - RS232 -signaler til USB som flere prosjekter allerede har blitt publisert på Instructables, men jeg bestemte meg for å bygge et selv. Grunnen til det er at jeg liker å bygge ting, men også at denne versjonen ikke trenger en spesiell driver for Windows 10 siden den bruker en standard Microchip -enhetsbeskrivelse som allerede støttes av Windows 10.
Siden kravene til baudhastigheten kan variere bestemte jeg meg for å støtte følgende baudrater ved hjelp av hoppere på brettet: 9600, 19200, 57600 og 115200. Enheten bruker alltid 8 bits, 1 stoppbit og ingen paritet for overføringen.
Som du kanskje vet kan du ikke bruke TTL -signaler til å drive et RS232 -grensesnitt, så jeg opprettet også et RS232 -kort basert på MAX232 -brikken som konverterer signalene til riktig nivå. I denne instruksen har jeg også lagt ut det skjematiske diagrammet over RS232 -kortet siden jeg brukte det til å teste min USB til seriell TTL -omformer.
Jeg brukte en PIC 16F1455 som enhet for å kontrollere USB -porten og overføre alle data fra USB til seriell ved hjelp av programmeringsspråket JAL.
Trinn 1: Elektronikken
Det skjematiske diagrammet viser de elektroniske komponentene du trenger. Vær oppmerksom på at jeg også postet det skjematiske diagrammet over RS2323 -kortet som konverterer TTL -signaler til RS232 -signaler, men dette er like ekstra informasjon. Komponentlisten nedenfor er bare for USB til Seriell TTL -omformer.
Du trenger følgende elektroniske komponenter for dette prosjektet:
- 1 PIC mikrokontroller 16F1455 med sokkel
- Keramiske kondensatorer: 1 * 470 nF, 1 * 100nF, 2 * 22 pF
- 1 krystall 12 MHz
- 1 Elektrolytisk kondensator på 10 uF/25V
- Motstander: 2 * 10k, 3 * 330 Ohm, 2 * 22 Ohm
- Lysdioder: 1 gul, 1 gul, 1 grønn
- 1 USB -kontakt
- 2 hoppere
- 1 topp, 4 pinner
Du kan bygge kretsen på et brødbrett, som vist på bildet. Kretsen drives av USB -tilkoblingen. Jeg brukte USB 5 Volt for å drive RS232 -kortet.
Trinn 2: Programvaren
Programvaren utfører følgende oppgaver:
- Håndtering av USB -grensesnittet. Til dette brukte jeg et standard JAL USB serielt bibliotek
- Etter at USB til seriell TTL -omformer er konfigurert, vil den gule LED -lampen slås på
- Når et tegn mottas fra USB -en, kopieres det til det serielle grensesnittet
- Når et tegn mottas fra det serielle grensesnittet, kopieres det til USB
- Hver gang et tegn mottas fra hver side, slås den grønne lysdioden kort på for å indikere at data overføres
- Still inn baudrate for det serielle grensesnittet ved hjelp av jumperinnstillingene. Baudrate kan endres når som helst
Før USB -grensesnittet kan brukes må det konfigureres av vertsmaskinen. Dette gjøres ved å angi de riktige serieparametrene i terminalemulatorprogrammet på PC -en og aktivere RTS/CTS -strømningskontroll. Overføringshastigheten til USB -grensesnittet kan settes til en hvilken som helst verdi mens baudhastigheten til det serielle grensesnittet bestemmes av jumperinnstillingene. Vær oppmerksom på at begge baudrates ikke trenger å være de samme.
JAL -kildefilen og Intel Hex -filen for programmering av PIC er vedlagt.
Trinn 3: Det endelige resultatet
For denne demoen koblet jeg USB til seriell TTL -omformer til RS232 -kortet. Grunnen til det er at jeg deretter kan vise operasjonen på min stasjonære datamaskin som har både en USB -port og en RS232 -port.
I videoen ser du to terminalemulatorvinduer åpne. Vinduet til venstre viser dataene på RS232 -porten, mens det høyre vinduet viser dataene på USB -porten. Ingen strømningskontroll er nødvendig for RS232 -porten. For USB -porten er USB til seriell TTL -omformer konfigurert ved å aktivere RTS/CTS -strømningskontrollen, hvoretter den gule LED -en tennes.
Vær oppmerksom på at for denne demoen brukte jeg en baudrate på 9600 baud for RS232 -porten og en baudrate på 115200 hvis USB -porten.
Hvis du er interessert i å bruke PIC -mikrokontrolleren med JAL - et Pascal -lignende programmeringsspråk - besøk JAL -nettstedet
Ha det gøy å lage dette instruerbart og gleder meg til reaksjoner og resultater.