Waxaas oo dhami waxay ku bilaabmeen qoraaga oo iibsanaya qalab xiiso leh suuqa sare - Jawaabta Smart XE (
Qalabkan ayaa la joojiyay dhowr sano ka hor, iyo waxa dugsiyada lagu gato $100-$200 midkiiba hadda waxa uu ku soo baxayaa eBay $10 ama ka yar. Qalabka halkaas ku yaal aad buu ugu habboon yahay tijaabooyinka geeky:
- 60 kiiboodhka muhiimka ah
- soo bandhigid leh xallinta 384Γ136, 2 bits per pixel - la mid ah BC, CGA, laakiin 4 ma aha midabyo, laakiin grades of dhalaalka
- microcontroller ATmega128RFA1 (128 kB flash memory, 4kB ROM, 16kB RAM, 802.15.4 transceiver)
- dibadda (marka loo eego microcontroller, ma aha qalabka oo dhan) 1 megabit (128 kilobyte) xusuusta flash oo leh interface SPI
- qolka loogu talagalay 4 walxood AAA.
Laga soo bilaabo magaca microcontroller waxaa iska cad in ay iska leeyihiin qoyska AVR, taas oo macnaheedu yahay samaynta aaladda Arduino-ku-waafajin waa hawl aad u yar oo ka badan ...
Laga soo bilaabo wararka
Laakiin qoraagu wuxuu aad u xiiseynayaa fursadda inuusan ku ciyaarin aaladda, laakiin inuu barto:
- xusuusta flash oo leh interface SPI taxane ah
- bootloaders ee AVR
- heerka 802.15.4
Qoraagu wuxuu ku bilaabay qoraal
Tani waxay ku filan tahay in la soo geliyo Arduino bootloader, laakiin ma aha sawir-gacmeedka - deked taxane ah kuma xirna halkaas, markaa wali ma sameyn kartid adigoon furin kiiska. Sidoo kale, khadadka TX0 iyo RX0 ee dekeda taxan ee ugu horeysa waxay la socdaan khadadka codbixinta ee matrixka kiiboodhka, kuwaas oo ah kuwa codeeya furayaasha shaqada ee dhinacyada bandhigga. Laakiin maxaad samayn kartaa - qoraagu wuxuu dhisay sidan:
Waxa uu keenay xadhkaha JTAG, oo hadda looma baahna in la furo qaybta baytariyada. Oo si sawir-gacmeedyo loo dhejiyo, waxaan ku xiray labada dekedood ee taxanaha ah isku xiraha isku midka ah, sidoo kale waxaan ku daray beddelka, sababtoo ah baytariyada lagu rakibay, jir ahaan waa wax aan macquul aheyn in la damiyo qalabka si kale.
Waxay qaadatay wakhti aad u badan in lagu shaqeeyo birta alxanka, mindida tamarta iyo qoriga xabagta. Guud ahaan, ku dhejinta sawir-gacmeedka "hawada" ayaa aad uga habboon; waxaan si degdeg ah ugu baahanahay inaan wax u hindiso tan.
Arduino IDE waxay isticmaashaa barnaamijka si ay u geliyaan sawir-gacmeedyo
Ka dib markii uu isku dayay siyaabo kala duwan oo uu uga gudbi karo dhibaatadan, qoraagu wuxuu la yimid arrimahan soo socda. Qalabku waxa uu leeyahay 128 KB flash memory oo leh interface SPI β waxa aanu ka helnaa xogta fiilooyinka (xusuusnow in qoraagu uu hore u haystay hal qalab oo xidhiidhiye ka yahay dhinac), u isticmaal xusuustan sidii kayd, oo xogta ku dir raadiyaha. kanaalka qalab kale. Hello ka Cybiko.
Ka dib markii la qoro koodka si uu ula shaqeeyo kanaalka raadiyaha, iyo sidoo kale font, loader-ku wuxuu noqday mid ka dheer 4 kilobytes. Sidaa darteed, qiimaha HFUSE waa in laga beddelo 0xDA loona beddelo 0xD8. Hadda bootloader-ku wuxuu noqon karaa ilaa 8 kilobytes, ciwaanka bilawga ah hadda waa 0x1E000. Tani waxay ka muuqataa Makefile, laakiin sidoo kale waa in la tixgeliyaa marka la buuxinayo
Transceiver 802.15.4 ee ATmega128RFA1 waxaa markii hore loogu talagalay inuu ku shaqeeyo nidaamka
Waxaa soo baxday in kanaalada 15 iyo 26 ay ugu yar yihiin faragelinta WiFi. Qoraagu wuxuu doortay kan labaad. Afeef: Turjumaanku ma garanayo in loo oggol yahay in sidan loo fududeeyo ZigBee. Ma laga yaabaa in aan samayno barnaamijyo yar oo dheeraad ah oo aan si buuxda u hirgelinno?
Qalabka ugu horreeya, waa lagama maarmaan in la hirgeliyo mishiinka gobolka ee xaddidan oo gudbiya xogta iyada oo loo marayo nidaamka STK500. Inta badan, fariimaha la gudbiyo iyo kuwa la helo waa kuwo isku filan, laakiin qaarkood waxay ku xiran yihiin kuwii hore u soo maray kanaalka. Sharaxaada wada hadalka ayaa la bixiyay
Qayb muhiim ah oo ka mid ah wada-hadalladan waa gudbinta baakadaha loogu talagalay in lagu qoro xusuusta tooska ah ee aaladda loo socdo. Microcontrollers fudud ee qoyska AVR, cabbirka bogga waa 128 bytes, laakiin ATmega128RFA1 waa 256. Iyo xusuusta flash-ka ee ku xiran borotokoolka SPI, waa isku mid. Barnaamijka ku jira aaladda koowaad, marka la dhejiyo sawir-gacmeed, isla markiiba kuma wareejinayo kan labaad, laakiin wuxuu u qoraa xusuustan. Marka Arduino IDE uu hubiyo saxnimada gelitaanka, waxaa loo soo diraa wixii halkaas ku qornaa. Hadda waxaan u baahanahay inaan u gudbino xogta la helay iyada oo loo marayo kanaalka raadiyaha aaladda labaad. Isla mar ahaantaana, ka beddelashada qaadashada una beddelo gudbinta iyo dhabarka ayaa dhacda marar badan. Nidaamka STK500 waa mid aan dan ka lahayn dib u dhigista, laakiin uma dulqaadanayo luminta xogta (wax yaab leh, laakiin waxaa kor lagu sheegay in dib u dhacu sidoo kale saameynayo wareejinta xogta). Iyo khasaaraha inta lagu jiro gudbinta wireless waa lama huraan. ATmega128RFA1 waxay leedahay hirgalinta qalabka dhismaha ee codsiyada soo noqnoqda marka ay jiraan shakiyo ku saabsan saxnaanta wareejinta, laakiin qoraaga ayaa go'aansaday inuu ku fuliyo isla software laftiisa. Waxa uu sameeyay hab-maamuus ay xog aad uga badan midda kale u socoto.
Ma fiicna, laakiin way shaqeysaa. Bogga 256-byte wuxuu u qaybsan yahay afar qaybood, mid kasta oo ka mid ah waxaa lagu kala qaadaa hawada sida baakidh ahaan. Baakidhku waxa uu hayn karaa ilaa 125 bytes oo xog ah oo lagu daray hal byte dherer ahaan iyo laba bytes ee CRC. Markaa jajab 64 bytes oo dheer oo ay la socdaan bogag iyo lambaro (laga bilaabo 0 ilaa 3) ayaa la dhigayaa halkaas. Aaladda hesha waxa ay leedahay doorsoome u oggolaanaya in uu la socdo inta qaybood ee la helay, iyo marka ay afartu yimaadaan, qalabku waxa uu helayaa xaqiijin ah in dhammaan bogga la helay. Wax xaqiijin ah ma jiro (CRC kuma eka) - dib u soo dir bogga oo dhan. Xawaaruhu wuu ka sii badan yahay marka la isku gudbinayo fiilada. Fiiri:
Laakiin guud ahaan, waxay noqon doontaa lagama maarmaan in la bixiyo hab ku habboon oo lagu xiro fiilada qalabka loogu talagalay dhejinta sawirada iyo iyada oo loo marayo. Tusaale ahaan, ku rid gudaha gudaha beddelaha interface-ka CP2102, sida sawirka, oo ku dheji guddiga si ay u adkeyso awoodda marka la isku xirayo oo la jarayo fiilada Micro USB.
Waxa kale oo ay leedahay 3,3-volt stabilizer (iyo sida loogu isticmaalo qalab leh koronto 6-volt ah - haddii kaliya ay leedahay stabilizer isku mid ah, waxaadna ku dari kartaa laba diode si aad si toos ah u doorato midka iyaga ka mid ah) . Dhammaan saddexda LED-yada waa in laga soo iibiyaa guddiga beddelka interface-ka, haddii kale waxay ku dhejin doonaan baytariyada marka ay ku shaqeynayaan, iyo sidoo kale inay farageliyaan codbixinta kumbuyuutarka oo ay ku shaqeeyaan xusuusta flash-ka ee SPI.
Raadinta yoolku wuxuu noqday mid ka xiiso badan gaaritaanka (oo uma baahnid kaftankaas baska). Qoraagu wuxuu wax badan ka bartay bootloaders AVR, SPI flash memory, borotokoolka STK500 iyo heerka 802.15.4.
Dhammaan koodka kale marka lagu daro maktabadda kor lagu sharaxay waa -
Source: www.habr.com