Mündəricat:

EZProbe, EZ430 əsaslı məntiq probu: 4 addım
EZProbe, EZ430 əsaslı məntiq probu: 4 addım

Video: EZProbe, EZ430 əsaslı məntiq probu: 4 addım

Video: EZProbe, EZ430 əsaslı məntiq probu: 4 addım
Video: TI EZ430 EZProbe 2024, Noyabr
Anonim
EZProbe, EZ430 əsaslı məntiq probu
EZProbe, EZ430 əsaslı məntiq probu

Bu, TI EZ430 dongle -a əsaslanan sadə bir məntiq araşdırma layihəsidir. 2010 -cu ilin sentyabr ayında TI -dən bir neçə ez430 -da pulsuz bir təklifdən istifadə etdim. onlar kiçik kod parçalarını sınamaqda və ledin yanıp sönməsini izləməkdə çox lazımlı və əyləncəlidirlər. O vaxtdan bəri masamın ətrafında oturmuşdular və onlar üçün bir şey düşünməliyəm. və insanların gəlməsini dayandırmaq və "yaddaş çubuğumu" götürməyimi istəmək istəyirəm. Yaxşı, bu heç bir yaddaş çubuğu deyil, çox kanallı ADC-lərlə 16bit MCU, adekvat 2K proqramlaşdırma yaddaşı və 16Mhz-ə qədər işləyir. hamısı gözəl bir usb cihaz paketində hata ayıklama proqramlaşdırma interfeysi lövhəsi ilə doludur. əsas dizayn məqsədim müdaxiləni orijinal ez430 ilə məhdudlaşdırmaqdır. bunu fiziki cəhətdən çox dəyişdirmək istəmirəm və digər hədəf lövhə layihələri üçün proqramlaşdırma / ayıklama funksiyasını saxlamaq istəyirəm. bütün bunlar əlavə faydalı məqsədlərə xidmət edir. bu linux layihəsidir, hər zaman olduğu kimi, pəncərələrin altına tikilə bilməsi üçün əlimdən gələni etdim. Ancaq pəncərələr altında hər şeyi sınamağa vaxtım və mənbəm yoxdur. elektronika layihələrimin çoxu çox kiçik çörək lövhələrində aparılır və ümumiyyətlə dar yerlərdə işləyirəm (mətbəx masası, yarım borc masası və s.). dövrə məntiqi səviyyələrini yoxlamalı olduğum bir çox hal var və hər şeyi yoxlamaq üçün bir multimetrdən (bir kərpic ölçüsü) istifadə edirəm. Layihələrim multimetrimdən çox kiçik olduğu üçün həmişə məni əsəbiləşdirir və həmişə yoluma mane olduğunu görürəm. alternativə ehtiyacım var, kiçik bir məntiq araşdırması edəcək. ez430 bu iş üçün idealdır. Başlamaq üçün, artıq bir zond kimi formalaşmışdır, sadəcə bir dırnaq və bir neçə led əlavə etməliyəm. Daha əvvəl də qeyd etdiyim kimi, bu layihəni sadə və dağıdıcı etməmək istəyirəm. və artıq mövcud olanlardan istifadə etdim. Layihəni bir pcb / pref-board üzərində qurmaq əvəzinə, bunu prototipləmə sahəm olaraq 14 pin başlığı olan deşiklərdən istifadə edərək bir msp430f2012 lövhəsində qururam. kiçik ledlərin getdiyi yer budur. plastik korpusda delik açmaq istəmirəm, çox tel çəkmək və əlavə əlaqə nöqtələri əlavə etmək istəmirəm. Mənə lazım olan yalnız bir prob io əlaqəsi və funksiya seçimi üçün düymə girişi, üstəgəl gnd və vcc. usb bağlantısı bu iş üçün mükəmməl görünür. probu usb vasitəsi ilə gücləndirəcəyəm (proqramçı dövrəsi mənim üçün təxminən 3v potensialı tənzimləyəcək) və D+ və D-usb bağlayıcılarını probum və açarım üçün istifadə edəcəyəm. ez430 qul / müştəri cihazı olduğundan, işə salındıqda, D+ -da çəkilmədən başqa bir şey etməyəcək (bunun "yüksək sürətli" usb olduğunu göstərmək üçün). üzən D-ni prob io və D+ kimi toxunma düymə girişim kimi istifadə edirəm (bunun üçün bir çəkmə müqavimətinin qurulmasına belə ehtiyac yoxdur, artıq oradadır) əlavə məlumatı da burada tapa bilərsiniz.

Addım 1: Xüsusiyyətlər və Tətbiq

Xüsusiyyətlər və tətbiq
Xüsusiyyətlər və tətbiq

xüsusiyyətlər * usb konnektoru vasitəsi ilə dövrə təchizatı * məntiq oxunması, nəbz çıxışı, pwm çıxışı arasında dönən 3 iş rejimi * uzun düyməyə basma (təxminən 1,5 saniyə) 3 iş rejimi ilə dönər * p1.0 orijinal yaşıl LED göstərici olaraq sönür - zond, açıq - çıxış, yanıp sönmə - pwmlogic probe * məntiq probu qırmızı - salam, yaşıl - aşağı, heç biri - üzən * məntiq probu qırmızı / yaşıl fasiləsiz nəbzdə oxuyur> 100hz * 4 sarı LED 8 addımda aşkar olunan tezlikləri göstərir, yanıb -sönən sarılar hi aralığını göstərin (yəni 5-8 addım) * 100hz+, 500hz+, 1khz+, 5khz+, 10khz+, 50khz+, 100khz+, 500khz+ * üçün nəbz tezliklərini göstərir. nəbz sayıları LED-lərdə tədricən göstərilir, 8-ə qədər pulsesontinuous pulse çıxışını sayacaq, frekans ayarı * p1.0 ilə göstərilmiş orijinal yaşıl led * 4 sarı led, 9 addımda pulse tezliklərini göstərir, yanıb-sönən sarılar yüksək diapazonu göstərir (yəni. addım 5-8) * nəbz tezlikləri 100hz, 500hz, 1khz, 5khz, 10khz, 50khz, 100khz, 500khz, 1mhz * qısa düyməyə basmaq 9 fərqli tezlik parametrini döndərir. fasiləsiz nəbz çıxışı, pwm ayarı * p1.0 ilə göstərilmiş orijinal yaşıl led yanıb -sönür * əvvəlki ilə eynidir pwm dəyərləri istisna olmaqla iş rejimi * 4 sarı LED 9 addımda pwm faizini göstərir, yanıb-sönən sarılar yüksək diapazonu göstərir (yəni. addım 5-8) * pwm faizləri 0%, 12.5%, 25%, 37.5%, 50%, 62.5%, 75%, 87.5%, 100% * qısa düymə basması 9 fərqli pwm parametrini döndərir. bir cüt usb konnektoru vasitəsi ilə bağlandıqları iki hissədən ibarətdir. sol tərəfdəki sxematik bir F2012 hədəf lövhəsi ilə EZ430 dongle'a əlavələr göstərir. sağ tərəfdəki sxem məntiq zond başıdır və sıfırdan qurulmalıdır.

Addım 2: Parça siyahısı və Tikinti

Parça siyahısı və tikinti
Parça siyahısı və tikinti
Parça siyahısı və tikinti
Parça siyahısı və tikinti

hissə siyahısı * ti ez430-f2013 (proqramçı hissəsini istifadə edin) * ti ez430 f2012 hədəf lövhəsi * ledlər 1,2 x 0,8 mm, 4 sarı, 1 qırmızı, 1 yaşıl * bir dırnaq, təxminən 3/4 düym, düz başlı * bir toxunma düyməsi * 1 qramlıq super yapışqandan olan qapaq (super yapışqanın özü də lazımdır) * usb tipli bağlayıcı (pc tərəfi) * tellərin qurulması yalnız ez430 dongle ilə gələn f2013 hədəf lövhəsi yerinə msp430f2012 hədəf lövhəsini istifadə edirəm bunlardan bir neçəsi. orjinal f2013 hədəf lövhəsindən istifadə etmək istəyirsinizsə, üzən vəziyyətə təsir etmək üçün adc istifadə edən kodun çox kiçik bir hissəsini yenidən yazmalı olacaqsınız. f2013, inşaatımda istifadə etdiyim 10 bit əvəzinə daha inkişaf etmiş 16 bit adc var. İncə bir lehim ucu və bir temperatur tənzimləyici lehimləmə dəmiri (və ya stansiya) istifadə etməli olacaqsınız, adi bir dəmir ilə ledləri lehimlədiyini təsəvvür edə bilmirəm. etdiyim üsul əvvəlcə başlıq yastıqlarını qalaylamaqdır, sonra smd ledləri yerləşdirmək üçün bir neçə gözəl tweeter istifadə edin. qırmızı və sarı ledləri hizaladıqdan sonra, 1/8 vatlıq bir rezistorun bir ayağını qalaylayıram və pcb üzərinə bir ucu ümumi bir gnd -ə gedir. yaşıl led sonda gedir. çox sıxdır və hər şeyi bir -birinə yapışdırmaq üçün kifayət qədər lehim tətbiq etmək istərdiniz. axın da mütləqdir. oynaqlarınızı yoxlamaq üçün bir çox metr istifadə edin. sonra düymə telini və prob telini birləşdirməlisiniz. cat5e kəsiklərindən istifadə edirəm, amma hər hansı bir yüksək ölçü telləri bunu edəcək. şemada və şəkildə göstərildiyi kimi, hədəf lövhəsindən usb bağlayıcısına qədər qaçırlar. Kiçik bir bağlayıcı tapa bilsəm yaxşı olardı ki, istədikləri zaman ayırsınlar, amma bu, hələlik edəcək.

Addım 3: Probe Başının Tikintisi

Probe Başının Tikintisi
Probe Başının Tikintisi

alt hissədə, prob başlığı qurğusunu "qurmaq" (super yapışqan) üçün istifadə etdiyim bitləri görəcəksiniz. Fikrim firmware yeniləmələri üçün ayrılması üçün onu bir USB konnektoru üzərində qurmaqdır. Hər şeyi bir araya gətirmək üçün super yapışqan istifadə etdim. "dırnaq" çox sürətli rejim keçid və tezlik / pwm ayarı üçün birbaşa toxunma düyməsinin üstünə yapışdırılır. sizin üçün işləmirsə başqa cür etmək istəyə bilərsiniz. Dokunmatik düymə mexanizmindən bir az titrəmə olacaq, bir dizaynda titrəməni məhdudlaşdırmaq üçün kağız klipi istifadə etdim və dırnaq mövqeyini təmin etmək üçün super yapışqandan olan qapağı istifadə etdim. ona qoruyucu rezistor / diod da əlavə etmək istəyə bilərsiniz. usb konnektoru bu əlaqələrə malikdir, (1) 5v, (2) D-, (3) D+ və (4) Gnd, D- çivəyə bağlanmalıdır, D+ toxunma düyməsinə, digər toxunma düyməsinin ucunu yerə bağlamaq lazımdır. bu proba bağlı konnektor strategiyası mənə bir çox rahatlıq verir, probun başındakı elektrik xətti ilə, yalnız "baş" və firmware proqramını dəyişdirərək dövrəni genişləndirə və bu layihəni başqa bir şeyə çevirə bilərsiniz. bir volt metr, bir tv-b-getmiş ola bilər (probun başındakı tranzistor və batareya) və s.

Addım 4: İcra Qeydləri və Alternativ Tətbiqlər

İcra Qeydləri və Alternativ Tətbiqlər
İcra Qeydləri və Alternativ Tətbiqlər

icra qeydləri

* wdt (gözətçi taymeri) düymələrin vaxtını (de-sıçrayış və basıb-basıb saxlayın) təmin etmək üçün, həmçinin işıq lampalarını nəbz vurmaq üçün istifadə olunur. LED -lərin məhdudlaşdırıcı rezistorları olmadığı və daim açıla bilmədiyi üçün buna ehtiyac var. * 3V hədəf dövrələrini yerləşdirmək üçün 12mhz -ə təyin edilmiş dco saatı. * adc, üzən bir pində araşdırıb araşdırmamağımıza qərar vermək üçün istifadə olunur, eşik dəyərləri mənbə kodu ilə tənzimlənə bilər. * Tezliyin təyin edilməsi, zaman aşkar etmək üçün timer_a qurmaq və nəbzi bir müddət ərzində saymaqla aparılır. * Çıxış rejimi, nəbz genişliyi modulyasiyasına nail olmaq üçün timer_a fasiləsiz rejimdən, 7 -ci çıxış rejimindən (təyin/sıfırlama) istifadə edir, həm qeydləri (CCR0 və CCR1) tutur və müqayisə edir.

mənbə kodu

bunlar yalnız linux üçün təlimatlardır, mühitim ubuntu 10.04 -dür, msp403 alət zəncirini və mspdebugu düzgün qurduğunuz müddətcə digər dağıtımlar işləməlidir.

bir kataloq yarada və aşağıdakı faylları onlara yerləşdirə bilərsiniz ezprobe.c yükləmək üçün

Bunu tərtib etmək üçün bir makefile sahib deyiləm, əksər layihələrimi tərtib etmək üçün bir bash skriptindən istifadə edirəm, başlatma panelimdəki qalxan səhifəmdə qeyd olunur, "iş sahəsi qovluq düzeni" bölməsinə gedin və detalları əldə edin.

və ya aşağıdakıları edə bilərsiniz

msp430 -gcc -Os -mmcu = msp430x2012 -o ezprobe.elf ezprobe.c msp430 -objdump -DS ezprobe.elf> ezprobe.lst msp430 -objdump -h ezprobe.elf msp430 ölçülü ezprobe.elf

firmware proqramını yandırmaq üçün ez430 dongle -nızı qoşun və edin

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

alternativ tətbiq imkanları

Bu dizaynın çevik təbiətinə əsaslanaraq, ezprobe rolunu asanlıqla dəyişə bilər və sürətli bir flash yükləmə ilə fərqli bir cihaz halına gəlir, burada gələcəkdə həyata keçirmək niyyətində olduğum fikirlər var.

* servo test cihazı, ezprobe_servo.c yükləmək üçün tıkladığım * batareya test cihazı/ volt-metr, 2.5v-ə qədər və ya daha yüksək alternativ prob başlığı üzərində müqavimət bölücü * tv-b-getdi, w/ ir led probu- baş * pong saatı, 2 rezistorlu TV çıxışı prob başlığı

giderme

* həqiqətən bir temperatur tənzimləyici dəmir / stansiya və incə lehim uclarına ehtiyacınız var, ledlər (hamısı birlikdə) düyü dənindən daha kiçikdir. * flux istifadə edin. * Hata ayıklama zamanı D- və D+ tellərini ayırmağa hazır olun, normal usb işinə müdaxilə edə bilər. dəyişdirilmiş cihazda firmware yazırsınızsa, firmware başladıqda bu iki pin üzərində çıxış etməyin. və bunu etsəniz, artıq firmware yükləyə bilməyəcəksiniz (bu baş verərsə, əlbəttə ki, lehimdən çıxara bilərsiniz). usb korpusuna uyğun olan kiçik bağlayıcılar tapa bilsəniz, onlardan istifadə edin. * Hədəf lövhəsi üçün enerji təchizatı, tənzimləyici vasitəsi ilə proqramçı lövhəsindən alınır və bu da usb -dən 5v alır. ezprobe -nu dövrədə istifadə edərkən, ümumiyyətlə, mənim hədəf layihəmin əkiz 1.5v AAA -dan 3v təchizatı var, bu kifayətdir, amma layihə 12 mhz -də və ya altında qalmalıdır. 16mhz dco tam 5v qaynaq gücünə ehtiyac duyacaq. * Probu qorumaq üçün məhdudlaşdırıcı müqavimət və ya zener diodundan istifadə etməmişəm. bunu etmək istəyə bilərsiniz.

Tövsiyə: