Ryabenky V.M. Ulkoisten laitteiden tietokoneohjaus standardiliitäntöjen kautta

Habrella lampun ohjaamisesta Internetin kautta syntyi idea ohjata valaistusta kotona tietokoneelta, ja koska minulla on se jo valmiiksi konfiguroitu ohjaamaan tietokonetta matkapuhelimesta, tämä tarkoittaa, että valoa voidaan ohjata sama puhelin. Näytettyään artikkelin yhdelle työtoveristani, hän sanoi, että tämä oli juuri sitä, mitä hän tarvitsi. Koska hän usein nukahtaa katsoessaan elokuvia tietokoneella. Jonkin ajan kuluttua elokuvan päättymisestä myös tietokone nukahtaa ja sammuttaa näytön, mutta huoneen valo jää palamaan. Ne. päätettiin, että tämä asia oli hyödyllinen, ja aloin kerätä tietoja ja yksityiskohtia tätä ihmettä varten.
Loput tiedot ovat habracutin alla (ole varovainen, kuvia on paljon - liikenne).

Laitekaavio

Alkuperäinen kaava on otettu yhdestä Internetistä löytyneestä skeemasta ja se näytti tältä:

Mutta vain pienellä muutoksella: 4N25 optoerottimen 1. nastan ja 2. LPT-nastan väliin lisättiin 390 ohmin vastus, ja lisäksi lisättiin LED osoittamaan päällekytkentää. Piiri koottiin testitilassa, ts. yksinkertaisesti liittää johtoja tarpeen mukaan ja testata. Tässä versiossa hän yksinkertaisesti sytytti ja sammutti vanhan Neuvostoliiton taskulampun.
Päätettiin, että jos ohjataan, niin ei yhdelle laitteelle, vaan vähintään 4 laitteelle (perustuu: yksi lamppu pöydällä, kattokruunu kahdella kytkimellä, varapistorasia). Tässä vaiheessa tuli tarpeelliseksi rakentaa laitteesta täydellinen piirikaavio, ja eri ohjelmien valinta alkoi.
Asennettu:

  1. KiCAD
  2. Kotka
Katsottuani ne kaikki päädyin Eagleen, koska sen kirjastossa oli "samankaltaisia" osia. Tässä mitä siinä tapahtui:

Kaavio käyttää DB9-porttia, ts. tavallinen COM-portti, tämä tehtiin sekä levytilan että itse liittimien säästämiseksi (minulla oli COM-liittimet), ja koska käytämme vain 5 johdinta, tämä riittää meille varauksella tee myös sovitin DB25:stä (LPT) DB9:ään (COM), minun tapauksessani se tehdään seuraavasti:
LPT 2-9 -nasta = COM 1-8 -nastat ovat tiedonohjausnastat;
LPT 18-25 pin (usein ne on kytketty toisiinsa) = COM 9 pin - tämä on maadoitamme.
Piiri käyttää myös ylimääräistä 12V virtalähdettä releen virtalähteenä suunnitelman mukaan, se on yksinkertainen kiinalainen laturi tai ehkä 9 V Krona (yksi rele toimii normaalisti, sinun on tarkistettava 4 samaan aikaan); Tietokoneportin kiinnittämiseen käytetään erillistä virtalähdettä ja galvaanista eristystä optoerottimella. Halutessasi voit tietysti syöttää sen 12V tietokoneen virtalähteestä, mutta jokainen tekee sen itse ja omalla riskillään.

Tarvittavat osat laitteen luomiseen
  1. COM-portti - 1 kpl
  2. virtaliitin - 1 kpl.
  3. vihreä LED - 4 kpl
  4. optoerotin 4n25 - 4 kpl
  5. istuin optoerottimelle (minulla oli vain 8 jalkaa) - 4 kpl.
  6. vastus 390 ohm - 4 kpl.
  7. vastus 4,7 kOhm - 4 kpl.
  8. transistori KT815G - 4 kpl.
  9. rele HJR-3FF-S-Z - 4 kpl.
  10. puristimet 3 koskettimelle - 4 kpl.
  11. folio PCB

Piirilevykaavion valmistelu

Yrittyään käyttää Eaglea piirilevyn valmistukseen, tajusin, että se olisi hieman monimutkaista ja päätin löytää helpomman vaihtoehdon. Tämä vaihtoehto oli Sprint layout 5 -ohjelma, vaikka se olisi tehty Windowsille, mutta se toimii ilman ongelmia Linuxissa. Ohjelman käyttöliittymä on intuitiivinen, venäjäksi ja ohjelmassa on melko selkeä ohje (help). Tästä syystä kaikki muut piirilevyn kehittämiseen liittyvät toimenpiteet tehtiin sprintin layoutissa 5 (jäljempänä SL5).
Vaikka monet ihmiset käyttävät tätä ohjelmaa kehittääkseen levyjä laitteilleen, se ei sisältänyt tarvitsemiani osia (edes joukossa ladattuja makrokokoelmia). Siksi meidän oli ensin luotava puuttuvat osat:
  1. COM-portti (se, joka ei ollut sama kuin minulla, kiinnitysreikien mukaan)
  2. pistorasia
  3. kolmipiikkinen puristin
  4. rele HJR-3FF-S-Z
Näiden osien tyypit:

Tarvittavien osien lisäyksen jälkeen aloitettiin piirilevyn varsinainen suunnittelu. Se vaati useita yrityksiä, niitä oli noin viisi. Jokainen levyversio painettiin pahville, rei'itettiin ja niihin laitettiin osia. Itse asiassa havaittiin, että COM-porttini ei vastaa sitä, joka oli SL5:ssä. Relepiirissä ilmeni myös pieni virhe - itse asiassa releen runko oli siirtynyt 2-3 mm. Luonnollisesti kaikki virheet korjattiin.
Ensimmäisessä painetussa versiossa kävi myös ilmi, että transistori oli kytketty väärin.
Kaikkien korjausten ja säätöjen jälkeen tuloksena oleva taulu näytti tältä:

SL5:ssä on Photo View -ominaisuus taulun katselua varten, tältä se näyttää siinä:

Laudan lopullisessa versiossa on vielä joitain hienosäätöjä kappaleisiin, mutta muuten se näyttää samalta.

SL5:ssä on myös kätevä vaihtoehto taulun tulostamiseen. Voit piilottaa tarpeettomat kerrokset ja valita kunkin kerroksen tulostusvärin, mikä on erittäin hyödyllistä.

Piirilevyn valmistelu

Lauta päätettiin valmistaa LUT-menetelmällä (laser-rautatekniikka). Seuraavaksi koko prosessi on kuvassa.

Leikkaa pala piirilevystä halutun kokoiseksi.

Otamme hienoimman hiekkapaperin ja puhdistamme kuparipinnan huolellisesti.

Puhdistuksen jälkeen pinta on pestävä ja rasvattava. Voit pestä sen vedellä ja poistaa rasvan asetonilla (minun tapauksessani se oli liuotin 646).
Seuraavaksi tulostamme levymme lasertulostimella päällystetylle paperille, unohtamatta asettaa tulostinta rohkeimpaan tulosteeseen (säästämättä väriainetta). Tämä vaihtoehto osoittautui hieman epäonnistuneeksi, koska väriaine tahrii, mutta toinen yritys oli juuri oikea.

Nyt sinun on siirrettävä piirustus paperista textoliitille. Tätä varten leikkaamme kuvion ja levitämme sen tekstioliitille, yritämme kohdistaa sen tarpeen mukaan ja lämmitämme sen sitten raudalla. Koko pinta on lämmitettävä perusteellisesti, jotta väriaine sulaa ja tarttuu kuparipintaan. Sitten annamme laudan jäähtyä hieman ja lähdemme kastelemaan sitä juoksevan veden alla. Kun paperi kastuu tarpeeksi, se on erotettava levystä. Vain juuttunut väriaine jää taululle. Se näyttää tältä:

Seuraavaksi sinun on valmistettava ratkaisu etsaukseen. Käytin tähän rautakloridia. Rautakloridipurkissa on kirjoitettu, että liuosta pitää tehdä 1-3. Poikkesin tästä hieman ja tein 60 g rautakloridia 240 g:aa vettä kohden, ts. Tuli 1-4, tästä huolimatta taulun etsaus tapahtui normaalisti, vain hieman hitaammin. Huomaa, että kuivan rautakloridin liukenemisprosessi veteen tapahtuu lämmön vapautuessa, joten sinun on kaadettava se veteen pieninä annoksina ja sekoitettava. Luonnollisesti syövytykseen on käytettävä ei-metallisia astioita, minun tapauksessani se oli muovisäiliö (kuten silli). Sain tämän ratkaisun:

Ennen laudan laskemista liuokseen liimasin teipillä siiman sen takapuolelle, jotta laudan irrottaminen ja kääntäminen olisi helpompaa. Jos liuosta joutuu käsillesi, pese se nopeasti pois saippualla (saippua neutraloi sen), mutta tahroja voi silti jäädä, kaikki riippuu erityisistä olosuhteista. Vaatteiden tahroja ei poisteta ollenkaan, mutta onneksi en testannut tätä itse. Levy tulee upottaa liuokseen kuparipuoli alaspäin eikä kokonaan tasaisesti, vaan vinossa. Levy kannattaa ajoittain puhdistaa louhinnasta, koska se häiritsee jatkosyövytystä. Tämä voidaan tehdä vanupuikolla.

Koko etsausprosessi kesti 45 minuuttia, 40 minuuttia olisi riittänyt, mutta minulla oli vain kiire yhden asian kanssa.
Syövytyksen jälkeen pesemme levyn saippualla, revimme teipin irti siimalla ja saamme:

Huomio! Älä kaada rautakloridiliuosta pesualtaaseen (viemäriin) - tämä voi vaurioittaa pesualtaan metalliosia, ja yleensä liuos voi silti olla hyödyllinen.
Seuraavaksi meidän on pestävä väriaine pois, tämä tehdään onnistuneesti samalla liuottimella 646, jota käytettiin rasvanpoistoon (liuottimen pitkäaikainen kosketus ihon kanssa voi vahingoittaa sitä).

Seuraava vaihe on porata reikiä. Aluksi minulla oli levyssä 1 mm ja 1,5 mm reikiä, koska en löytänyt ohuempia poraa. Kaupungistamme ei myöskään ollut mahdollista löytää holkkiistukkaa sen kiinnittämiseksi sähkömoottoriin, joten kaikki tehtiin isolla poralla.

Ensimmäinen laite saapui

Ensimmäisellä kerralla otin vain kaksi poraa, ja kun käytin tällaista poraa, tämä ei riittänyt. Toinen pora katkesi ja toinen vääntyi. Kaikki mitä onnistuin poraamaan ensimmäisenä päivänä:

Seuraavana päivänä ostin viisi poraa. Ja niitä oli juuri tarpeeksi, koska jos ne eivät hajoa (muuten, vain yksi viidestä rikkoutui), ne tylsistyvät, ja tylsillä porattaessa telat huononevat, kupari alkaa irrota. Kun levy on porattu kokonaan, saadaan:

Porauksen jälkeen levy on tinattava. Tätä varten käytin vanhaa menetelmää - juotin, TAGS-fluksi ja tina. Halusin kokeilla sitä Rose-seoksella, mutta sitä ei löydy kaupungistamme.

Tinauksen jälkeen saamme seuraavan tuloksen:

Seuraavaksi sinun on huuhdeltava levy juoksutusainejäämien poistamiseksi, koska TAGS on vedellä puhdistettava, tämä voidaan tehdä joko vedellä tai alkoholilla. Tein jotain siltä väliltä - pesin sen vanhalla vodkalla ja pyyhin vanupuikolla. Kaikkien näiden vaiheiden jälkeen lautamme on valmis.

Osien asennus

Levyn oikeellisuuden tarkistamiseksi kokoan aluksi vain yhden (neljästä) rivin osia, ei koskaan tiedä missä vika on hiipinyt.

Osien asennuksen jälkeen kytketään laite tietokoneeseen LPT:n kautta, DB25(LPT) -sovitin DB9(COM) juotetaan seuraavassa muodossa:

  • 2-nastainen DB25 ja 1-nastainen DB9
  • 3-nastainen DB25-2-nastainen DB9
  • 4-nastainen DB25-3-nastainen DB9
  • 5-nastainen DB25 - 4-nastainen DB9
  • 6-nastainen DB25-5-nastainen DB9
  • 7-nastainen DB25 - 6-nastainen DB9
  • 8-nastainen DB25 - 7-nastainen DB9
  • 21-nastainen DB25 (mikä tahansa 18-25 on mahdollista) - 9-nastainen DB9
Koska johtona käytettiin tavallista kierrettyä paria, yksi johto puuttui, mutta tälle laitteelle riittää vain viisi johtoa, joten tämä vaihtoehto sopii. Kytketty kuormamme on yksinkertainen Neuvostoliiton taskulamppu. No, virtalähteenä - yleinen kiinalainen virtalähde (4 liitintä ja virtalähde 3 - 12 V). Tässä kaikki koottuna:

Mutta laite toimii jo:

Tämä päättyi toisena iltana ja jäljellä olevien osien asennus jäi seuraavaan päivään.

Ja tässä on täysin koottu laite:

No, lyhyt video sen toiminnasta (laatu ei ole kovin hyvä, minulla ei ollut mitään kuvattavaa kunnolla)

Siinä kaikki, jäljellä on vain löytää laitteelle normaali kotelo ja ottaa se käyttöön.

Ohjelmisto-osa

Luonnollisesti LPT-portin ohjaamiseen tarvitaan jonkinlainen ohjelmisto, mutta koska minulla on Linux kotona, päätettiin yksinkertaisesti kirjoittaa yksinkertainen ohjelma itse ja lisätä se ja muokata sitä tarpeen mukaan. Hän näytti tältä:
#sisältää
#sisältää
#sisältää
#sisältää
#define BASE 0x378
#define AIKA 100000
int main()
{
int x = 0x0F;
int y = 0x00;
if (ioperm(BASE, 1, 1))
{
perror("ioperm()");
poistu(77);
}
outb(x,BASE);
paluu 0;
}

Tämä ohjelma lähettää 0x0F = 00001111 LPT-porttiin, ts. syöttää 1 nastoihin 2-5 (Data0-Data3), ja tämä on ohjausjännitemme nastojen 2-5 ja maan (nastat 18-25) välillä, joten kaikki neljä relettä kytkeytyvät päälle. Ohjelma 0x00:n lähettämiseksi porttiin sammutusta varten toimii täsmälleen samalla tavalla, se lähettää vain y:n x - outb (y, BASE) sijaan. Voit myös lukea portin tilan:
#define BASEPORT 0x378 /* lp1 */
...
printf("tila: %d\n", inb(BASEPORT));
...

Tämän ohjelman ainoa varoitus on, että se on suoritettava pääkäyttäjänä, koska ioperm-toiminto ei ole yksinkertaisen käyttäjän käytettävissä. Mielestäni meidän ei tarvitse kertoa sinulle, kuinka tällainen ongelma ratkaistaan, jokainen valitsee itselleen sopivamman vaihtoehdon.

Myöhemmin ohjelmaa muokattiin niin, että välittämällä sille komentoriviparametreja oli mahdollista määrittää mikä laite ja mitä tehdä.
"sw --help":n tulos:
Ohjelma releiden ohjaamiseen LPT-portin kautta.
Ohjelmalla voi olla yksi tai kaksi parametria.
Parametrimuoto: sw [laitenumero] [toiminto]
laitenumero - 1-8
toiminta - "on", "off", "st" - päällä, pois, tila
Esimerkki: "sw 2 on" käynnistääksesi toisen laitteen tai "sw --help" näyttääksesi ohjeen

PS jos joku tarvitsee, niin voin lähettää jonnekin tiedoston sl5:ssä olevasta levykaaviosta ja ohjausohjelman lähdekoodista.

Tietokone, jotkut osat, työkalut, kuka tahansa voi järjestää kodinkoneiden yksinkertaisen ohjauksen tästä tietokoneesta. Monilla jokapäiväisessä elämässä käytetyillä laitteilla on monia toimintoja, esimerkiksi useimmat nykyaikaiset televisiot voivat näyttää tietyn määrän eri kanavia, tuulettimella voi olla useita erilaisia ​​toimintatiloja jne. Tällaisten monimutkaisten säätimien, kuten esimerkiksi kanavien tai toimintatilojen vaihtamisen, tekemiseen tarvitset edellä mainittujen lisäksi lisätietoa, osia ja työkaluja, mutta kuka tahansa, jolla on edellä mainitut, voi tehdä yksinkertaisen päälle- ja poiskytkennän. Arduino kommunikoi tietokoneen kanssa USB-portin kautta. Tietoja voidaan siirtää tietokoneesta Arduinoon Arduino-kehitysympäristön (nimeltään Arduino IDE) kautta, joka voidaan ladata viralliselta Arduinon verkkosivustolta. Arduinon vuorovaikutukseen ulkomaailman kanssa on monia erilaisia ​​​​moduuleja, esimerkiksi erityinen moduuli, jossa on relelohko kuormien vaihtamiseen, kun tällaisia ​​moduuleja käytetään, työ yksinkertaistuu huomattavasti, tässä tarkastellaan moduulin itsenäistä tuotantoa yhdellä releellä kodinkoneiden päälle/poiskytkentää varten voit tarvittaessa tehdä useamman kuin yhden tällaisen moduulin ja käyttää niitä yhden Arduinon kanssa, jolloin monien kodinkoneiden ohjaaminen on helppoa. Arduinossa (mikä tahansa) on useita yleiskäyttöisiä nastoja, jotka on merkitty taululle yksinkertaisesti numeroin tai numeroin, joissa on aaltoileva "~"-merkki. Kytkemällä Arduino tietokoneeseen ja kirjoittamalla siihen erityisen luonnoksen (ohjelma Arduinolle) (Arduinossa), voit ohjata näitä nastoja tästä tietokoneesta "Arduino IDE" -ohjelman kautta tekemällä niistä korkea jännite (noin +5 V (HIGH) )) tai matala (noin 0 V (LOW)). Arduinossa on myös "GND"-nasta (kuten taulussa on ilmoitettu). Jos jossakin yleiskäyttöisistä liittimistä on korkea jännite, kytkemällä jotain johtavaa virtaa tämän liittimen ja "GND"-liittimen välille, sähkövirta kulkee liitetyn läpi ja tämän virran suuruus riippuu tämän kohteen vastus ja voidaan laskea esim. mitä pienempi vastus, sitä suurempi virta, mutta jos vastus on liian pieni, Arduinon läpi virtaa liikaa virtaa ja se palaa. Enimmäisvirta, jonka Arduinon yleiskäyttöinen nasta voi tuottaa, voi vaihdella sen käyttämän mikro-ohjaimen mukaan, mutta se on yleensä 40 mA = 0,04 A – tämä ei välttämättä riitä käynnistämään relettä, joka käynnistää laitteet, joten ylimääräistä on käytettävä virtaelementin vahvistamiseen, esimerkiksi bipolaarinen transistori. Bipolaarisessa transistorissa on kolme liitintä: emitteri, kollektori, kanta. Transistorin maksimivirta on myös rajoitettu, kuten Arduinolla, ja se on yleensä suurempi, esimerkiksi suositussa KT315:ssä maksimivirta on 100mA = 0,1A. Bipolaarisia transistoreja on kahta tyyppiä n-p-n ja p-n-p, voit käyttää molempia tyyppejä, mutta eri tavoin, ja sitten harkitsemme KT315-transistorin käyttöä, jonka tyyppi on n-p-n. Jotta transistori voi vahvistaa Arduinosta tulevaa virtaa, sen kanta on kytkettävä Arduinon lähtöön VASTAUKSEN KAUTTA, jonka resistanssi on 1 kOhm (vastus voi sanoa 1 k), kytke tämän transistorin emitteri Arduinon "GND" ja virtalähteen miinus tai virtalähteen "GND", jonka jännite on yhtä suuri kuin olemassa olevan releen käämin jännite (oletetaan 12 V), kytke yksi relekäämin liittimistä transistorin kollektoriin, toinen virtalähteen plussalla (+12V, sanotaan) ja toinen osa joka ei vaikuta vahvistukseen mutta on ERITTÄIN tärkeä on diodi, joka pitää kytkeä anodin kautta kollektori ja katodi plussaan virtalähteestä (+12V). Jos diodi tuodaan, sen rungossa on todennäköisesti valoraita - se osoittaa katodin, diodin toinen napa on anodi. Muut releen liittimet ovat sen koskettimien liittimet, jos niitä on kaksi ja ne eivät ole kiinni, niin kun releen käämiin syötetään riittävästi virtaa, nämä koskettimet sulkeutuvat, ne on kytkettävä sarjaan laite ja tämä sarjaliitäntä voidaan kytkeä pistorasiaan, sitten kun koskettimet ovat kiinni, laite vastaanottaa 220V ja se käynnistyy. Yllä oleva voidaan kuvata kuvassa:

Kuva 1 - Laitteen ohjaaminen tietokoneesta


Tämä on epästandardi kaavio, jonka avulla voidaan ymmärtää paremmin:

Kuva 2 - Laitteen ohjaaminen tietokoneesta


Vaikka tämä kaavio sisältää myös epätyypillisen nimityksen Arduino-levylle. Kuvassa on Arduino UNO (voidaan tilata tästä linkistä http://ali.pub/1v22bh), mutta voit käyttää mitä tahansa muuta. Liitännät voidaan tehdä esimerkiksi leipälevylle ja johdoilla tai juottamalla. Kun kaikki on kytketty oikein ja tarkistettu, voit liittää Arduinon USB:n kautta tietokoneeseesi ja ladata luonnoksen siihen:

Merkki pc_koodi=0;

Virheellinen asetus ()
{
pinMode(2, OUTPUT);
Serial.begin(9600);
}

void loop()
{
jos (Serial.available() > 0)
{
pc_koodi = Serial.read();
if(pc_code=="a")
{
digitalWrite(2, KORKEA);
}
else if(pc_code=="b")
{
digitalWrite(2, LOW);
}
}
}

Sivulla on jo kuvattu kuinka Arduino määritetään oikein ja luonnos ladataan siihen. Seuraavaksi kytkeäksesi laitteen päälle, sinun on lähetettävä symboli "a" Arduinolle sammuttaaksesi sen, symboli "b". Lähettääksesi symbolin Arduinoon, voit Arduino IDE:ssä siirtyä Tools-Serial Port Monitor -välilehdelle ja syöttää ylemmässä tekstikentässä näkyvään ikkunaan symbolit ja lähettää painamalla "lähetä". -painiketta, symboli saapuu Arduinoon ja tässä tapauksessa jos lähetät symbolin "a", laite käynnistyy, jos "b", se sammuu vastaavasti. Jos Arduino ei hyväksy merkkejä, sinun on asetettava sarjaportin näyttöikkunan oikeaan alakulmaan sama nopeus kuin luonnoksessa on määritelty, ts. 9600 baudia Jos haluat sisällyttää 2 laitetta, voit muuttaa luonnosta hieman:

Merkki pc_koodi=0;

Virheellinen asetus ()
{
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
Serial.begin(9600);
}

void loop()
{
jos (Serial.available() > 0)
{
pc_koodi = Serial.read();
if(pc_code=="a")
{
digitalWrite(2, KORKEA);
}
else if(pc_code=="b")
{
digitalWrite(2, LOW);
}
else if(pc_code=="c")
{
digitalWrite(3, KORKEA);
}
else if(pc_code=="d")
{
digitalWrite(3, LOW);

Monet meistä haluaisivat todennäköisesti ohjata sähköpiirejä tietokoneen kautta. Ja mitä? Se olisi mukavaa. Kuvittele, ystävä soittaa sinulle ja sanoo: "Tulen 20 minuutin kuluttua", sitten kuluu 20 minuuttia, ovikello soi, mutta et halua nousta tietokoneelta, mennä avaamaan ovia jne. Kuvittele erilainen tilanne: ovikello soi, näyttöön tulee viesti "Sinulla on vieraita", painat tietokoneen nappia - oven magneettilukko aukeaa ja huudat koko talolle: "Tule sisään, ” tai sinun on kytkettävä se päälle vedenkeitin, valo tai jotain muuta. Nykyään tämä ei ole enää fantasiaa, vaan melko realistista, vain huonon talouden takia kaikilla ei ole varaa edes yksinkertaisimpaan "älykkään taloon", mutta jos sinulla on halua ja suorat kädet, voit helposti ohjata sähköpiirejä PC: n kautta. .

Nykyään aika monet osaavat ohjelmoida, osaavat kirjoittaa tietokoneelle ohjelman, jolla voisi ohjata ulkoisia laitteita, mutta miten sama vedenkeitin liitetään tietokoneeseen? No, voi vaikkapa LPT-portin kautta, mutta sitä näkee harvoin enää missään, mitä sitten jää jäljelle? USB!!!

Tehdään laite, joka kytkeytyy USB:hen ja pystyy ohjaamaan sähköpiirejä (esim. sytyttämään valot), reagoimaan painikkeiden sulkemiseen (esim. ovikello) ja jotain muuta.

Joten, mistä teemme sen? Tästä aiheesta kiinnostuneet ovat luultavasti jo kuulleet Ke-USB24A-moduulista.

Kuvaus:

Ke-USB24A-moduuli on suunniteltu liittämään ulkoisia digitaalisia ja analogisia laitteita, antureita ja toimilaitteita tietokoneeseen USB-väylän kautta. Määritetty ylimääräiseksi (virtuaaliseksi) COM-portiksi. Moduulissa on 24 erillistä tulo/lähtölinjaa (joko logiikka 0 tai logiikka 1), joilla voidaan konfiguroida tiedonsiirron suunta (tulo/lähtö) ja sisäänrakennettu 10-bittinen ADC. Moduulin ohjaamiseksi tarjotaan joukko tekstiohjauskomentoja (KE - komennot).

Erottavat ominaisuudet:

  • liitäntämoduuli USB-liitäntää varten
  • Windows/Linux-käyttöjärjestelmän määrittelemä virtuaalinen COM-portti
  • ei vaadi lisäpiirielementtejä, on heti käyttövalmis
  • 24 erillistä tulo-/lähtölinjaa, joilla voidaan itsenäisesti konfiguroida tiedonsiirron suunta (tulo/lähtö) ja tallentaa asetukset moduulin haihtumattomaan muistiin
  • sisäänrakennettu 10-bittinen ADC taatulla näytteenottotaajuudella jopa 400 Hz.
  • ADC:n analogisen tulosignaalin jännitteen dynaaminen alue on 0 - 5 V.
  • joukko valmiita korkean tason tekstiohjauskomentoja (KE - komennot)
  • kätevä muoto DIP-lohkolla ja USB-B-liittimellä varustetun moduulin muodossa
  • Mahdollisuus saada virtaa sekä USB-väylästä että ulkoisesta virtalähteestä (tila valitaan kortissa olevalla jumpperilla)
  • kyky tallentaa käyttäjätietoja moduulin haihtumattomaan muistiin (jopa 32 tavua)
  • kyky muuttaa USB-laitteen merkkijonokuvausta
  • jokaisella moduulilla on ainutlaatuinen sarjanumero, johon ohjelmisto pääsee käsiksi
  • tuki Windows 2000, 2003, XP 32/64 bit, Vista 32/64 ja Windows 7 32/64 bit
  • OS Linux -tuki

Näyttää siltä, ​​​​että tämä on mitä tarvitsemme, MUTTA... tämän ihmeen hinta alkaa 40 dollarista. Olet todennäköisesti jo menettänyt halun ostaa se.

Kootaanpa sellainen moduuli mieluummin itse, vain niin, että se on nälkäisenkin opiskelijan ulottuvilla!

Pakolliset kriteerit: alhaiset kustannukset ja komponenttien helppo saatavuus, kokoamisen helppous.

Otetaan mikrokontrolleriksi laajalti käytetty ATmega8 (ilman L-kirjainta lopussa). Moduulimme ominaisuudet ovat seuraavat:

  • Yhdistä PC:hen USB:n kautta.
  • Windows-käyttöjärjestelmä havaitsee sen USB HID -laitteena, ei vaadi kuljettajaa.
  • Heti valmiina lähtöön.
  • 7 lähtölinjaa logiikkatilassa (aktiivinen/ei-aktiivinen).
  • 2 lähtölinjaa tasaisella jännitteensäädöllä minimistä maksimiin. Vain tämä ei ole DAC (digital-to-analog converter) vaan PWM (pulssinleveysmodulaatio). Mutta suodattimen avulla voit helposti muuttaa sen DAC:ksi.
  • 7 tulolinjaa loogisella tilalla (aktiivinen / ei-aktiivinen).
  • 1 ADC (analogi-digitaalimuunnin), johon voidaan liittää ulkoinen referenssijännitelähde (RP).
  • Mahdollisuus ladata uusi laiteohjelmisto suoraan USB:n kautta.

Miksi valitsin HID:n enkä virtuaalista COM-porttia (CDC)? Ensinnäkin ajureita ei tarvita, toiseksi HID lataa mikro-ohjainta useita kertoja vähemmän kuin CDC, koska tietoja ei pyydetä jatkuvasti, vaan vain silloin, kun isäntä (tietokone) sitä vaatii, ja yleensä COM-portti on jo kuolemassa, Nykyään käytännössä ei ole laitteisto-COM-portteja, vain virtuaaliset jäävät. Loogiset lähtölinjat on suunniteltu ohjaamaan vain kahta tilaa - päällä tai pois päältä, kun ulostulo (mikroohjaimen jalka) on 0 V, kun on - 5 V, tähän voit yksinkertaisesti kytkeä LEDin ja ohjata sitä PC:ltä, tai voit kytkeä rele (transistorin kautta) ja ohjaa tehokkaampaa kuormaa (valaistus jne.). Jännitesäädöllä (PWM-lähtö) varustetuilla lähtölinjoilla voit muuttaa mikro-ohjaimen jalan jännitettä tasaisesti 0V:sta +5V:iin 5/1024V:n askelin. Boolen tilan syöttörivit on suunniteltu seuraamaan painikkeiden, näppäinten jne. tilaa. Kun linja on oikosulussa maahan (kotelo, GND), sen tila = 0, jos ei kiinni - 1. ADC:llä voit mitata jännitettä, voit liittää tähän potentiometrin, analogisen lämpötila-anturin tai jotain muuta, vain jännitteen , tämän jalan jännite ei saa ylittää ravintoa. Sekä ulkoista ION:ia että moduulin syöttöjännitettä voidaan käyttää ADC:n vertailujännitelähteenä. Jotta vilkkuessa sinun ei tarvitse kytkeä mikro-ohjainta ohjelmoijaan, mahdollistamme laiteohjelmiston lataamisen suoraan USB:n kautta ilman ulkoista ohjelmoijaa.

Laitekaavio:

Kuten näette, kaavio on melko yksinkertainen, vain minä kiinnitin kaavion liittimet epäkunnossa, tämä johtuu siitä, että ATmega8: lla on jalat jokaiselle portille, jostain syystä ne sijaitsevat hajallaan, mutta itse levyltä se näyttää kaunis.

PCB:

No, tulos on tämä:

Mietitään nyt, mitä yhdistämme minne.

  1. USB - portti. Luulen, että kaikki tuntevat hänet.
  2. Virran merkkivalo.
  3. Logiikkatulo 1.
  4. Logiikkatulo 2.
  5. Logiikkatulo 3.
  6. Logiikkatulo 4.
  7. Logiikkatulo 5.
  8. Logiikkatulo 6.
  9. Logiikkatulo 7.
  10. ADC-tulo.
  11. Tulo ION-liitäntää varten.
  12. Tämä nasta on kytketty laitteen virtalähteeseen. Sulje nastat 12 ja 13 hyppyjohdolla niin, että ION-jännite on yhtä suuri kuin syöttöjännite.
  13. Logiikkalähtö 1.
  14. Logiikkalähtö 2.
  15. PWM-lähtö 1.
  16. PWM-lähtö 2.
  17. Logiikkalähtö 3.
  18. Logiikkalähtö 4.
  19. Logiikkalähtö 5.
  20. Logiikkalähtö 6.
  21. Logiikkalähtö 7.

Mikä on GND?

Jopa aloitteleva radioamatööri tietää, mitä GND on, mutta joillekin ihmisille se näyttää pelottavilta kirjeiltä. GND on niin sanotusti yleinen kontakti. Sitä kutsutaan myös maaksi ja massaksi. Lanka on yleensä musta (joskus valkoinen tai jotain muuta). GND on myös kytketty laitteen metallirunkoon. Laudalla useimmissa tapauksissa kaikki vapaa tila täytetään GND:llä suurten polygonien muodossa. Moduulissamme on verkon muodossa olevia polygoneja, jotka on myös kytketty USB-liittimen koteloon.

Mikrokontrolleri ohjelma.

Koska artikkelissa haluan kertoa sinulle, kuinka ohjata piirejä USB:n kautta valmiilla moduulilla, en selitä, kuinka mikro-ohjainohjelma toimii, voit ladata lähdekoodin alta ja nähdä, siellä on paljon kommentteja . Tässä kirjoitan vain laitetunnisteista.

Joten lähteissä on tiedosto usbconfig.h, siinä on viivoja

#define USB_CFG_VENDOR_ID 0x10, 0x00

#define USB_CFG_DEVICE_ID 0x01, 0x00

#define USB_CFG_VENDOR_NAME "k","i","b","e","r","m","a","s","t","e","r","." "p","l",","u","a"

#define USB_CFG_VENDOR_NAME_LEN 17

#define USB_CFG_DEVICE_NAME "U", "S", "B", "-", "C", "o", "n", "t", "r", "o", "l"

#define USB_CFG_DEVICE_NAME_LEN 11

Kaksi ensimmäistä riviä ovat laitetunnus ja tuotetunnus, jokaisella USB-laitteella on nämä, vain tässä tiedostossa ilmoitetaan ensin alhainen tavu, sitten korkea tavu, tietokoneohjelmassa se on toisinpäin. Seuraavaksi tulee valmistajan (toimittajan) ja laitteen nimi sekä rivin pituus tavuina. PC-ohjelma etsii ensin laitteita tunnuksella ja sitten löydettyjen joukosta nimellä.

Laitteen laiteohjelmisto.

Etsi tiedosto ladatuista tiedostoista MCUusb_bootloader-kansiossa main.hex- tämä on usb-käynnistyslatain, se on ladattava MK: hen ulkoisen ohjelmoijan avulla. Kaatamisen jälkeen sinun on myös asetettava sulakkeet oikein ohjelmointiikkunassa STK500 pitäisi näyttää tältä:

Jos käytät toista ohjelmaa, voit syöttää HIGH- ja LOW-sulakkeiden arvot (katso kuvakaappaus).

Onnistuneen laiteohjelmiston jälkeen voit yrittää käynnistää laitteen käynnistyslataimen kautta. Miten se toimii? Kun käynnistät MK:n (yksinkertaisesti kun virta kytketään tai nollauksen jälkeen), käynnistyslatain käynnistyy välittömästi, se tarkistaa ehdon, jos se on totta, käynnistyslataimen alustus alkaa (tietokone löytää laitteen). Ehtona meillä on "Looginen tulo 1 = 0", eli käynnistyslataimen käynnistämiseksi sinun on suljettava GND:n looginen tulo ja painettava laitteen RESET-painiketta, uuden HID-laitteen pitäisi ilmestyä laitteeseen johtaja, joka ei myöskään vaadi ohjaimia:

Ok, nyt suoritamme tiedoston MCUUSB_Controldefault-kansiossa boot.bat, ikkunan pitäisi avautua numeroiden ympärillä:

Jos ikkuna sulkeutuu heti, teit jotain väärin. Jos kaikki on kunnossa, et enää tarvitse ulkoista ohjelmoijaa tälle laitteelle. Voit nyt irrottaa Logic Input 1:n GND:stä. Ja varmuuden vuoksi paina RESET. HID-laitteen pitäisi myös näkyä laitehallinnassa (tietokone kirjoittaa, että uusi on löydetty). Varmista, että tämä laite näkyy hallinnassa.

Isäntä- tämä ohjaa laitetta, meidän tapauksessamme tietokonetta. Kuvaan tarkemmin laitteen ohjaamista PC:ltä.

Delphi-ohjelmoijille HID-ohjausohjelman kirjoittaminen ei ole ongelma, koska Internetissä on paljon tietoa. Mutta C++ Builder -ohjelmoijille kaikki ei ole niin makeaa, mutta kuten kävi ilmi, kaikki ei ole niin huonoa. Löysin hidlibrary.h-kirjaston Internetistä ja sen avulla työskentelemme HID-laitteen kanssa.

Lataa lähteet ja suorita USB Control.cbproj(C++Builder 2010).

Tiedostossa hillibry.h aivan ylhäällä on viiva

Luodaan lomake Lomakkeessa on yksi CheckListBox loogisten lähtöjen ohjaamiseen, 2 vierityspalkkia PWM-kanavien ohjaamiseen, yksi ListBox loogisten tulojen näyttämiseen, yksi Label ADC-tilan näyttämiseen ja yksi ajastin. Sen pitäisi näyttää tältä:

Nimeä ScrollBars uudelleen muotoiksi ScrollBar_PWM1 ja ScrollBar_PWM2, aseta Max=1023 niiden ominaisuuksiin.

Luodaan rakenne

#pragma-paketti (push, 1)

struct status_t(

unsigned char logical_outputs;

unsigned char logical_inputs;

allekirjoittamaton merkki ADC_DATA;

allekirjoittamaton lyhyt int PWM1;

allekirjoittamaton lyhyt int PWM2;

struct status_t Laitteen tila;

#pragmapaketti (pop)

#pragma-paketti tarvitaan estämään kääntäjää kohdistamasta rakennetta. IN logical_outputs kaikkien loogisten lähtöjen tila tallennetaan bittimuotoiseen tilaan, eli ensimmäinen bitti tallentaa ensimmäisen lähdön tilan, toinen - toisen ja niin edelleen seitsemänteen. Samoin logical_inputs tallentaa loogisten tulojen tilan. IN ADC_DATA ADC-tila tallennetaan, minimiarvo on 0, maksimi on 255. V PWM1 ensimmäisen PWM-lähdön tila tallennetaan (tasainen jännitteensäätö), in PWM2- toisen tila, minimiarvo 0, maksimi - 1023.

PC-ohjelmassa sinun on luettava tämä rakenne mikro-ohjaimesta ja sitten käsiteltävä vastaanotetut tiedot. Uusien lähtöarvojen asettamiseksi sinun on ensin kirjoitettava uudet arvot rakenteeseen ja lähetettävä sitten muuttunut rakenne mikrokontrolleriin. Kun asetat uusia arvoja, sinun on muokattava vain ensimmäinen, 4 ja 5 muokkaus ei vaikuta.

HIDLibrary piilotettu;

Ja lisää connect()-funktio.

Nyt tietoja HID-laitteesta voidaan pyytää käyttämällä hid.ReceiveData-toimintoa, joka määrittää parametriksi osoittimen rakenteeseen, vain ennen pyyntöä on tarkistettava, onko laite kytketty:

Lisätään nyt ohjelmamme (tai lataa vain lähteet, kaikki on siellä valmiina).

Lisää nämä rivit jonnekin koodiin (mieluiten heti rakenteen jälkeen):

Määritä ajastimen ominaisuuksiin Enabled = True, Interval = 500. Kaksoisnapsauta sitä ja kirjoita käsittelijään

if (!connect()) return; // Poistu, jos laitetta ei ole yhdistetty

hid.ReceiveData(&DeviceStatus); // Lue tiedot laitteesta

for (char i = 0; i< 7; i++)

CheckListBox_LogOuts->Checked[i] = CheckBit(DeviceStatus.logical_outputs, i);

ScrollBar_PWM1->Position = Laitteen tila.PWM1;

ScrollBar_PWM2->Position = Laitteen tila.PWM2;

ListBox_LogInputs->Clear();

for (char i = 0; i< 7; i++)

ListBox_LogInputs->Items->Add(" Looginen syöte "+IntToStr(i+1)+" = "+BoolToStr(CheckBit(DeviceStatus.logical_inputs, i)));

Label_ADC->Caption = Laitteen tila.ADC_DATA;

Minusta tässä kaikki on selvää eikä vaadi selityksiä.

Kaksoisnapsauta CheckListBoxia ja kirjoita käsittelijään

Siinä kaikki, voit koota!

Koeajo.

Joten kaikki on valmis: laite on koottu, mikro-ohjain välähtää, tietokoneelle on luotu ohjelma, voit testata sitä.

Liitä laite tietokoneeseen, käynnistä ohjelma. Listaruudun vasemmalla puolella näkyy kaikkien loogisten tulojen tila, jos esimerkiksi logiikkatuloa 1 ei ole oikosuljettu GND:hen, kirjoitetaan "Log. tulo 1 = -1″, jos kytketty, niin "Loki. tulo 1 = 0″. Tässä on näyttö:

ADC-muunnoksen tulos näkyy tämän luetteloruudun alla. Sulje ADC-tulo miinukseen, niin tulos on 0, lähellä + tehoa, tulos on 255. Voit kytkeä tähän potentiometrin tai jotain muuta. ADC-nastan jännite voidaan laskea kaavalla: Jännite_ION/255*ADC_tulos.

Kytke nyt pieni kuorma Logic Output 1:een (LED tai vain volttimittari). Valitse ruutu "Looginen lähtö 1" - merkkivalo syttyy.

Liitä volttimittari ensimmäiseen PWM-kanavaan, käännä liukusäädintä - jännite muuttuu.

Valmistuminen.

Nyt voit käyttää tätä moduulia valaistuksen tai muiden sähkölaitteiden ohjaamiseen. Voit liittää ovikellon painikkeen tai jonkin muun avaimen loogisiin tuloihin. Voit liittää analogisen kosteusanturin, lämpötila-anturin tai fotovastuksen ADC-tuloon (näet onko ulkona yö vai päivä).



Mitä mieltä olet tästä artikkelista?

13-01-2014

ATiny2313

Zakharov Denis, Ukraina

Kuten tiedät, on olemassa riittävä määrä rajapintoja, joiden kautta mikro-ohjain (MCU) voi kommunikoida ulkoisten laitteiden kanssa. Jos sinun on liitettävä MK henkilökohtaiseen tietokoneeseen tai kannettavaan tietokoneeseen, voimme sanoa varmuudella, että on parasta käyttää RS-232 COM-porttiliitäntää.

Syy tälle valinnalle on ilmeinen - melkein kaikissa ohjaimissa on UART-laitteistomoduuleja, joiden avulla voit siirtää tietoja minimaalisella MK-resurssien kulutuksella. Lisäksi on monia hyvin todistettuja ohjelmia, jotka on suunniteltu toimimaan COM-portin kanssa. Koska MK-signaaleilla on TTL-tasot, vaaditaan tasonmuunnin sovittamaan RS-232-liitäntä. Se suoritetaan usein edullisen ja suositun MAX232-sirun perusteella.

Kuva 1.

Esitetty laite (kuva 1) on suunniteltu ohjaamaan laitteita millä tahansa tietokoneella, jossa on USB-portti. Nykyaikaisissa tietokoneissa ja kannettavissa tietokoneissa on useita näitä portteja. Tällä kompleksilla voit ohjata valoa, televisiota ja muita laitteita. Suorituslaitteiden ei välttämättä tarvitse olla tietokoneen välittömässä läheisyydessä.

Laite koostuu melko helposti saavutettavista ja yleisistä elementeistä. Molemmat mikropiirit ovat ATtiny2313-perheen mikro-ohjaimia. Ensimmäinen ohjain on kytketty tietokoneen USB-porttiin ja toimii USB-COM-muodon muuntimena. Toinen muodostaa yhteyden ensimmäiseen ja skannaa jatkuvasti komentoja, jotka lähetetään PC:ltä pääteohjelman Terminal v1.9b kautta.

USB-nastaan ​​2 kytketty vastus R4 kytkee laitteen hidasopeuksiseen LS-tilaan, jonka avulla voit purkaa PC:ltä tulevien viestien salauksen 1,5 Mbit/s nopeudella ohjelman avulla vaihdettaessa.

Vastusten R2 ja R3 avulla ohimenevät prosessit eliminoidaan. Kondensaattori C5 estää impulssikohinaa tehopiirissä. Zener-diodit D1 ja D2 ovat välttämättömiä MK:n ja tietokoneen USB-sisääntulon loogisten tasojen vastaamiseksi. Virheettömän tiedonsiirron mahdollistamiseksi säätimien välillä kvartsiresonaattoreiden taajuuksien tulee olla 12 ja 4 MHz.
Vetovastukset tulee kytkeä /RESET-nastoihin, jotta vältytään myöhemmältä MC:n mielivaltaisesta nollauksesta häiriön ja staattisten jännitteiden vaikutuksesta. Tässä kaaviossa kaikki komennot näkyvät LEDeillä, jotka on liitetty porttiin B. Jos haluat ohjata laitteita, sinun on kytkettävä ohjaimen lähdöt releeseen (kuva 2).

Voit koota laitteen leipälevylle, vaikka se on kuitenkin parempi, täysimittaiselle painetulle piirilevylle. Elementit voidaan sijoittaa esimerkiksi kuvan 3 mukaisesti.

U1-mikrokontrollerin ohjelman kehitti GetChiperin ystävä Bascom-AVR-ympäristössä. USB-väylän kanssa työskentelemiseen käytetään kirjastoa swusb.LBX. Sen avulla USB-protokollan ohjelmistodekoodaus suoritetaan reaaliajassa. Jotta voit käyttää laitetta tietokoneella, sinun on asennettava asianmukaiset ohjaimet kopioimalla ne kiintolevyllesi. Kun muodostat yhteyden ensimmäisen kerran, laite tunnistetaan ja pyytää ohjainta. Seuraavaksi sinun on määritettävä polku tiedostoineen kansioon, ja kaikki toimii.

U2-mikrokontrolleriohjelman kirjoitin AVRStudio-ympäristössä assembly-kielellä. MK-toimintaalgoritmin lohkokaavio on esitetty kuvassa 4. UART-laitteistomoduuli tulee määrittää keskeyttämään tiedon vastaanoton päätyttyä. MK itse ei suorita mitään toimintoja ennen kuin keskeytys tapahtuu. Virrankulutuksen vähentämiseksi voit käyttää lepotilaa, mutta tässä suunnittelussa tämä ei ollut välttämätöntä. Heti kun komennot lähetetään PC-päätteestä, MK aloittaa niiden skannauksen välittömästi. Tällä hetkellä ohjain tukee seuraavaa komentojärjestelmää:

-on1, on2, on3, on4, on5, on6, on7, on8- komennot porttien asettamiseen "log. 1";
-off1, off2, off3, off4, off5, off6, off7, off8- komennot porttien asettamiseen "log. 0";
-ser - asettaa kaikki portit aktiiviseen "loki"-tilaan. 1";
-clr- palauta kaikki portit "log.0"-tilaan.

Kun olet antanut jokaisen komennon, sinun on painettava Enter. Tällä tavalla MK pystyy määrittämään komennon lopun ja aloittamaan sen skannauksen. Ohjain vastaa "ok" jokaiseen oikeaan komentoon. Jos syötät virheellisiä tietoja, "error" palautetaan pääteriville. Esimerkki komennon suorittamisesta on esitetty kuvassa 5.

Laiteohjelmiston versio 1.0. Sulakkeet on asetettava kuvan 6 mukaisesti. Laiteohjelmistosta kehitetään seuraavaa versiota, jossa MK oppii itse ja muuttaa päätteen komentojärjestelmiä.

MK-ohjelmisto, Proteus-virtuaalimalli ja ajuri PC:lle -
Tiedonsiirtoprotokolla MK:n ja PC:n välillä - lataa

Jotta voit kommentoida sivuston materiaaleja ja saada täyden pääsyn foorumillemme, sinun on rekisteröidy .

  • ....itse asiassa haluaisin nähdä yhteyden yhden tietokoneen USB-portin ja toisen tietokoneen COM-portin välillä...tai kolmannen LPT-portin välillä...
  • Kiitos! Kirjoitusvirhe korjattu :)
  • Miksi käyttää 2 MK:ta? Onko Attiny2313:ssa todella vähän salamaa? Vai onko I/O-portteja liian vähän? Okei, voit nähdä, että USB roikkuu INT0/INT1:ssä.
  • Pienitehoisten relekäämien resistanssi on noin 100-200 ohmia, kun ei oteta huomioon kyllästettyä transistoria (tämä ei ole käynnistin tai kontaktori). Joten 50-200 mA sopiva kytkin ei pelkää. Materiaali on erittäin mielenkiintoinen MK:n liittämisessä USB:hen ilman liitäntäsiruja ja ilman laitteisto-USB:n läsnäoloa MK:n rakenteessa. Mutta kun otetaan huomioon alkuperäisen lähteen http://www.recursion.jp/avrcdc/cdc-232.html, kahdesta MK:sta, tavoitteet ja tavoitteet, toinen suorittaa edelleen USB-COM-muuntimen toimintoja. Ja erittäin halpa muuntaja, mikä on varmasti miellyttävää.
  • Tässä on mielenkiintoinen kansalainen, joka jäi kiinni ”jaloista tavoista”, lempinimestään päätellen. Mistä ääripäästä puhumme? Näyttää siltä, ​​​​että materiaalissa ei edes mainita releen tai transistorien tyyppiä. Ja jos rele saa virtaa 5 V USB: stä, haluaisin tietysti minimoida isäntätietokoneen kulutuksen. Tämä voidaan saavuttaa käyttämällä optoerottimia ja lisävirtalähdettä releeseen kuormituspuolella, mikä monimutkaistaa piiriä. Tai pari muuta vaihtoehtoa. Onko artikkelin painopiste optimoinnissa? Kirjoittaja saavutti tavoitteensa ja tekee oikein, kun ei ole lähettänyt tiettyä maksua. Jollekin, joka toistaa, tämä solmu riittää.
  • Kyllä, artikkeli on edelleen sama... mutta onko se sen arvoista? Halusin myös kommentoida jotain heti kun luin sen, mukaan lukien diodi. Mutta täällä et voi olla anonyymi. Siksi AVR-CDC:n kirjoittaja? En huomannut, että DTR-, DTS-, RTS-, CTS-signaaleja käytetään jossain piirissä. Eikö V-USB riitä? Olemme jo kirjoittaneet kahdesta "tiilestä" edellä; Ja diodista on jo korjattu, kiitos Buddha! Diodia tarvitaan suojaamaan transistoria relekäämin itseinduktiojännitepulssilta virran avautuessa. Muuten, yksi toteutus jäi mieleen. Artikkeli oli Radio-lehdessä, mutta se löytyi myös netistä, jos kiinnostaa, voit katsoa.



2024, leally.ru - Opas tietokoneiden ja Internetin maailmaan