Агуулгын хүснэгт:

Arduino -д зориулсан MCP41HVX1 дижитал потенциометр: 10 алхам (зурагтай)
Arduino -д зориулсан MCP41HVX1 дижитал потенциометр: 10 алхам (зурагтай)

Видео: Arduino -д зориулсан MCP41HVX1 дижитал потенциометр: 10 алхам (зурагтай)

Видео: Arduino -д зориулсан MCP41HVX1 дижитал потенциометр: 10 алхам (зурагтай)
Видео: БЛОК УПРАВЛЕНИЯ ARDUINO ДЛЯ РУЛЕВОГО КОЛЕСА DIY 2024, Долдугаар сарын
Anonim
Arduino -д зориулсан MCP41HVX1 дижитал потенциометр
Arduino -д зориулсан MCP41HVX1 дижитал потенциометр

MCP41HVX1 гэр бүлийн дижитал потенциометр (aka DigiPots) нь аналог потенциометрийн функцийг дуурайдаг төхөөрөмж бөгөөд SPI -ээр хянагддаг төхөөрөмж юм. Жишээ програм нь таны стерео дээрх дууны товчлуурыг Arduino удирддаг DigiPot -ээр солих болно. Энэ нь таны стерео дээрх дууны хяналт нь потенциометр бөгөөд эргэлддэг кодлогч биш юм.

MCP41HVX1 нь бусад DigiPots -оос ялгардаг төмөр хийцтэй гэдгээрээ арай өөр юм. Энэ нь DigiPot -ийг Arduino -ийн гаралтын хүчдэлээр хянах боломжтой боловч эсэргүүцлийн сүлжээгээр дамжуулж буй дохио нь илүү өндөр хүчдэлтэй (36 вольт хүртэл) ажилладаг гэсэн үг юм. 5 вольтоор хянах боломжтой ихэнх DigiPots нь резисторын сүлжээнд 5 вольтоор хязгаарлагддаг бөгөөд энэ нь машин эсвэл завин дээрээс олж болох зүйл гэх мэт илүү өндөр хүчдэлээр ажилладаг одоо байгаа хэлхээг шинэчлэхэд ашиглах боломжийг хязгаарладаг.

MCP41HVX1 гэр бүл нь дараах чипүүдээс бүрдэнэ.

  • MCP41HV31-104E/ST - 100k ом (7 бит)
  • MCP41HV31-503E/ST - 50k ом (7 бит)
  • MCP41HV31-103E/ST - 10 к ом (7 бит)
  • MCP41HV31-502E/ST - 5к ом (7 бит)
  • MCP41HV31-103E/MQ - 10k ом (7 бит)
  • MCP41HV51-104E/ST - 100k ом (8 бит)
  • MCP41HV51-503E/ST - 50k ом (8 бит)
  • MCP41HV51T -503E/ST - 50k ом (8 бит)
  • MCP41HV51-103E/ST - 10 к ом (8 бит)
  • MCP41HV51-502E/ST - 5к ом (8 бит)

7 битийн чип нь резисторын сүлжээнд 128 алхам, 8 битийн чип нь эсэргүүцлийн сүлжээнд 256 алхам хийх боломжийг олгодог. Энэ нь 8 битийн чип нь потенциометрийн эсэргүүцлийн утгыг хоёр дахин их байлгах боломжийг олгодог гэсэн үг юм.

Хангамж

  • Дээрх жагсаалтаас тохирох MCP41HVX1 чипийг сонгоно уу. Таны сонгосон чип нь таны хэрэглээнд шаардагдах эсэргүүцлийн хүрээ дээр үндэслэсэн болно. Энэхүү зааварчилгаа нь чипийн TSSOP 14 багцын хувилбар дээр суурилсан тул энэхүү гарын авлагад нийцүүлэн QFN багц болох MCP41HV31-103E/MQ-ээс бусад чипийг сонгоно уу. Муу биетэй таарсан тул хямд үнэтэй байгаа тул хэд хэдэн нэмэлт чип авахыг зөвлөж байна. Би Digi-Key-ээс захиалга өгсөн.
  • 10 -аас 36 вольтын хоёрдогч тогтмол гүйдлийн тэжээл. Миний жишээн дээр би хуучин цахилгаан хангамжийн хайрцагнаасаа 17 вольтын ханын warts DC тэжээлийг ашигладаг.
  • Гагнуурын урсгал
  • Гагнуурын төмөр
  • Гагнуур
  • Хясаа ба / эсвэл шүдний оо
  • TSSOP 14 зүү таслах самбар - Амазон - 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 (Хэмжээний төрөл. Олон төсөлд маш их боломжтой)
  • 2 - 7 зүү толгойн тоог тодорхойлох - Амазон - DEPEPE 30 ширхэг 40 зүү 2.54мм эрэгтэй, эмэгтэй зүү толгойнууд нь Arduino прототип бамбайд зориулагдсан.
  • Arduino Uno - хэрэв танд байхгүй бол би албан ёсны зөвлөл авахыг санал болгож байна. Албан бус хувилбаруудтай би азтай байсан. Digi -Key - Arduino Uno
  • Олон метр нь эсэргүүцлийг хэмжиж, тасралтгүй байдлыг шалгаж чаддаг
  • Холбогч утас
  • Талхны самбар
  • TSSOP чипүүд маш жижиг тул гараар томруулдаг шилийг ашиглахыг зөвлөж байна. Олон метрээр гагнах, туршихын тулд танд хоёр гар хэрэгтэй болно. Би жороор олгодог шилнийхээ дээр Harbor Freight 3x Clip-On томруулдаг шил, чөлөөтэй зогсож буй томруулдаг шил ашигладаг. Бусад сонголтууд бол хямдралтай эсвэл долларын дэлгүүрээс хямд үнэтэй уншигчид юм. Та алсын харааг хэр сайн (эсвэл муу) байгаагаас шалтгаалан уншигчийг жороор бичсэн шилнийхээ дээгүүр зүүх эсвэл хоёр хос уншигч авах боломжтой. Хэрэв та нүдний шил зүүж байгаа бол болгоомжтой байгаарай, учир нь таны алсын хараа маш хязгаарлагдмал байх тул өөр зүйл хийхээсээ өмнө шилээ тайлах хэрэгтэй. Мөн гагнуур хийхдээ маш болгоомжтой байх хэрэгтэй.
  • Шаардлагагүй боловч маш их зөвлөдөг өөр нэг зүйл бол Боомтын ачаа тусламжийн гар юм. Эдгээр нь төмөр сууринд бэхлэгдсэн матрын хавчаар юм. Эдгээрийг интернет дээрх бусад олон үйлдвэрлэгчдээс болон өөр өөр брэндийн нэрээр авах боломжтой. Эдгээр нь чипийг таслах самбар дээр гагнах үед маш их тустай байдаг.

Алхам 1: TSSOP чипийг таслах самбар руу гагнах

Image
Image
TSSOP чипийг таслах самбар руу гагнах
TSSOP чипийг таслах самбар руу гагнах
TSSOP чипийг таслах самбар руу гагнах
TSSOP чипийг таслах самбар руу гагнах

TSSOP чипийг таслах самбар дээр гагнах шаардлагатай бөгөөд ингэснээр та үүнийг талхны хавтан эсвэл шууд DuPont холбогчтой хамт ашиглах боломжтой болно. Прототип хийх ажлын хувьд тэд шууд ажиллахад хэтэрхий жижиг юм.

Жижиг хэмжээтэй тул TSSOP чипийг гагнах нь энэ төслийн хамгийн хэцүү хэсэг байж болох ч үүнийг хийх заль мэхийг мэдэх нь үүнийг хэн ч хийж чадах ажил болгодог. Хэд хэдэн техник байдаг, доорх нь миний хийсэн зүйл юм.

Стратеги бол гагнуурыг эхлээд хагарах самбарын ул мөр рүү урсгах явдал юм.

  • Чипийг зааврын дагуу таслах самбар дээр бүү тавь.
  • Хамгийн эхний хийх зүйл бол таслах самбар дээр их хэмжээний урсгал оруулах явдал юм.
  • Дараа нь гагнуурын төмрийг ашиглан бага зэрэг гагнуурыг халааж, ул мөр рүү нь хийнэ.
  • Чипний хөлний ёроол дээр ул мөр үлдээсэн гагнуурын орой дээр илүү их урсгал хийнэ.
  • Чипийг дөнгөж сая гагнуур, урсгал тавьсан ул мөрийн дээд талд байрлуул. Хавчаар эсвэл шүдний оо нь чипийг зөв байрлуулах сайн хэрэгслийг бий болгодог. Бүх тээглүүр нь ул мөрийн дээгүүр байхын тулд чипийг зөв тэгшлэхээ мартуузай. Чипний нэг зүүг таслах самбар дээрх нэг зүү гэсэн тэмдэглэгээтэй тэгшлээрэй.
  • Гагнуурын төмрийг ашиглан чипний үзүүрт байгаа нэг тээглүүрийг (1, 7, 8, эсвэл 14 -р зүү) ул мөр рүү дарна. Өмнө нь хэрэглэж байсан гагнуур хайлж, зүүг тойрон урсана.

Чипийг хагалах самбар дээр хэрхэн гагнах талаар үзүүлэхийн тулд энэ алхам дээрх видеог үзээрэй. Надад санал болгож буй нэг зүйл бол видеоноос ялгаатай зүйл бол та анхны зүүг гагнах дараа бүх тээглүүрүүд ул мөр дээр байгаа эсэхийг шалгахын тулд бүхэл бүтэн чипний тохируулгыг дахин шалгаарай. Хэрэв та бага зэрэг унтраасан бол энэ үед засахад хялбар болно. Тав тухтай байхад бүх зүйл сайхан харагдаж байвал чипний эсрэг талд өөр зүү гагнуур хийж, тэгш байдлыг дахин шалгана уу. Хэрэв энэ нь сайхан харагдаж байвал үргэлжлүүлээд үлдсэн тээглүүрээ хий.

Бүх тээглүүрийг гагнасны дараа холболтоо баталгаажуулахын тулд томруулдаг шил ашиглахыг санал болгож байна. Илүү сайн арга бол тасралтгүй байдлыг шалгахын тулд мултиметр ашиглах явдал юм. Та нэг датчикийг зүүний хөл дээр, нөгөө датчикийг толгойг гагнах самбар дээр байрлуулах ёстой (энэ алхам дахь хоёр дахь зургийг үзнэ үү). Гагнуурын хэд хэдэн тээглүүрийг богиносгосон тул холбогдоогүй эсэхийг шалгахын тулд та зэргэлдээ тээглүүрүүдийг шалгаж үзэх хэрэгтэй. Жишээлбэл, хэрэв та 4 -р зүүг шалгаж байгаа бол 3 болон 5 -р зүүг шалгана уу. 4 -р зүү тасралтгүй байдлыг харуулах ёстой бөгөөд 3 -р зүү ба 5 -р зүү нь нээлттэй хэлхээг харуулах ёстой. Цорын ганц үл хамаарах зүйл бол арчигч P0W нь P0A эсвэл P0B холболтыг харуулдаг.

ЗӨВЛӨГӨӨ:

  • Материалын жагсаалтад дурдсанчлан, гараа чөлөөтэй ажиллуулах боломжтой томруулах боломжтой байх нь энэ алхамд ихээхэн тус болно.
  • Торон хавтанг барихад матрын хавчаар ашиглах нь бүх зүйлийг гагнах ажлыг хөнгөвчилдөг.
  • Чипийн дугаарыг маск хийх соронзон хальсны хуудсан дээр бичээд хагалах самбарын доод хэсэгт наалдана уу (энэ хэсгийн гурав дахь зургийг үзнэ үү). Хэрэв ирээдүйд та чипийг таних шаардлагатай бол будгийн соронзон хальсыг унших нь илүү хялбар болно. Миний хувийн туршлага бол би чип дээр бага зэрэг урсгалтай байсан бөгөөд дугаар нь бүрэн алга болсон тул надад байгаа бүх зүйл бол соронзон хальс юм.

Алхам 2: Цахилгааны утас

Цахилгаан утас
Цахилгаан утас

Та Arduino болон Digipot -ийг утас диаграммд үзүүлсэн шиг холбох хэрэгтэй болно. Ашиглаж буй тээглүүрүүд нь Arduino Uno -ийн зохион байгуулалт дээр үндэслэсэн болно. Хэрэв та өөр Arduino ашиглаж байгаа бол сүүлийн алхамыг үзнэ үү.

Алхам 3: DigiPot -ийг удирдах Arduino номын санг авах

DigiPot -ийг удирдах Arduino номын санг авах
DigiPot -ийг удирдах Arduino номын санг авах

Хөтөлбөрийг хялбарчлахын тулд би Github дээр байдаг номын сан бий болгосон. Github.com/gregsrabian/MCP41HVX1 руу орж MCP41HVX1 номын санг аваарай. Та "Clone" товчлуурыг сонгоод "Zip татаж авах" -ыг сонгоно уу. Zip файлыг хаана байгааг нь мэдэж байгаа газарт хадгалахаа мартуузай. Ширээний компьютер эсвэл татаж авах хавтас нь тохиромжтой байршил юм. Та үүнийг Arduino IDE руу импортлосны дараа татаж авах газраас устгаж болно.

Алхам 4: Шинэ номын санг Arduino IDE руу оруулах

Шинэ номын санг Arduino IDE руу импортлох
Шинэ номын санг Arduino IDE руу импортлох

Arduino IDE дотроос "Ноорог" руу очоод "Номын сан оруулах" -ыг сонгоод "ZIP номын сан нэмэх" -г сонгоно уу. GitHub -аас татаж авсан. ZIP файлыг сонгох шинэ харилцах цонх гарч ирнэ.

Алхам 5: Номын сангийн жишээ

Номын сангийн жишээ
Номын сангийн жишээ

Шинэ номын санг нэмсэний дараа хэрэв та "Файл" руу ороод "Жишээ" -ийг сонгоод "Тусгай номын сангийн жишээнүүд" -ийг сонговол та жагсаалтаас MCP41HVX1 -ийн оруулгыг харах болно. Хэрэв та энэ бичлэг дээр хулганаа авбал WLAT, Wiper Control, SHDN -ийг харах болно. Энэхүү зааварт бид арчигч хяналтын жишээг ашиглах болно.

Алхам 6: Эх кодыг шалгах

#"MCP41HVX1.h" -ийг оруулна уу // Arduino дээр ашиглагддаг тээглүүрүүдийг тодорхойлно уу#WLAT_PIN 8 -ийг тодорхойлно уу // "Хэрэв бага гэж тохируулсан бол" шилжүүлээд "#define SHDN_PIN 9 -ийг ашиглана уу // эсэргүүцлийн сүлжээг идэвхжүүлэхийн тулд өндөр тохируулаарай#CS_PIN 10 -ийг тодорхойлно уу // SPI -ийн чипийг сонгохын тулд бага болгож тохируулаарай // Туршилтын апп -д ашиглагдах зарим утгыг тодорхойлох#FORWARD үнэнийг тодорхойлох#REVERSE худал тодорхойлох#MAX_WIPER_VALUE 255 // тодорхойлох хамгийн их арчигч MCP41HVX1 Digipot (CS_PIN, SHDN_PIN, WLAT_PIN); хүчингүй тохиргоо () { Цуваа эхлэх (9600); Serial.print ("Эхлэх байрлал ="); Serial.println (Digipot. WiperGetPosition ()); // Анхны утгыг харуулах Serial.print ("Арчигчийн байрлалыг тохируулах ="); Serial.println (Digipot. WiperSetPosition (0)); // Арчигчийн байрлалыг 0} void loop () {static bool bDirection = FORWARD; int nWiper = Digipot. WiperGetPosition (); // Одоогийн арчигчийн байрлалыг авах // Чиглэлийг тодорхойлох. хэрэв (MAX_WIPER_VALUE == арчигч) {bDirection = REVERSE; } if if (0 == nWiper) {bDirection = FORWARD; } // Хэрэв (FORWARD == bDirection) {nWiper = Digipot. WiperIncrement (); // Чиглэл урагш байна Serial.print ("Нэмэх -"); } өөр {nWiper = Digipot. WiperDecrement (); // Чиглэл нь хоцрогдсон байна Serial.print ("Буурах -"); } Serial.print ("Арчигчийн байрлал ="); Serial.println (nWiper); саатал (100);}

Алхам 7: Эх кодыг ойлгох, ноорог ажиллуулах

Image
Image

Энэхүү эх кодыг Arduino IDE -д ашиглах боломжтой бөгөөд Examples цэс рүү ороод дөнгөж суулгасан MCP41HVX1 -ийг олоорой (өмнөх алхамыг үзнэ үү). MCP41HVX1 дотор "Арчигч хяналт" жишээг нээнэ үү. Алдаа зассан зүйл байвал шинэчлэгдэх мэт номын санд орсон кодыг ашиглах нь хамгийн сайн арга юм.

Арчигч Хяналтын жишээ нь MCP41HVX1 номын сангаас дараах API -г харуулав.

  • Бүтээгч MCP41HVX1 (int nCSPin, int nSHDNPin, int nWLATPin)
  • WiperGetPosition ()
  • WiperSetPosition (байт арчигч)
  • Арчигч нэмэгдэх ()
  • WiperDecrement ()

Хэрэв та 7 битийн чип ашиглаж байгаа бол дээжийн эх код дотор MAX_WIPER_VALUE -ийг 127 болгож тохируулаарай. Анхдагч нь 8 битийн чипийн хувьд 255 байна. Хэрэв та дээжинд өөрчлөлт хийвэл Arduino IDE нь төслийн шинэ нэрийг сонгоход тань туслах болно, учир нь энэ нь кодын жишээг шинэчлэхийг зөвшөөрөхгүй болно. Энэ бол хүлээгдэж буй зан төлөв юм.

Гогцоо хийх бүрт арчигч нь явж буй чиглэлээсээ хамааран нэг алхам эсвэл нэг алхам буурах болно. Хэрэв чиглэл дээшээ хараад MAX_WIPER_VALUE хүрэх юм бол чиглэлээ буцаана. Хэрэв 0 оноо авбал буцааж буцаана.

Ноорог ажиллаж байх үед цуваа дэлгэц нь арчигчийн одоогийн байрлалаар шинэчлэгддэг.

Эсэргүүцлийн өөрчлөлтийг харахын тулд та омметрийг унших мультиметрийг ашиглах шаардлагатай болно. Тоолуурыг P0B (зүү 11) ба P0W (зүү 12) дээр байрлуулж, програм ажиллаж байх үед эсэргүүцэл хэрхэн өөрчлөгдөж байгааг харах боломжтой болно. Чип дотор дотоод эсэргүүцэл байгаа боловч эсэргүүцэл нь 0 хүртэл буурахгүй гэдгийг анхаарна уу, гэхдээ энэ нь 0 ом -д ойртох болно. Энэ нь хамгийн их утгад хүрэхгүй ч ойролцоо байх болно.

Та видеог үзэж байхдаа мултиметр нь эсэргүүцэл нь хамгийн их утгад хүрэх хүртэл нэмэгдэж, буурч эхэлснийг харж болно. Видеонд ашигласан чип нь MCP41HV51-104E/ST бөгөөд 100 битийн хамгийн их утга бүхий 8 битийн чип юм.

Алхам 8: Алдааг олж засварлах

Хэрэв бүх зүйл төлөвлөсний дагуу болохгүй бол эндээс хэдэн зүйлийг анхаарч үзэх хэрэгтэй.

  • Цахилгааны утсаа баталгаажуулна уу. Бүх зүйлийг зөв холбох ёстой. Энэхүү зааварт заасан утсан холболтын схемийг бүрэн ашиглаж байгаа эсэхээ шалгаарай. Энэхүү зааварт гарын авлагад README, номын сангийн эх код болон доор байрлуулсан өөр утаснуудын диаграмм байгаа боловч дээрх утсан холболтын алхам дээр бичигдсэн зүйлийг дагаж мөрдөөрэй.
  • Таны цифрэн дээрх бүх зүү таслах самбар дээр гагнаж байгаа эсэхийг шалгаарай. Харааны үзлэгийг ашиглах нь тийм ч сайн биш юм. Дигипот дээрх бүх тээглүүр нь таслах самбартай цахилгаанаар холбогдсон, ул мөрийг гаталсан гагнуурнаас огтлолцсон холболт байхгүй эсэхийг шалгахын тулд мультиметрийнхээ тасралтгүй байдлын функцийг ашиглан баталгаажуулж байгаа эсэхийг шалгаарай.
  • Хэрэв цуваа дэлгэц нь ноорог хийх үед арчигчийн байрлал өөрчлөгдөж байгааг харуулж байгаа боловч эсэргүүцлийн утга өөрчлөгдөөгүй бол энэ нь WLAT эсвэл SHDN нь таслагч самбар эсвэл WLAT эсвэл SHDN холбогч арчигчтай зохих холболт хийгээгүй байгааг илтгэнэ. Arduino -тай зөв холбогдоогүй байна.
  • Та 10 -аас 36 вольтын хооронд тогтмол гүйдэлтэй хоёрдогч тэжээлийг ашиглаж байгаа эсэхээ шалгаарай.
  • Мультиметрээр хүчдэлийг хэмжих замаар 10-36 вольтын цахилгаан хангамж ажиллаж байгаа эсэхийг шалгаарай.
  • Анхны ноорогыг ашиглаж үзээрэй. Хэрэв та ямар нэгэн өөрчлөлт хийсэн бол алдаа гаргасан байж магадгүй юм.
  • Хэрэв алдааг олж засварлах алхамуудын аль нь ч өөр дижипот чипийг туршиж үзэхэд тусалсангүй. Та хэд хэд худалдаж аваад TSSOP -ийн таслагч самбар дээр нэгэн зэрэг гагнасан гэж найдаж байна. Надад муу чип байсан нь намайг нэлээд бухимдуулсан бөгөөд энэ бол засвар байсан юм.

Алхам 9: Дотоод мэдээлэл ба нэмэлт мэдээлэл

Альтернатив утас диаграм
Альтернатив утас диаграм

Нэмэлт мэдээлэл:

Дэлгэрэнгүй мэдээллийг MCP41HVX1 мэдээллийн хуудаснаас авах боломжтой.

MCP41HVX1 номын сангийн талаархи бүх баримт бичгийг номын сангийн татаж авах хэсэг болох README.md файлд авах боломжтой. Энэ файлыг тэмдэглэгээгээр бичсэн бөгөөд Github дотроос зохих форматаар (хуудасны доод хэсгийг хар) эсвэл доош харагч / засварлагчаар үзэх боломжтой.

Arduino ба DigiPot хоёрын хоорондын харилцаа холбоо:

Arduino нь SPI ашиглан DigiPot -той харилцдаг. Номын сан нь WiperIncrement, WiperDecrement эсвэл WiperSetPosition гэх мэт арчигч байрлалын команд илгээсэний дараа чипээс арчигчийн байрлалыг авахын тулд WiperGetPosition руу залгана. Эдгээр арчигч командыг буцааж өгсөн утга нь чипний харж буй арчигчийн байрлал бөгөөд арчигч нь хүлээгдэж буй байрлал руу шилжсэн эсэхийг шалгахад ашиглаж болно.

Нарийвчилсан функц (WLAT & SHDN)

Эдгээр дэвшилтэт функцуудыг "арчигч хянах" жишээнд харуулаагүй болно. Номын санд WLAT & SHDN -ийг удирдах API -ууд байдаг. Номын сангийн хамт WLAT ба SHDN -ийн жишээ зургууд (арчигч хяналтын тоймтой ижил байршилд) байдаг.

SHDN (Унтрах)

SHDN нь эсэргүүцлийн сүлжээг идэвхгүй болгох эсвэл идэвхжүүлэхэд ашиглагддаг. SHDN -ийг бага идэвхгүй болгож, өндөр болгож тохируулснаар резисторын сүлжээг идэвхжүүлдэг. Резистор сүлжээг идэвхгүй болгох үед P0A (DigiPot pin 13) салгагдаж, P0B (DigiPot зүү 11) P0W (DigiPot зүү 12) -д холбогдсон байна. P0B ба P0W хооронд бага хэмжээний эсэргүүцэл байх тул таны тоолуур 0 ом -ыг уншихгүй.

Хэрэв таны програм SHDN -ийг хянах шаардлагагүй бол шууд HIGH руу залгаж болно (өөр холболтын диаграмыг үзнэ үү). Та зөв бүтээгчийг ашиглах эсвэл MCP41HVX1_PIN_NOT_CONFIGURED дотор SHDN -ийг хатуу утастай болохыг зааж өгөх шаардлагатай болно. Хэрэв та жишээг дагаж байгаа бол утсан холболтын бүдүүвчийг бүрэн ашиглах ёстой гэдгийг анхаарах нь чухал юм (дээрх утас холболтын алхамыг үзнэ үү).

WLAT (бичих түгжээ)

Дотоод архитектур нь нэг чип дээр хоёр бүрэлдэхүүн хэсгээс бүрдэнэ. Бүрэлдэхүүн хэсгүүдийн нэг нь SDI интерфэйс ба арчигчийн утгыг хадгалах бүртгэл юм. Өөр нэг бүрэлдэхүүн хэсэг нь резистор сүлжээ юм. WLAT нь хоёр дотоод бүрэлдэхүүн хэсгүүдийг хооронд нь холбодог.

WLAT -ийг LOW болгож тохируулах үед арчигч байрлуулах командын мэдээллийг резисторын сүлжээнд шууд дамжуулж, арчигчийн байрлалыг шинэчилдэг.

Хэрэв WLAT -ийг HIGH гэж тохируулсан бол SPI -ээр дамжуулж буй арчигчийн байрлалын мэдээллийг дотоод бүртгэлд хадгалдаг боловч эсэргүүцлийн сүлжээнд дамжуулдаггүй тул арчигчийн байрлалыг шинэчлэхгүй. WLAT -ийг LOW болгож тохируулсны дараа утгыг бүртгэлээс эсэргүүцлийн сүлжээнд шилжүүлнэ.

Хэрэв та синхрончлох шаардлагатай олон тооны дипипот ашиглаж байгаа бол WLAT нь ашигтай байдаг. Стратеги нь бүх дипипот дээр WLAT -ийг HIGH болгож, дараа нь бүх чип дээрх арчигчийн утгыг тохируулах явдал юм. Цэвэрлэгээний утгыг бүх digipots руу илгээсэний дараа WLAT -ийг бүх төхөөрөмж дээр нэгэн зэрэг LOW болгож тохируулах боломжтой бөгөөд ингэснээр тэд арчигчийг нэгэн зэрэг хөдөлгөж болно.

Хэрэв та зөвхөн нэг DigiPot -ийг удирдаж байгаа эсвэл олон төхөөрөмжтэй боловч тэдгээрийг синхрончлох шаардлагагүй бол танд энэ функц хэрэггүй болно, тиймээс WLAT -ийг LOW руу шууд холбож болно (өөр холболтын диаграмыг үзнэ үү). Та зөв бүтээгчийг ашиглах эсвэл WLAT хатуу утастай болохыг харуулахын тулд MCP41HVX1_PIN_NOT_CONFIGURED -д нэвтрүүлэх шаардлагатай болно. Хэрэв та жишээг дагаж байгаа бол та утсан холболтын диаграмыг бүрэн ашиглах ёстой гэдгийг анхаарах нь чухал юм (дээрх утас холболтын алхамыг үзнэ үү).

Алхам 10: Альтернатив утас диаграм

Цахилгаан утас

Танд дижитал зүү рүү холбохын оронд WLAT -ийг digpot -оос шууд LOW / GND руу холбох сонголт байна. Хэрэв та үүнийг хийвэл WLAT -ийг хянах боломжгүй болно. Та мөн дижитал зүү биш SHDN -ийг HIGH руу шууд холбох боломжтой. Хэрэв та үүнийг хийвэл SHDN -ийг хянах боломжгүй болно.

WLAT ба SHDN нь бие биенээсээ хамааралгүй тул та нэгийг нь хатуу утсаар, нөгөөг нь дижитал зүүгээр, хатуу утсыг хоёуланг нь холбож эсвэл хоёуланг нь тоон тээглүүрт холбож удирдах боломжтой. Хатуу утсыг холбохыг хүсэж байгаа утаснуудын өөр схемийг үзээд 2 -р алхам дахь хяналттай дижитал тээглүүрт утас холбох үндсэн утас диаграмыг үзнэ үү.

Барилгачид

MCP41HVX ангилалд гурван бүтээгч байдаг. Бид тэдгээрийн хоёрыг хэлэлцэх болно. Тэд бүгд README.md файлд бичигдсэн байдаг тул хэрэв гуравдагч байгуулагчийг сонирхож байвал баримт бичигтэй танилцана уу.

  • MCP41HVX1 (int nCSPin) - энэ бүтээгчийг зөвхөн WLAT болон SHDN хоёулаа хатуу утастай бол ашиглаарай.
  • MCP41HVX1 (int nCSPin, int nSHDNPin, int nWLATPin) - WLAT эсвэл SHDN -ийн аль аль нь хатуу утастай бол энэ бүтээгчийг ашиглана уу. Зүү нь хатуу утастай бол тогтмол MCP41HVX1_PIN_NOT_CONFIGURED эсвэл дижитал зүүтэй холбогдсон бол зүү дугаарыг оруулна уу.

nCSPin нь дижитал зүүтэй холбогдсон байх ёстой. NCSPin -ийн бүтээгч рүү MCP41HVX1_PIN_NOT_CONFIGURED дамжуулах нь буруу байна.

Хэрэв Arduino Uno ашигладаггүй бол яах вэ?

Arduino нь SPI -ийг ашиглан дипипоттой харилцдаг. SPI тээглүүр нь Arduino самбар дээрх тусгай зүү юм. Uno дээрх SPI тээглүүрүүд нь:

  • SCK - Uno дээрх 13 -р зүү нь digipot дээрх 2 -р зүүтэй холбогдсон байна
  • MOSI - Uno дээрх 11 -р зүү нь digipot дээрх 4 -р зүүтэй холбогдсон байна
  • MISO - Uno дээрх 12 -р зүү нь digipot дээрх 5 -р зүүтэй холбогдсон байна

Хэрэв та Uno биш Arduino ашиглаж байгаа бол SCK, MOSI, MISO аль зүү болохыг олж, тэдгээрийг digipot руу холбох хэрэгтэй болно.

Ноорог дээр ашигладаг бусад зүү нь ердийн дижитал тээглүүр тул аливаа дижитал зүү ажиллах болно. Та ашиглаж буй Arduino самбар дээр сонгосон тээглүүрээ тодорхойлохын тулд ноорогоо өөрчлөх шаардлагатай болно. Энгийн дижитал тээглүүрүүд нь:

  • CS - Uno дээрх 10 -р зүү нь digipot дээрх 3 -р зүүтэй холбогдсон байна (ноорог дээр CS_PIN -ийг шинэ утгаар шинэчилнэ үү)
  • WLAT - Uno дээрх 8 -р зүү нь digipot дээрх 6 -р зүүтэй холбогдсон (ноорог дээрх WLAT_PIN -ийг шинэ утгаар нь шинэчилнэ үү)
  • SHDN - Uno дээрх 9 -р зүү нь digipot дээрх 7 -р зүүтэй холбогдсон (ноорог дээрх SHDN_PIN -ийг шинэ утгаар нь шинэчилнэ үү)

Зөвлөмж болгож буй: