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

EZProbe, EZ430 дээр суурилсан логик шалгалт: 4 алхам
EZProbe, EZ430 дээр суурилсан логик шалгалт: 4 алхам

Видео: EZProbe, EZ430 дээр суурилсан логик шалгалт: 4 алхам

Видео: EZProbe, EZ430 дээр суурилсан логик шалгалт: 4 алхам
Видео: TI EZ430 EZProbe 2024, Арванхоёрдугаар сар
Anonim
EZProbe, EZ430 дээр суурилсан логик датчик
EZProbe, EZ430 дээр суурилсан логик датчик

Энэ бол TI EZ430 dongle дээр суурилсан энгийн логик шалгалтын төсөл юм. Би 2010 оны 9 -р сард TI -аас ez430 -уудын үнэгүй санал болгосны давуу талыг ашигласан. Тэд жижиг кодын хэсгүүдийг туршиж үзэх, LED анивчихыг үзэх нь маш тохиромжтой, хөгжилтэй байдаг. Тэд миний ширээг тойрон хэвтэж байсан тул би тэдэнд зориулж ямар нэгэн зүйл бодож олох ёстой. Хүмүүс гарч ирэхийг зогсоож, "санах ойн зөөгчөө" зээлүүлэхийг хүсч байна. Энэ бол санах ойн карт биш, олон сувгийн ADC-тэй 16bit MCU, хангалттай 2K програмчлалын санах ой бөгөөд 16 МГц хүртэл ажилладаг. бүгд дибаг хийх програмчлалын интерфэйсийн самбарыг маш сайн USB төхөөрөмжийн багцад багтаасан болно. Миний дизайны гол зорилго бол миний оролцоог анхны ez430 -аар хязгаарлах явдал юм. Тиймээс би үүнийг бие махбодийн хувьд хэт их өөрчлөхийг хүсэхгүй байгаа бөгөөд зорилтот самбарын бусад төслүүдэд програмчлах / дибаг хийх функцийг хадгалахыг хүсч байна. Энэ бүхэн нь нэмэлт ашигтай зорилгоор үйлчилдэг. Энэ бол линукс төсөл бөгөөд ердийн байдлаар би цонхны доор барих боломжтой болгохын тулд хамгийн сайн мэдлэгээрээ анхаарлаа хандуулж байсан. Гэсэн хэдий ч надад цонхны доор байгаа бүх зүйлийг туршиж үзэх цаг, нөөц байхгүй байна. Миний электроникийн төслүүдийн ихэнх нь маш жижиг талхны тавцан дээр хийгддэг бөгөөд би ихэвчлэн хатуу орон зайд ажилладаг (гал тогооны ширээ, хагас зээлсэн ширээ гэх мэт). Би хэлхээний логик түвшинг шалгах шаардлагатай олон тохиолдол байдаг бөгөөд би мультиметр (тоосгоны хэмжээ) ашиглан аливаа зүйлийг шалгаж үзсэн. Миний төслүүд миний мултиметрээс хамаагүй жижиг тул энэ нь үргэлж надад саад болж байгааг олж хардаг. Надад өөр хувилбар хэрэгтэй байна, жижиг логик шалгалт хийх болно. ez430 нь энэ ажилд төгс төгөлдөр юм. Эхлэхийн тулд энэ нь аль хэдийн датчик шиг хэлбэртэй байна, би зүгээр л хадаас, хэдэн лед нэмэх хэрэгтэй. Өмнө дурьдсанчлан би энэ төслийг энгийн бөгөөд эвдрэлгүй хийхийг хүсч байна. мөн би аль хэдийн байгаа зүйлийг ашигласан. Төслийг pcb / pref-board дээр бүтээхийн оронд би үүнийг зорилтот msp430f2012 самбар дээр бүтээж, 14 зүү толгойг цооног ашиглан миний загварчлах хэсэг болгон ашиглаж байна. энэ бол жижигхэн ледүүд явдаг газар юм. Би хуванцар бүрхүүл дээр цооног өрөмдөхийг хүсэхгүй байна, би хэт олон утас ажиллуулахыг хүсэхгүй байна, нэмэлт холбоо барих цэг нэмэхийг хүсэхгүй байна. Надад хэрэгтэй зүйл бол io контакт, функцийг сонгох товчлуурын оролт, gnd ба vcc. usb холболт нь энэ ажлыг хийхэд төгс төгөлдөр харагдаж байна. Би датчикийг usb-ээр тэжээх болно (програмист хэлхээ нь миний хувьд ойролцоогоор 3v потенциалийг зохицуулах болно) ба D+ ба D- usb холболтыг ашиглан датчик болон унтраалгыг ашиглана. ez430 нь боол / үйлчлүүлэгчийн төхөөрөмж тул эхлүүлэх үед D+ дээр татахаас өөр юу ч хийхгүй болно (энэ нь "өндөр хурдтай" USB гэдгийг илтгэх болно). Би хөвөгч D- -г туршилтын io болгон ашиглаж, D+ -г мэдрэгчтэй товчлуурын оролт болгон ашигладаг (үүнд татах эсэргүүцэл тохируулах шаардлагагүй, энэ нь аль хэдийн бэлэн болсон) нэмэлт мэдээллийг эндээс олж болно.

Алхам 1: Онцлог ба хэрэглээ

Онцлог ба хэрэглээ
Онцлог ба хэрэглээ

онцлог * USB холбогчоор дамжуулан хэлхээнээс нийлүүлэх * Логик унших, импульсийн гаралт, хх гаралтын хооронд эргэлддэг 3 ажиллагааны горим * товчлуурыг удаан дарах (ойролцоогоор 1.5 сек) 3 ажиллагааны горимоор эргэлддэг * p1.0 анхны ногоон LED нь горим заагч, унтраалттай датчик, асаалттай - гаралт, анивчих - pwmlogic датчик * логик датчик улаан - сайн уу, ногоон - нам, огт байхгүй сайн хүрээг заана уу (өөрөөр хэлбэл 5-8 алхам) * 100Гц+, 500Гц+, 1хц+, 5хз+, 10хц+, 50хц+, 100хц+, 500хц+ * -ийн импульсийн давтамжийг харуулна. импульсийн тоог үе шаттайгаар LED дээр харуулдаг, 8 хүртэл импульсийн тасралтгүй импульсийн гаралт, давтамжийн тохируулга * p1.0-ээр заасан ногоон өнгөөр асдаг * 4 шар гэрэл нь импульсийн давтамжийг 9 алхамаар харуулдаг, шар өнгө нь сайн хүрээг харуулдаг (өөрөөр хэлбэл. алхам 5-8) * импульсийн давтамж 100Hz, 500hz, 1khz, 5khz, 10khz, 50khz, 100khz, 500khz, 1mhz * гаралтын товчлуур дарахад 9 өөр давтамжийн тохиргоог эргүүлнэ. тасралтгүй импульсийн гаралт, pwm тохиргоо * p1.0 -ээр заасан анхны ногоон LED анивчах * өмнөхтэй адил pwm-ийн утгыг давтамжийн оронд харуулах (мөн тохируулах ёстой) -ээс бусад ажиллагааны горим * 4 шар гэрэл нь pwm-ийн хувийг 9 алхамаар харуулдаг, шар өнгийн анивчих нь сайн хүрээг (өөрөөр хэлбэл. 5-8-р алхам) * pwm хувь 0%, 12.5%, 25%, 37.5%, 50%, 62.5%, 75%, 87.5%, 100% * богино товчлуур дарахад pwm-ийн 9 өөр тохиргоог эргүүлнэ. хоёр хэсгээс бүрдсэн бөгөөд тэдгээр нь хос USB холбогчоор холбогддог. Зүүн талын бүдүүвч нь F2012 зорилтот самбар бүхий EZ430 товчлуурт нэмэлт оруулахыг харуулав. Баруун талын бүдүүвч нь логик датчикийн толгой бөгөөд эхнээс нь бүтээх ёстой.

Алхам 2: Хэсгийн жагсаалт ба барилгын ажил

Хэсгийн жагсаалт ба барилгын ажил
Хэсгийн жагсаалт ба барилгын ажил
Хэсгийн жагсаалт ба барилгын ажил
Хэсгийн жагсаалт ба барилгын ажил

эд ангиудын жагсаалт * ti ez430-f2013 (програмист хэсгийг ашиглах) * ti ez430 f2012 зорилтот самбар * leds 1.2 x 0.8mm, 4 шар, 1 улаан, 1 ногоон * нэг хадаас, 3/4 инч орчим, хавтгай толгойтой * нэг хүрэлцэх товч * 1 грамм супер цавуугаар хийсэн таг (супер цавуу өөрөө хэрэгтэй) * USB холбогчийг холбоно уу (компьютерийн хажуу тал) * утаснуудыг би зөвхөн ez430 гогцоотой ирдэг f2013 зорилтот самбарын оронд msp430f2012 зорилтот самбарыг ашиглаж байна. эдгээрээс цөөн хэдэн. Хэрэв та анхны f2013 зорилтот самбарыг ашиглахыг хүсч байвал хөвөгч төлөвийг тодорхойлохын тулд adc ашигладаг кодын маш бага хэсгийг дахин бичих шаардлагатай болно. f2013 нь миний барилгын ажилд ашигладаг 10 битийн оронд илүү дэвшилтэт 16 битийн adc -тэй. Та нарийн ширхэгтэй гагнуурын үзүүр, температур зохицуулагч гагнуурын төмрийг (эсвэл станц) ашиглах хэрэгтэй болно, би энгийн төмрөөр ледийг гагнана гэж төсөөлж чадахгүй байна. Миний хийсэн арга бол эхлээд толгойн дэвсгэрийг цагаан тугалга хийх, дараа нь нарийн твиттер ашиглан smd leds байрлуулах явдал юм. улаан, шар өнгийн ледүүдийг тохируулсны дараа би 1/8 ваттын эсэргүүцэл ба гагнуурын нэг хөлийг pcb дээр байрлуулж, нэг үзүүр нь нийтлэг gnd руу явдаг. Ногоон удирдагч хамгийн сүүлд явдаг. Энэ нь маш нягт бөгөөд та бүх зүйлийг хооронд нь наалдуулахын тулд хангалттай гагнуур хийхийг хүсч байна. Мөн урсгал нь зайлшгүй шаардлагатай зүйл юм. үеийг шалгахын тулд олон метр ашиглана уу. Дараа нь та товчлуурын утас ба датчикийн утсыг холбох хэрэгтэй болно. Би cat5e таслалтыг ашигладаг боловч ямар ч өндөр хэмжигч утас хийх болно. схем болон зурагт үзүүлсэн шиг тэд зорилтот самбараас USB холбогч руу гүйдэг. Хэрэв би жижиг холбогч олж өгвөл сайн дураараа тэднийг салгаж болно, гэхдээ энэ нь одоогоор хийгдэх болно.

Алхам 3: Туршилтын толгойн барилгын ажил

Туршилтын толгойн барилга
Туршилтын толгойн барилга

доод хэсэгт та датчикийн толгойн угсралтыг "барих" (супер цавуу) хийж байсан хэсгүүдийг харах болно. Миний санаа бол үүнийг USB холбогч дээр суурилуулж, firmware -ийн шинэчлэлтэд зориулж салгах явдал юм. Би бүх зүйлийг нэгтгэхийн тулд супер цавуу ашигласан. "хадаас" нь мэдрэгчтэй товчлуур дээр шууд наасан бөгөөд горимыг маш хурдан сольж, давтамж / хх тохиргоог хийдэг. Хэрэв энэ нь танд тохирохгүй бол та өөрөөр хийхийг хүсч магадгүй юм. хүрэлцэх товчлуурын механизмаас бага зэрэг ганхах болно, нэг загварт би чичиргээг хязгаарлахын тулд цаасан хавчаар, хумсны байрлалыг бэхлэхийн тулд хэт цавуугаар хийсэн тагийг ашигласан. Та хамгаалалтын эсэргүүцэл / диод нэмж оруулахыг хүсч магадгүй юм. usb холбогч нь эдгээр холболттой, (1) 5v, (2) D-, (3) D+, (4) Gnd, D- нь хадаастай холбох ёстой, D+ нь хүрэлцэх товчлууртай холбогддог, нөгөө нь хүрэлцэх товчлуурын төгсгөлийг газардуу холбох шаардлагатай. Энэхүү датчикийг холбосон стратеги нь надад маш их уян хатан байдлыг өгч байгаа бөгөөд датчикийн толгой дээрх цахилгаан шугамтай тул та "толгой" болон програм хангамжийг өөрчлөх замаар хэлхээг өргөжүүлж, энэ төслийг өөр болгож чадна. вольт метр, телевизоргүй (транзистор ба датчикийн толгой дээрх батерей гэх мэт) гэх мэт байж болно.

Алхам 4: Хэрэгжилтийн тэмдэглэл ба нэмэлт програмууд

Хэрэгжүүлэх тэмдэглэл ба өөр програмууд
Хэрэгжүүлэх тэмдэглэл ба өөр програмууд

хэрэгжүүлэх тэмдэглэл

* wdt (харуулын цаг хэмжигч) нь товчлуурын цагийг (bounce and press-n-hold) хангах, мөн гэрэлтүүлгийн гэрлийг импульс хийхэд ашигладаг. LED нь хязгаарлах эсэргүүцэлгүй тул байнга асаах боломжгүй тул үүнийг хийх шаардлагатай байна. * dco цагийг 3 м зорилтот хэлхээнд тохируулахын тулд 12 МГц -т тохируулна. * adc нь хөвөгч зүүгээр шалгах эсэхийг тодорхойлоход ашиглагддаг бөгөөд босго утгыг эх кодоор тохируулж болно. * Давтамжийг тодорхойлохдоо timer_a -г ирмэгийг илрүүлэх зорилгоор тохируулж, импульсийг тодорхой хугацаанд тоолно. * гаралтын горим нь timer_a тасралтгүй горим, гаралтын горим 7 (тохируулах/дахин тохируулах), импульсийн өргөн модуляцид хүрэхийн тулд бүртгэх, харьцуулах регистрүүдийг (CCR0 ба CCR1) ашигладаг.

эх код

Эдгээр нь зөвхөн Linux -д зориулсан заавар бөгөөд миний орчин бол ubuntu 10.04, бусад хуваарилалтууд нь msp403 багаж хэрэгсэл, mspdebug -ийг зөв суулгасан л бол ажиллах ёстой.

та директор үүсгэж дараах файлуудыг байрлуулж ezprobe.c татаж авах боломжтой

Надад үүнийг эмхэтгэх файл байхгүй байна, би bash скрипт ашиглан ихэнх төслүүдээ эмхэтгэдэг, үүнийг миний эхлүүлэх самбарын бамбай хуудсан дээр дурдсан байгаа бөгөөд "ажлын талбарын лавлах зохион байгуулалт" хэсэг рүү гүйлгэж, дэлгэрэнгүй мэдээллийг аваарай.

эсвэл та дараахь зүйлийг хийж болно

msp430 -gcc -Os -mmcu = msp430x2012 -o ezprobe.elf ezprobe.c msp430 -objdump -DS ezprobe.elf> ezprobe.lst msp430 -objdump -h ezprobe.elf msp430 хэмжээтэй ezprobe.elf

firmware флаш болгохын тулд ez430 dongle -ээ хавсаргаад хий

mspdebug -d /dev /ttyUSB0 uif "prog ezprobe.elf"

өөр програмын боломжууд

Энэхүү дизайны уян хатан шинж чанар дээр үндэслэн ezprobe үүргээ хялбархан өөрчилж, хурдан флаш татаж авснаар өөр төхөөрөмж болж хувирах тул ирээдүйд хэрэгжүүлэх гэж байгаа хэдэн санаанууд энд байна.

* servo шалгагч, энэ нь ezprobe_servo.c-ийг татаж авахын тулд би дарсан * зайны шалгагч/ вольт метр, 2.5в хүртэл буюу түүнээс дээш эсэргүүцэл хуваагчтай өөр зонд-толгой дээр * тв-б-алга болсон, w/ ir led probe- толгой * теннисний цаг, w/ 2 резистортой телевизортой датчик-толгой

алдааг олж засварлах

* Танд температур зохицуулагч төмөр / станц, нарийн гагнуурын үзүүр хэрэгтэй болно. * урсгалыг ашиглах. * Дибаг хийх явцад D- ба D+ утсыг салгахад бэлэн байгаарай, энэ нь USB-ийн хэвийн ажиллагаанд саад учруулж болзошгүй юм. Хэрэв та өөрчлөгдсөн төхөөрөмж дээр firmware бичдэг бол firmware эхлэхэд энэ хоёр тээглүүр дээр гаралт бүү хий. Хэрэв та үүнийг хийвэл та програм хангамжийг татаж авах боломжгүй болно (хэрэв ийм зүйл тохиолдвол та тэдгээрийг гагнах боломжтой болно). Хэрэв та usb бүрхүүлд тохирох жижиг холбогч олж чадвал тэдгээрийг ашиглаарай. * Зорилтот самбарын тэжээлийн хангамжийг тохируулагчаар дамжуулан програмист самбараас авдаг бөгөөд энэ нь USB -ээс 5v авдаг. ezprobe -ийг хэлхээнд ашиглахдаа ихэвчлэн миний зорилтот төслийн 3V ихэр 1.5V AAA -аас нийлүүлдэг, энэ нь хангалттай боловч төсөл нь 12 МГц -ээс бага байх ёстой. 16mhz dco нь 5V эх үүсвэрийн бүрэн хүчийг шаарддаг. * Би датчикийг хамгаалахын тулд хязгаарлах эсэргүүцэл эсвэл zener диодыг ашиглаагүй. та үүнийг хийхийг хүсч магадгүй юм.

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