Turinys:

MCP41HVX1 skaitmeninis „Arduino“potenciometras: 10 žingsnių (su nuotraukomis)
MCP41HVX1 skaitmeninis „Arduino“potenciometras: 10 žingsnių (su nuotraukomis)

Video: MCP41HVX1 skaitmeninis „Arduino“potenciometras: 10 žingsnių (su nuotraukomis)

Video: MCP41HVX1 skaitmeninis „Arduino“potenciometras: 10 žingsnių (su nuotraukomis)
Video: #11 LM35 и промышленный датчик температуры 4–20 мА для герметизации ПЛК Arduino 2024, Liepa
Anonim
MCP41HVX1 skaitmeninis „Arduino“potenciometras
MCP41HVX1 skaitmeninis „Arduino“potenciometras

MCP41HVX1 skaitmeninių potenciometrų (dar žinomų kaip „DigiPots“) šeima yra prietaisai, imituojantys analoginio potenciometro funkciją ir valdomi per SPI. Pavyzdinė programa būtų pakeisti jūsų stereo garsumo rankenėlę į „DigiPot“, valdomą „Arduino“. Tai daroma prielaida, kad jūsų stereo garsumo valdymas yra potenciometras, o ne sukamasis kodavimo įrenginys.

MCP41HVX1 šiek tiek skiriasi nuo kitų „DigiPots“, nes jie turi padalintą bėgelį. Tai reiškia, kad nors pats „DigiPot“gali būti valdomas naudojant „Arduino“išėjimo įtampą, signalas, perduodamas per rezistorių tinklą, veikia su daug didesniu įtampos diapazonu (iki 36 voltų). Dauguma „DigiPots“, kuriuos galima valdyti 5 voltais, yra ribojami iki 5 voltų visame rezistorių tinkle, o tai riboja jų naudojimą modifikuojant esamą grandinę, veikiančią aukštesne įtampa, pvz., Tai, ką galite rasti automobilyje ar valtyje.

MCP41HVX1 šeimą sudaro šie lustai:

  • MCP41HV31-104E/ST - 100 000 omų (7 bitai)
  • MCP41HV31-503E/ST - 50k omų (7 bitai)
  • MCP41HV31-103E/ST - 10 k omų (7 bitai)
  • MCP41HV31-502E/ST - 5 k ohm (7 bitai)
  • MCP41HV31-103E/MQ - 10k omų (7 bitai)
  • MCP41HV51-104E/ST - 100 000 omų (8 bitai)
  • MCP41HV51-503E/ST - 50 000 omų (8 bitai)
  • MCP41HV51T -503E/ST - 50 000 omų (8 bitai)
  • MCP41HV51-103E/ST - 10k omų (8 bitai)
  • MCP41HV51-502E/ST - 5 k ohm (8 bitai)

7 bitų lustai rezistorių tinkle leidžia atlikti 128 žingsnius, o 8 bitų lustai - 256 žingsnius rezistorių tinkle. Tai reiškia, kad 8 bitų mikroschemos leidžia dvigubai daugiau pasipriešinimo verčių iš potenciometro.

Prekės

  • Iš aukščiau pateikto sąrašo pasirinkite tinkamą MCP41HVX1 mikroschemą. Jūsų pasirinktas lustas yra pagrįstas jūsų programai reikalingu atsparumo diapazonu. Ši instrukcija yra pagrįsta TSSOP 14 lusto paketo versijomis, todėl kartu su šiuo vadovu pasirinkite bet kurį lustą iš sąrašo, išskyrus MCP41HV31-103E/MQ, kuris yra QFN paketas. Rekomenduojama gauti keletą papildomų žetonų, nes susidūriau su blogais ir jie yra nebrangūs. Aš užsisakiau savo iš „Digi-Key“.
  • Antrinis nuolatinės srovės maitinimo šaltinis, kuris yra nuo 10 iki 36 voltų. Mano pavyzdyje aš naudoju 17 voltų sienos karpų nuolatinės srovės maitinimo šaltinį iš senų maitinimo šaltinių dėžutės.
  • Litavimo srautas
  • Lituoklis
  • Lituoklis
  • Pincetai ir / arba dantų krapštukas
  • TSSOP 14 kontaktų pertraukimo plokštė - „Amazon“- „QLOUNI 40pcs PCB Proto Boards SMD to DIP Adapter Plate Converter TQFP (32 44 48 64 84 100) SOP SSOP TSSOP 8 10 14 16 20 23 24 28 (dydžių asortimentas. Daug prieinama keliems projektams)
  • Skaičiuokite 2–7 kontaktų antraštes - „Amazon“- DEPEPE 30 vnt. 40 kontaktų 2,54 mm vyriškos ir moteriškos kaiščių antraštės, skirtos „Arduino Prototype Shield“
  • „Arduino Uno“- jei neturite, siūlyčiau gauti oficialią lentą. Man pasisekė su neoficialiomis versijomis. „Digi -Key“- „Arduino Uno“
  • Kelių metrų matuoklis, kuris gali matuoti pasipriešinimą ir patikrinti tęstinumą
  • Jumperio laidai
  • Bandomoji Lenta
  • Labai rekomenduojamas, bet nebūtinai reikalingas laisvų rankų didintuvas, nes TSSOP lustai yra labai maži. Lituoti ir išbandyti naudojant multimetrą jums reikės abiejų rankų. Ant receptinių akinių naudoju porą „Harbor Freight 3x Clip-On“didinamųjų didintuvų ir laisvai stovintį šarnyrinį didinamąjį stiklą. Kitos galimybės yra nebrangių skaitytojų pora nuolaidų ar dolerių parduotuvėje. Jūs netgi galite dėvėti skaitytuvus virš receptinių akinių arba gauti dvi skaitytojų poras (vieną iš kitos), priklausomai nuo to, koks geras (ar blogas) jūsų regėjimas. Jei dvigubai užsidėsite akinius, būkite atsargūs, nes jūsų regėjimo diapazonas bus labai ribotas, todėl prieš darydami ką nors kitą, būtinai juos nuimkite. Lituodami taip pat būkite ypač atsargūs.
  • Kitas nereikalingas, bet labai rekomenduojamas elementas yra uosto krovinių pagalbos rankos. Tai aligatoriaus spaustukai, pritvirtinti prie metalinio pagrindo. Tai galima rasti iš daugelio kitų pardavėjų internete, taip pat su skirtingais prekės ženklais. Tai labai naudinga, kai lituojama mikroschema ant pertraukimo plokštės.

1 žingsnis: TSSOP mikroschemos litavimas prie „Breakout Board“

Image
Image
TSSOP lusto litavimas prie „Breakout Board“
TSSOP lusto litavimas prie „Breakout Board“
TSSOP lusto litavimas prie „Breakout Board“
TSSOP lusto litavimas prie „Breakout Board“

TSSOP lustą reikia lituoti prie pertraukimo plokštės, kad galėtumėte jį naudoti su duonos lenta arba tiesiogiai su „DuPont“trumpikliais. Prototipų kūrimui jie yra per maži, kad galėtų tiesiogiai dirbti.

Dėl mažo dydžio TSSOP lusto litavimas gali būti sudėtingiausia šio projekto dalis, tačiau žinant, kaip tai padaryti, kiekvienas gali tai padaryti. Yra keletas technikų, aš padariau žemiau pateiktą.

Strategija yra tai, kad lydmetalis pirmiausia nukreipiamas į pertraukimo plokštės pėdsakus.

  • Nedėkite mikroschemos prie pertraukimo plokštės, kol nebus nurodyta.
  • Pirmas dalykas, kurį reikia padaryti, yra uždėti daug srauto ant pertraukimo plokštės.
  • Tada, naudodami lituoklį, pašildykite šiek tiek lituoklio ir padėkite jį ant pėdsakų.
  • Ant lydmetalio uždėkite šiek tiek daugiau srauto ant pėdsakų, taip pat ant lusto kojų apačios.
  • Padėkite lustą ant pėdsakų, kur ką tik įdėjote lydmetalį ir srautą. Pincetai ar dantų krapštukas yra geri įrankiai, skirti tiksliai nustatyti lustą. Būtinai tinkamai sulygiuokite lustą, kad visi kaiščiai būtų tiesiai virš pėdsakų. Vieną mikroschemos kaištį sulygiuokite su atspaudo plokštės pirmojo kaiščio žymėjimu.
  • Naudodami lituoklį įkaitinkite vieną iš lustų gale esančių kaiščių (1, 7, 8 arba 14 smeigtukai), įspausdami jį į pėdsaką. Lydmetalis, kurį anksčiau uždėjote, ištirps ir tekės aplink kaištį.

Žiūrėkite šio žingsnio vaizdo įrašą, kad pamatytumėte, kaip lituoti lustą prie pertraukimo plokštės. Vienas mano pasiūlymas skiriasi nuo vaizdo įrašo: lituodami pirmąjį kaiščio stabdiklį ir dar kartą patikrinkite, ar sulygiuotas visas lustas, kad įsitikintumėte, jog visi kaiščiai vis dar yra ant pėdsakų. Jei esate šiek tiek sutrikęs, šiuo metu tai lengva ištaisyti. Kai jaučiatės patogiai, viskas atrodo gerai, lituokite kitą kaištį priešingame lusto gale ir dar kartą patikrinkite lygiavimą. Jei tai atrodo gerai, eikite į priekį ir atlikite likusius kaiščius.

Lituodami visus kaiščius, vaizdo įraše siūloma naudoti padidinamąjį stiklą, kad patikrintumėte savo ryšius. Geresnis metodas yra naudoti multimetrą tęstinumui patikrinti. Vieną zondą turėtumėte uždėti ant kaiščio kojos, o kitą - ant lentos dalies, kurioje lituosite antraštę (žr. Antrą šio žingsnio paveikslėlį). Taip pat turėtumėte patikrinti gretimus kaiščius, kad įsitikintumėte, jog jie nėra sujungti dėl lydmetalio sutrumpinus kelis kaiščius. Pavyzdžiui, jei tikrinate 4 kaištį, taip pat patikrinkite 3 ir 5 kaiščius. 4 kaištis turėtų rodyti tęstinumą, o 3 ir 5 kaiščiai turėtų rodyti atvirą grandinę. Vienintelė išimtis - valytuvas P0W gali rodyti ryšį su P0A arba P0B.

PATARIMAI:

  • Kaip minėta medžiagų sąraše, šiame žingsnyje labai padės turimas padidinimas, dėl kurio rankos bus laisvos.
  • Naudojant aligatoriaus spaustuką, padedantį rankoms laikyti pertraukos lentą, viskas šiek tiek lengviau lituojama.
  • Užrašykite mikroschemos numerį ant maskavimo juostos gabalo ir priklijuokite prie pertraukos lentos apačios (žr. Trečią šio skyriaus paveikslėlį). Jei ateityje jums reikės atpažinti lustą, daug lengviau nuskaityti maskavimo juostą. Mano asmeninė patirtis rodo, kad šiek tiek pasikeitė mikroschema ir numeris visiškai išnyko, todėl turiu tik juostą.

2 žingsnis: laidų prijungimas

Laidai
Laidai

Turėsite prijungti „Arduino“ir „Digipot“, kaip parodyta elektros instaliacijos schemoje. Naudojami kaiščiai yra pagrįsti „Arduino Uno“išdėstymu. Jei naudojate kitą „Arduino“, žr. Paskutinį žingsnį.

3 veiksmas: gaukite „Arduino“biblioteką, kad galėtumėte valdyti „DigiPot“

„Arduino“bibliotekos gavimas „DigiPot“valdymui
„Arduino“bibliotekos gavimas „DigiPot“valdymui

Norėdami supaprastinti programavimą, sukūriau biblioteką, kurią galima rasti „Github“. Eikite į github.com/gregsrabian/MCP41HVX1, kad gautumėte MCP41HVX1 biblioteką. Norėsite pasirinkti mygtuką „Klonuoti“ir tada pasirinkti „Atsisiųsti ZIP“. Būtinai išsaugokite „Zip“failą toje vietoje, kur žinote, kur jis yra. Stalinis kompiuteris arba atsisiuntimų aplankas yra patogios vietos. Importavę jį į „Arduino IDE“, galite ištrinti jį iš atsisiuntimo vietos.

4 veiksmas: naujos bibliotekos importavimas į „Arduino IDE“

Naujos bibliotekos importavimas į „Arduino IDE“
Naujos bibliotekos importavimas į „Arduino IDE“

„Arduino IDE“eikite į „Sketch“, tada pasirinkite „Include Library“, tada pasirinkite „Add ZIP Library..“. Bus parodytas naujas dialogo langas, leidžiantis pasirinkti. ZIP failą, kurį atsisiuntėte iš „GitHub“.

5 veiksmas: bibliotekos pavyzdžiai

Bibliotekos pavyzdžiai
Bibliotekos pavyzdžiai

Pridėję naują biblioteką pastebėsite, kad jei eisite į „Failas“, tada pasirinkite „Pavyzdžiai“, tada - „Pavyzdžiai iš pasirinktinių bibliotekų“, dabar sąraše pamatysite MCP41HVX1 įrašą. Jei užvesite pelės žymeklį virš šio įrašo, pamatysite WLAT, Wiper Control ir SHDN, kurie yra pavyzdiniai eskizai. Šioje instrukcijoje naudosime valytuvo valdymo pavyzdį.

6 žingsnis: išnagrinėkite šaltinio kodą

#include "MCP41HVX1.h" // Apibrėžkite „Arduino“naudojamus kaiščius#define WLAT_PIN 8 // Jei nustatyta į „Low“, perkelkite ir naudokite „#define SHDN_PIN 9 // Nustatykite aukštą, kad įjungtumėte rezistorių tinklą#define CS_PIN 10 // Nustatykite žemą, kad pasirinktumėte mikroschemą SPI // Apibrėžkite kai kurias bandomosios programos vertes#define FORWARD true#define REVERSE false#define MAX_WIPER_VALUE 255 // Didžiausia valytuvo vertė MCP41HVX1 Digipot (CS_PIN, SHDN_PIN, WLAT_PIN); void setup () { Serial.begin (9600); Serial.print ("Pradinė pozicija ="); Serial.println (Digipot. WiperGetPosition ()); // Rodyti pradinę vertę Serial.print ("Nustatyti valytuvo padėtį ="); Serial.println (Digipot. WiperSetPosition (0)); // Nustatykite valytuvo padėtį į 0} void loop () {static bool bDirection = FORWARD; int nWiper = Digipot. WiperGetPosition (); // Gaukite dabartinę valytuvo padėtį // Nustatykite kryptį. if (MAX_WIPER_VALUE == nValo valytuvas) {bKryptis = ATSILIEPIMAS; } else if (0 == nValo valytuvas) {bKryptis = Į priekį; } // Perkelkite skaitmeninio valytuvo valytuvą, jei (FORWARD == bDirection) {nWiper = Digipot. WiperIncrement (); // Kryptis į priekį Serial.print ("padidėjimas -"); } else {nWiper = Digipot. WiperDecrement (); // Kryptis yra atgal Serial.print ("Decrement -"); } Serial.print ("Valytuvo padėtis ="); Serial.println (nWiper); uždelsimas (100);}

7 žingsnis: supraskite šaltinio kodą ir vykdykite eskizą

Image
Image

Šį šaltinio kodą galite rasti „Arduino IDE“, eidami į pavyzdžių meniu ir suradę ką tik įdiegtą MCP41HVX1 (žr. Ankstesnį veiksmą). MCP41HVX1 atidarykite „Wiper Control“pavyzdį. Geriausia naudoti kodą, kuris yra įtrauktas į biblioteką, tarsi būtų ištaisyti klaidos, kurios bus atnaujintos.

„Wiper Control“pavyzdys rodo šias API iš MCP41HVX1 bibliotekos:

  • Konstruktorius MCP41HVX1 (int nCSPin, int nSHDNPin, int nWLATPin)
  • WiperGetPosition ()
  • WiperSetPosition (baitas pagal valytuvą)
  • WiperIncrement ()
  • WiperDecrement ()

Jei naudojate 7 bitų mikroschemą, šaltinio kodo pavyzdyje būtinai nustatykite MAX_WIPER_VALUE į 127. Numatytasis yra 255, kuris skirtas 8 bitų lustams. Jei atliksite mėginio pakeitimus, „Arduino IDE“privers jus pasirinkti naują projekto pavadinimą, nes neleis atnaujinti pavyzdžio kodo. Tai yra laukiamas elgesys.

Kiekvieną kartą per kilpą valytuvas padidės vienu žingsniu arba sumažės vienu žingsniu, priklausomai nuo jo krypties. Jei kryptis pakyla ir ji pasiekia MAX_WIPER_VALUE, ji pakeis kryptį. Jei jis pasieks 0, jis vėl pasikeis.

Vykdant eskizą serijinis monitorius atnaujinamas pagal dabartinę valytuvo padėtį.

Norėdami pamatyti pasipriešinimo pasikeitimą, turėsite naudoti multimetrą, kad nuskaitytumėte omus. Uždėkite skaitiklio zondus ant P0B (11 kaiščio) ir P0W (12 kaiščio) ant digipoto, kad pamatytumėte, kaip keičiasi varža, kai programa veikia. Atkreipkite dėmesį, kad pasipriešinimo vertė nesumažės iki nulio, nes mikroschemoje yra tam tikras vidinis pasipriešinimas, tačiau jis bus artimas 0 omų. Greičiausiai jis taip pat nepasieks didžiausios vertės, bet bus artimas.

Žiūrėdami vaizdo įrašą matote, kaip multimetras rodo, kad pasipriešinimas didėja, kol pasiekia maksimalią vertę, o tada pradeda mažėti. Vaizdo įraše naudojamas lustas yra MCP41HV51-104E/ST, kuris yra 8 bitų lustas, kurio didžiausia vertė yra 100 000 omų.

8 veiksmas: trikčių šalinimas

Jei viskas neveikia taip, kaip tikėtasi, reikia atkreipti dėmesį į keletą dalykų.

  • Patikrinkite laidus. Viskas turi būti tinkamai prijungta. Įsitikinkite, kad naudojate visą prijungimo schemą, kaip nurodyta šioje instrukcijoje. Yra alternatyvių prijungimo schemų, pateiktų šios instrukcijos README, bibliotekos šaltinio kode ir žemiau, tačiau laikykitės to, kas aprašyta aukščiau esančiame laidų žingsnyje.
  • Įsitikinkite, kad kiekvienas jūsų skaitmeninio puodo kaištis yra lituojamas prie pertraukimo plokštės. Naudoti vizualinį patikrinimą nepakanka. Įsitikinkite, kad patikrinote naudodami savo multimetro tęstinumo funkciją, kad įsitikintumėte, jog visi skaitmeninio kaiščio kaiščiai yra elektriškai prijungti prie pertraukimo plokštės ir ar nėra kryžminio kaiščių sujungimo iš lydmetalio, kuris galėjo susilieti su pėdsakais.
  • Jei serijinis monitorius rodo, kad, kai paleidžiate eskizą, valytuvo padėtis keičiasi, bet pasipriešinimo vertė nesikeičia, tai rodo, kad WLAT arba SHDN netinkamai jungiasi prie WLAT arba SHDN pertraukimo plokštės arba trumpiklių. nėra tinkamai prijungti prie „Arduino“.
  • Įsitikinkite, kad naudojate 10–36 voltų nuolatinės srovės maitinimo šaltinį.
  • Įsitikinkite, kad 10–36 voltų maitinimo šaltinis veikia, išmatuodami įtampą savo multimetru.
  • Pabandykite naudoti originalų eskizą. Jei atlikote pakeitimus, galbūt įvedėte klaidą.
  • Jei nė vienas trikčių šalinimo veiksmas nepadėjo išbandyti kito skaitmeninio lusto. Tikimės, kad nusipirkote kelis ir vienu metu lituosite juos prie TSSOP pertraukos plokštės, todėl turėsite tik pakeisti vieną kitą. Turėjau blogą lustą, kuris sukėlė man nemažai nusivylimo ir tai buvo pataisymas.

9 veiksmas: vidiniai elementai ir papildoma informacija

Alternatyvi elektros instaliacijos schema
Alternatyvi elektros instaliacijos schema

Tolimesnė informacija:

Daugiau informacijos rasite MCP41HVX1 duomenų lape.

Išsamią visą MCP41HVX1 bibliotekos dokumentaciją rasite README.md faile, kuris yra bibliotekos atsisiuntimo dalis. Šis failas yra užrašytas pažymėtu ženklu ir gali būti peržiūrėtas tinkamai suformatuotas naudojant „Github“(žiūrėkite puslapio apačioje) arba naudojant pažymėtą peržiūros redaktorių.

Ryšiai tarp „Arduino“ir „DigiPot“:

„Arduino“bendrauja su „DigiPot“naudodamas SPI. Bibliotekai išsiuntus valytuvo padėties komandą, pvz., „WiperIncrement“, „WiperDecrement“ar „WiperSetPosition“, ji paskambina „WiperGetPosition“, kad gautų valytuvo padėtį iš lusto. Vertė, gauta iš šių „Wiper“komandų, yra valytuvo padėtis, kokia mikroschema ją mato, ir ją galima naudoti norint patikrinti, ar valytuvas persikėlė į numatytą vietą.

Išplėstinės funkcijos (WLAT ir SHDN)

Šios išplėstinės funkcijos neparodytos „Wiper Control“pavyzdyje. Bibliotekoje yra API, skirtos valdyti WLAT ir SHDN. Taip pat yra biblioteka su WLAT ir SHDN eskizais (toje pačioje vietoje kaip ir „Wiper Control“eskizas).

SHDN (išjungimas)

SHDN naudojamas išjungti arba įjungti rezistorių tinklą. Nustačius SHDN žemą, išjungiamas ir aukštas įgalinamas rezistorių tinklas. Kai rezistorių tinklas yra išjungtas, P0A („DigiPot“kaištis 13) atjungiamas, o P0B („DigiPot“kaištis 11) prijungiamas prie P0W („DigiPot“kaištis 12). Tarp P0B ir P0W bus nedidelis pasipriešinimas, todėl jūsų skaitiklis neskaitys 0 omų.

Jei jūsų programai nereikia valdyti SHDN, galite ją tiesiogiai prijungti prie HIGH (žr. Kitą prijungimo schemą). Turėsite naudoti teisingą konstruktorių arba perduoti konstruktoriui MCP41HVX1_PIN_NOT_CONFIGURED, kad nurodytumėte, jog SHDN yra laidinis. Svarbu pažymėti, kad jei sekate pavyzdį, turite naudoti visą prijungimo schemą (žr.

WLAT (rašymo fiksatorius)

Vidinė architektūra yra du komponentai viename luste. Vienas iš komponentų yra SDI sąsaja ir registras, skirtas valytuvų vertei laikyti. Kitas komponentas yra pats rezistorių tinklas. WLAT sujungia abu vidinius komponentus.

Kai WLAT yra nustatytas kaip LOW, bet kokia nustatyta valytuvo padėties komandų informacija perduodama tiesiai į rezistorių tinklą ir atnaujinama valytuvų padėtis.

Jei WLAT yra nustatytas į HIGH, per SPI perduodama valytuvo padėties informacija yra laikoma vidiniame registre, bet neperduodama rezistorių tinklui, todėl valytuvų padėtis nebus atnaujinta. Nustačius WLAT į LOW, vertė perkeliama iš registro į rezistorių tinklą.

WLAT yra naudinga, jei naudojate kelis skaitmeninius taškus, kuriuos reikia sinchronizuoti. Strategija yra nustatyti WLAT į HIGH visuose skaitmeniniuose taškuose ir tada nustatyti visų mikroschemų valytuvo vertę. Kai valytuvų vertė buvo išsiųsta visiems skaitmeniniams taškams, WLAT visuose įrenginiuose vienu metu gali būti nustatytas kaip LOW, kad jie visi tuo pačiu metu judintų valytuvus.

Jei valdote tik vieną „DigiPot“arba turite kelis, bet jų nereikia sinchronizuoti, greičiausiai šios funkcijos neprireiks, todėl galite tiesiogiai prijungti WLAT prie LOW (žr. Kitą prijungimo schemą). Turėsite naudoti teisingą konstruktorių arba perduoti konstruktoriui MCP41HVX1_PIN_NOT_CONFIGURED, kad nurodytumėte, jog WLAT yra laidinis. Svarbu pažymėti, kad jei sekate pavyzdį, turite naudoti visą prijungimo schemą (žr.

10 veiksmas: alternatyvi elektros instaliacijos schema

Laidai

Jūs turite galimybę prijungti WLAT iš digpoto tiesiai prie LOW / GND, o ne prisijungti prie skaitmeninio kaiščio. Jei tai padarysite, negalėsite valdyti WLAT. Taip pat galite prijungti SHDN tiesiogiai prie HIGH, o ne prie skaitmeninio kaiščio. Jei tai padarysite, negalėsite valdyti SHDN.

WLAT ir SHDN yra nepriklausomi vienas nuo kito, todėl galite prijungti vieną laidą ir kitą prijungti prie skaitmeninio kaiščio, kietą laidą abu arba prijungti abu prie skaitmeninių kaiščių, kad juos būtų galima valdyti. Jei norite prijungti laidus prie prijungtų prie valdomų skaitmeninių kaiščių, žr. Alternatyvią elektros instaliacijos schemą.

Konstruktoriai

MCP41HVX klasėje yra trys konstruktoriai. Mes aptarsime du iš jų. Visi jie yra dokumentuoti README.md faile, taigi, jei domitės trečiuoju konstruktoriumi, žiūrėkite dokumentus.

  • MCP41HVX1 (int nCSPin) - naudokite šį konstruktorių tik tuo atveju, jei tiek WLAT, tiek SHDN yra prijungti.
  • MCP41HVX1 (int nCSPin, int nSHDNPin, int nWLATPin) - naudokite šį konstruktorių, jei WLAT arba SHDN yra laidiniai. Įveskite pastovią MCP41HVX1_PIN_NOT_CONFIGURED, jei kaištis yra laidinis, arba kaiščio numerį, jei jis prijungtas prie skaitmeninio kaiščio.

„nCSPin“turi būti prijungtas prie skaitmeninio kaiščio. Neteisinga perduoti „MCP41HVX1_PIN_NOT_CONFIGURED“nCSPin konstruktoriui.

Ką daryti, jei nenaudoju „Arduino Uno“?

„Arduino“naudoja SPI, kad galėtų bendrauti su digipotu. SPI kaiščiai yra specifiniai „Arduino“plokštės kaiščiai.„Uno“SPI kaiščiai yra:

  • SCK - 13 kaištis „Uno“, prijungtas prie skaitmeninio taško 2 kaiščio
  • MOSI - „Uno“11 kaištis prijungtas prie skaitmeninio taško 4 kaiščio
  • MISO - „Uno“12 kaištis prijungtas prie skaitmeninio taško 5 kaiščio

Jei naudojate „Arduino“, kuris nėra „Uno“, turėsite išsiaiškinti, kuris kaištis yra SCK, MOSI ir MISO, ir prijungti juos prie skaitmeninio taško.

Kiti eskizui naudojami kaiščiai yra įprasti skaitmeniniai kaiščiai, todėl bet koks skaitmeninis kaištis veiks. Turėsite pakeisti eskizą, kad nurodytumėte smeigtukus, kuriuos pasirinkote naudojamoje „Arduino“lentoje. Įprasti skaitmeniniai kaiščiai yra:

  • CS - „Uno“10 kaištis prijungtas prie skaitmeninio taško 3 kaiščio (atnaujinkite eskizo CS_PIN naują reikšmę)
  • WLAT - „Uno“8 kaištis prijungtas prie skaitmeninio taško 6 kaiščio (atnaujinkite eskizo WLAT_PIN naują vertę)
  • SHDN - „Uno“9 kaištis prijungtas prie skaitmeninio taško 7 kaiščio (atnaujinkite eskizo SHDN_PIN naują reikšmę)

Rekomenduojamas: