Përmbajtje:

Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM: 3 hapa
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM: 3 hapa

Video: Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM: 3 hapa

Video: Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM: 3 hapa
Video: SKR 1.4 - Simple Endstop Switch 2024, Korrik
Anonim
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM bazë
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM bazë
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM bazë
Tekst për të folur Klikoni në një UChip të mundësuar nga ARM, dhe SBC të tjera të mundësuara nga ARM bazë

Hyrje: Ditë e mirë. Emri im është Tod. Unë jam një profesionist i hapësirës ajrore dhe i mbrojtjes, i cili është gjithashtu një zemërgjerë në zemër.

Frymëzim: Duke ardhur nga epoka e dial-up BBS, Mikrokontrolluesit 8-bit, kompjuterët personal Kaypro/Commodore/Tandy/TI-994A, kur dyqanet e Radio Shack ishin të shumta (ditët e mira ole), një nga projektet e mia të para të përfshira në hobi ishte duke punuar me një Komplet Mek6800D2 Motorola për Trajnim të Mikroprocesorit, të cilin e kisha blerë ndërsa punoja si bashkëpunëtor në laboratorët MSU EE (pasi përfundova trajnimin tim të Shkollës së Lartë Elektronike VoTech në MI të Ulët Jugor). Ai projekt përfshiu prototipimin tim të Radio Shack SP0256 NARRATOR ™ PROCESORI I FJALS në MEK6800D2, duke e lidhur atë dhe duke programuar 6800 që të nxjerrë pseudo-fjalim (ata që kanë punuar me SP0256 HW e dinë saktësisht se për çfarë po aludoj) Ajo funksionoi mrekullisht dhe unë përparova në rrugën e prerjes së dhëmbëve në mikrokontrolluesit e integruar dhe montimin. Pas shkollës së mesme, jeta u pengua, Ushtria, Lufta, Bashkëshortët, Fëmijët, hyrja në sektorin civil, fillimi i një karriere, etj. Të gjitha më shtuan në raftin e hobit tim në favor të ndjekjes së përpjekjeve të jetës në një kulturë perëndimore (këtu në SHBA).

Kaloni përpara 20 vjet, duke ardhur në kohën e pashmangshme ku fëmijët po piqen deri në atë pikë saqë unë dhe Nusja po shpërqendrojmë, faturat e hipotekës/automjeteve/kolegjit po paguhen ngadalë, fitimet bëhen më të mira me avancimet dhe kam mjaft rezervë koha deri në pikën ku mund të filloja të rifokusohesha në disa përpjekje egoiste, u rifillova në koncertin e elektronikës të hobit. Gjithsesi, duke pasur parasysh prejardhjen dhe historinë time, unë kërkova dhe gjeta një mjedis dev me të cilin u lidha shpejt - ARMbasic - BASIC ishte dashuria ime e parë dhe kjo i përshtatej faturës së jo vetëm riaklimimit të vetes në programim, por edhe punës me harduer që ishte shumë më tepër i fuqishëm se sa kisha filluar me dekada më parë, dhe kështu filloi udhëtimi.

Kjo ishte rreth 2006-2009. Pastaj, për arsye shumë përtej kontrollit tonë, jeta ndryshoi (siç kishte ndodhur për shumë njerëz gjatë atyre viteve). Hobet u hoqën - përqendrohuni në një karrierë të re, duke u rimëkëmbur nga vështirësitë financiare (ishte shumë e ngarkuar në fushën e pasurive të patundshme dhe ne e morëm atë me pantallona të shkurtra dhe të rinjtë sapo po arrinin në pikën ku financimi i Kolegjit ishte një imperativ). Në thelb, problemet e jetës dhe botës së parë (ne jemi vërtet të bekuar, duke marrë parasysh sfidat dhe mundimet me të cilat njerëzit në pjesë të tjera të botës luftojnë çdo ditë) u shfaqën dhe… hobi u hoq. Unë u zgjodha shkurtimisht në të në 2011-2012-atëherë u takova me një ndryshim tjetër të karrierës-hobi u la përsëri.

Shpejt përpara një dekadë tjetër dhe… Unë jam kthyer dhe, Zoti i mirë, me shpresë, për gjithë kohëzgjatjen (derisa ta marr atë sy gjumë të urtë proverbial dhe të filloj t’i shtyj margaritarët nga poshtë). Pra, ja ku jemi. Wow - Arduino (cila është ajo fjalë e çuditshme?) Kishte sulmuar tregun. Krijuesit ?? Çfarë dreqin janë ata ?! …:) Miqtë e mi në Coridium Corp (pronarë të bordeve të krijuesve të mikrokontrolluesve ARMbasic dhe ARM) kishin mbetur të palëkundur dhe të vërtetë. Tani, në vend të serisë së kontrolluesve LPC2xxx, ekziston ky entitet i ri (për mua) i ARM, dhe Cortex M0/M3/M4, dhe Arduino, dhe … WOW! Kultura është ndryshuar mjaft, dhe në një mënyrë shumë të madhe. Peeps po bashkëpunojnë nga distanca dhe, në të vërtetë, globalisht. Pajisjet kompjuterike po bëhen jashtëzakonisht të shpejta dhe të fuqishme, dhe ARMbasic, pasi është pjekur dhe forcuar në mënyrë të palëkundur me punësimin në shumë familje të ndryshme të silikonit, është një gjë e bukur për mua dhe shumë të tjerë.

Kështu, duke e bërë një histori të shkurtër shumë të gjatë, kohët e fundit kam hasur në klikimin e TTS nga MikroElectronika dhe ndjeva që një larje nostalgjie rrjedh mbi mua. Sikur dikush të kishte porositur në një mënyrë minutash, dhe ishte në ankth gjatë ditëve të ardhshme derisa njësia të vinte në dorë. Kështu fillon historia…

Furnizimet

  • 1 ea MikroElectronika Text To Speech Click, përmban Epson S1V30120 - moduli TTS ASIC
  • 1 ea Synimi ARMbasic, duke përmbushur rolin e TTS Host
  • 1 ea Uno Breakout Shield (ose prototipizimi i tabelës së bukës, ose…)
  • 1 altoparlant ea, ose një sërë altoparlantësh sugjerojnë altoparlantë të punuar me kompjuter desktop me prizë 1/8 "TRS mbi të
  • 1 lot Prototipimi i mallrave të telit, saldimit, fluksit, fitilit, hekurit të saldimit, titujve, prizave IC dhe të ngjashme..
  • 1 lot Embedded Dev Tools DMM, Logic Probe, Logic Analyzer, Fushëveprimi, etj. - për MCU të reja pritëse TTS

Hapi 1: Ndërlidhjet e harduerit

Ndërlidhjet e harduerit
Ndërlidhjet e harduerit
Ndërlidhjet e harduerit
Ndërlidhjet e harduerit
Ndërlidhjet e harduerit
Ndërlidhjet e harduerit

Për ta përsëritur këtë duke përdorur një objektiv ARMbasic në një faktor Uno, ose me një itaca uChip, ka të ngjarë që të shërbehet më së miri duke përdorur një mburojë prototipuese, siç kam bërë në fotot e mësipërme (lidhje e thjeshtë e amazonit)

Disa do të shohin tela të mbështjellë së bashku të mbështjellë me tela dhe do të pyesin pse-refuzimi i zhurmës në mënyrë të zakonshme është përgjigja e thjeshtë. Po, ne nuk kemi të bëjmë me sinjale të balancuara këtu, por kuptova se nuk mund të dëmtojë (?) Kështu që e bëra këtë kur po bëja ndërtimin e tabelës.

Shtë një dizajn mjaft i mirë. Shtypjet janë bashkangjitur këtu, në formën e një grafiku (AutoCAD 2D është ajo me të cilën jam mësuar më shumë - pasi kam punuar me të për dekada në punën time ditore - unë jam ende duke prerë dhëmbët e mi KiCAD dhe kjo ishte një përpjekje shumë e thjeshtë për të justifikoni kurbën e të mësuarit si një projekt i parë në KiCAD). Gjithsesi, unë zgjodha të montoj prizën e uChip direkt në mburojë për të mundësuar një rast përdorimi më vete kur përdorni uChip si host. Shtova një JST për ta fuqizuar atë me bateri, nëse dëshiroj ta bëj këtë dhe, për shkak se kam disa shtesa, kam përzgjedhur një Adafruit SWD Breakout për të më lejuar të përdor Segger J-Link EDU Debug Probe, nëse lind nevoja. Nuk ndodhi, por unë jam duke e mbajtur SWD i'face në të për t'u përdorur me projektet e ardhshme.

Në këtë kontekst, nënkupton që të zbresësh skajet e PCB -së në mënyrë që vrimat e veshura të reduktohen në gjysmë cilindra, duke mundësuar ngjitjen në një PCB mbajtëse - në këtë rast bordi i shpërthimit të mburojës. Zgjodha ta bëj këtë pasi pjesët e paketuara të mburojës me paketë të sheshta nuk përputheshin plotësisht me ndarjen e rreshtave midis dy rreshtave të kokës në SWD BOB. Thyeu një dosje të sheshtë dhe 5 minuta depozitim dhe problemi u zgjidh.

Hapi 2: Programimi dhe Testimi

Programimi dhe Testimi
Programimi dhe Testimi
Programimi dhe Testimi
Programimi dhe Testimi
Programimi dhe Testimi
Programimi dhe Testimi

Pasi të jetë ndërtuar hardueri, do të duhet të ketë një dalje të plotë për të vërtetuar që instalimet elektrike janë të mira. Pastaj, unë gjithmonë bëj një kontroll të fuqisë dhe bazave. Kjo jo vetëm që siguron që Fuqia dhe Terreni janë aty ku supozohet të jenë, por që asnjë nga përfundimet e tjera që nuk duhet të kenë fuqi/terren atje nuk e kanë. Nuk është një detyrë e lodhshme në një projekt të vogël si ky, por me sistemet më të mëdha të sistemeve, megjithëse është një hap i lodhshëm, është absolutisht e nevojshme për të siguruar që asnjë nën-kuvend ose sistem i lidhur të mos hiqet nga një gabim budalla që mund dhe duhej të ishte kapur. Unë zakonisht marr minimumin e mallrave të bashkangjitur në mënyrë që energjia të gjenerohet në tabelë dhe pastaj kontrolloj çdo kunj/ndërprerje për energji dhe tokë para se të lidh nën-kuvendet, patate të skuqura, etj., Duke u siguruar që fuqia është e nivelit të duhur (duke marrë parasysh pajisjet jo-tolerante 5V/kërkesat për IO, 1v8 dhe 3v3, etj.) dhe ajo terren është aty ku duhet të jetë dhe vetëm aty ku duhet të jetë. Unë kam qenë dëshmitar i një kaskade të dështimeve në një avion nga njerëzit që dështuan të bëjnë kontrollet e duhura të para-lidhjes. Në një rast, u morën mbi 100 mijë dollarë LRU - jo një kohë argëtuese për të qenë përgjegjës për një projekt dhe për ta bërë atë të shkojë anash në një çast sepse dikush e ka qarkulluar shkurt procesin. Një gjë tjetër për të cilën jam fajtor është të bësh 'kontrolle të mundimshme' të afërsisë - të sigurohesh që kontaktet/përfundimet të mos shkurtohen në kontaktet/përfundimet ngjitur. Kjo bëhet kritike nëse dikush merret me montime koaksiale, parzmore me shumë përcjellës/mbrojtur, etj. Ok, unë jam jashtë kutisë së sapunit …

Sapo të sigurohet siguria, lidhni gjërat, fuqizojeni dhe më pas filloni të programoni hostin TTS (ARMbasic Target MCU) ashtu siç do të bënte me shumë objektiva të integruar të MCU. Kam regjistruar një video që përshkruan programimin dhe përdorimin e thjeshtë të TTS Click. Mund ta shikoni këtu.

Kodi burimor ARMbasic mund të shkarkohet nga këtu - një postim në forum që ka detaje shtesë. Coridium bëri një postim në blog mbi këto përpjekje, të cilin mund ta arrini duke klikuar këtu.

Hapi 3: Modifikimi i Burimit për Synimet e tjera ARM, dhe Muzikime të ndryshme

Modifikimi i burimit për objektiva të tjerë ARM, dhe bashkime të ndryshme
Modifikimi i burimit për objektiva të tjerë ARM, dhe bashkime të ndryshme
Modifikimi i Burimit për Synimet e tjera ARM, dhe Musings të Ndryshëm
Modifikimi i Burimit për Synimet e tjera ARM, dhe Musings të Ndryshëm
Modifikimi i burimit për objektiva të tjerë ARM, dhe bashkime të ndryshme
Modifikimi i burimit për objektiva të tjerë ARM, dhe bashkime të ndryshme
Modifikimi i burimit për objektiva të tjerë ARM, dhe bashkime të ndryshme
Modifikimi i burimit për objektiva të tjerë ARM, dhe bashkime të ndryshme

Unë nuk do t'ju shqetësoj me hapat e nevojshëm për të modifikuar kodin burimor për të punuar me objektivat e tjerë ARM bazë, përveçse të tregoj se kam bërë një përpjekje për ta bërë këtë në një bollëk komentesh të kodit burimor atje. Ju lutemi merrni kohë për të hapur skedarin tts.bas dhe lexoni se çfarë ndryshimesh nevojiten nëse zgjidhni të transferoni kodin në një kontrollues tjetër të mundësuar nga ARMbasic.

Bashkangjitur këtu janë disa imazhe që kam marrë gjatë ciklit të zhvillimit për ta vënë këtë në punë.

Mesimet e mesuara:

  1. Nëse keni një Analizues Logjik me hyrje të papërdorura dhe keni IO të synuar shtesë që nuk përdoren për punën në dispozicion, mos kini frikë t'i përdorni ato IO si mjete korrigjimi - spërkatja e një lëvizje të një IO në pika të ndryshme të kodit mund të jetë një ndihmë e madhe në gjetjen e asaj që është dhe nuk funksionon siç pritej, për të identifikuar çështjet e çmendura të kohës (dmth. ndërprerjet që ndikojnë në komunikimet serike të goditura pak), dhe për të fituar një kuptim më të mirë të përpjekjeve tuaja në tërësi.
  2. Jo të gjithë kontrolluesit ARM janë të njëjtë. Kjo është e qartë. Sidoqoftë, u mërzita duke bërë hartimin fillestar në një LPC1765 Coridium SuperPRO. Në prapambetje, ajo që e bëri këtë një zgjedhje të keqe është se zbatimi i kësaj bërthamë të ARM-së lejoi qasje në memorie jo të rreshtuar me fjalë. Kur transferova kodin C në ARMbasic, gjërat shkuan pa probleme derisa u përpoqa ta përdor me një objektiv SAMD21 - gjithçka u prish dhe gjërat u nxorrën jashtë besimit për shkak të qasjes së palidhur kur mbushni tamponët, manipuloni flamujt, punoni me versionin ARMbasic të strukturave/sindikatave me të cilat kam dalë, etj. Ishte një mësim i dhimbshëm. Marrja këtu: Nëse dikush dëshiron të ketë kod portativ, dev në objektivin më kufizues të kandidatit, vetëm për të siguruar që nuk do të ballafaqohet me dramën në fund të projektit, kur ka shumë të ngjarë që të përdorë frytet e përpjekjet e tyre …:)
  3. Transferimi i kodit C në ARMbasic NUK është i pamundur. Kjo përpjekje ishte kryesisht një evolucion gjigant portativ i stërvitjes. Nëse dikush merr kohë për të krahasuar burimet C origjinale me kodin ARM bazë që kam krijuar, duhet të jetë në gjendje të dalë me disa ide se si të zbatohen gjërat që mund të mos jenë pjesë e modelit thelbësor të ARMbasic (d.m.th. Strukturat).
  4. Trajtoni gjëra të tilla në copa të menaxhueshme. Si parazgjedhje, unë jam ai që më pëlqen të shoh kënaqësi në baza të rregullta. Një përpjekje e tillë si këto përpjekje për transferimin dhe zhvillimin nuk ka të ngjarë të jetë diçka që mund të arrihet në një natë të vetme. Vendosni synime realiste dhe punoni drejt së njëjtës, duke u përpjekur të mos tronditeni nga 'tabloja e madhe'.
  5. Një Analizues Logjik ishte vendimtar në këtë përpjekje. Po, unë kam një njësi DS-Logic+ të rangut më të ulët, por mund të them me vendosmëri se një lirë $ 12.50 24MHz Bandwidth LA nga Amazonia do të kishte më shumë se sa të mjaftonte. Çifti që me PulseView të Sigrok (falas) (bën deshifrim protokolli) dhe dikush do të ketë një sistem shumë të fuqishëm që duhet të funksionojë në një mori të madhe skenarësh, siç është ajo që unë u përpoqa të ndërmerrja me këtë projekt. Sigurohuni që të merrni një njësi që ka kapëse testimi, ose porositni klipe testi veç e veç, pasi ato janë jashtëzakonisht të dobishme (sa Trumpfeldian).
  6. Një sondë e thjeshtë logjike është gjithashtu një mjet shumë i dobishëm. Në fotografinë e përgjithshme të hapësirës së punës do të vini re një sondë logjike të lashtë Archer (Radio Shack) në këndin e poshtëm të djathtë të figurës. Unë u befasova vërtet kur kuptova se sa e dobishme është diçka e tillë në baza ditore, edhe me një laborator të pajisur mirë.

Unë mund të jem lidhur me këto më herët në këtë por nuk mbaj mend dhe jam shumë dembel për të parë. Këtu është një postim në blog që ka një video të modulit TTS në veprim (Itaca uChip e pret atë në atë kohë), dhe postimin e Forumit ARMbasic ku mund të shkarkoni kodin burimor të portifikuar ARMbasic.

Kujdes dhe argëtohuni duke hakuar larg!

-MHz

Recommended: