Satura rādītājs:

Izveidojiet savu (lēti!) Daudzfunkciju bezvadu kameras kontrolieri .: 22 soļi (ar attēliem)
Izveidojiet savu (lēti!) Daudzfunkciju bezvadu kameras kontrolieri .: 22 soļi (ar attēliem)

Video: Izveidojiet savu (lēti!) Daudzfunkciju bezvadu kameras kontrolieri .: 22 soļi (ar attēliem)

Video: Izveidojiet savu (lēti!) Daudzfunkciju bezvadu kameras kontrolieri .: 22 soļi (ar attēliem)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Jūlijs
Anonim
Izveidojiet savu (lēti!) Daudzfunkcionālu bezvadu kameras kontrolieri
Izveidojiet savu (lēti!) Daudzfunkcionālu bezvadu kameras kontrolieri
Izveidojiet savu (lēti!) Daudzfunkcionālu bezvadu kameras kontrolieri
Izveidojiet savu (lēti!) Daudzfunkcionālu bezvadu kameras kontrolieri
Izveidojiet savu (lēti!) Daudzfunkcionālu bezvadu kameras kontrolieri
Izveidojiet savu (lēti!) Daudzfunkcionālu bezvadu kameras kontrolieri

Ievads Vai kādreiz esat iecerējis izveidot savu kameras kontrolieri? SVARĪGA PIEZĪME. Kondensatori MAX619 ir 470n vai 0.47u. Shēma ir pareiza, bet komponentu saraksts bija nepareizs - atjaunināts. Šis ir ieraksts Digitālo dienu konkursā, tādēļ, ja jums tas šķiet noderīgi, lūdzu, novērtējiet/balsojiet/komentējiet labvēlīgi! Ja jums tas patiešām patīk un esat paklupis, nospiediet "man patīk!":) Atjauninājums: parādīts hackaday! hackaday.com/2009/10/13/a-different-breed-of-camera-controllers/ Atjauninājums: jaunas lāzera sprūda fotogrāfijas darbībā! Atjauninājums: pirmā balva = D, paldies par balsojumu un/vai vērtējumu! Šī pamācība galvenokārt ir paredzēta SLR lietotājiem, kuri vēlas iegūt nedaudz lielāku nobraukumu no savām kamerām, tomēr, ja ir kāds punkts un uzņemšana ar IR saskarnēm, tas varētu šķist interesanti. Protams, tas darbosies arī (ar nelielām izmaiņām) ar kameru uzlaušanu, kur jūs varat pieslēgt loģiskās izejas kameras sprūda termināļiem. Tas sākās kā visaptveroša apmācība, taču dažu neparedzētu ierobežojumu dēļ, ar kuriem es saskāros vēlāk, tas var būt vairāk kā ceļvedis, kā paveikt dažādas lietas - es bieži atstāju jums iespēju izvēlēties, kā jūs varētu darīt lietas, Es domāju, ka tas ir labāks veids, kā darīt lietas, nekā tikai akli teikt: "Tev tas jādara". Padomājiet par to kā par pamācību kameras kontroliera projektēšanā. Esmu sniedzis shēmas un pilnu kodu, lai jūs vienmēr varētu to vienkārši nokopēt. Lielākajai daļai cilvēku tas būs vienkāršs gadījums, kad dizains tiks pārvietots uz sloksnes un pievienots LCD. Esmu izgājis, kā to izveidot, jo process ir ļoti līdzīgs un ļauj labot kļūdas, pirms padarāt dizainu pastāvīgu! Funkcijas: Viena kadra režīms Intervāla (laika nobīdes) režīms Aktivizēts šāviens (sprūda no ārējā sensora) ar mainīgiem apstākļiem Iekļautie sensoru modeļi - gaisma, skaņa (iespējams daudz vairāk!) Kopējās izmaksas - zem 25 sterliņu mārciņām (neskaitot instrumentus) LCD displejs ērtai iestatījumu maiņai Savietojams ar Nikon/Canon (kodēts), potenciāls atbalsts (nepārbaudīts) Olympus/Pentax bez programmaparatūras nepieciešamas modifikācijas Izmanto IR, tas ir gan bezvadu, gan nebojā jūsu kameru. Man radās ideja par to pēc tam, kad stundām ilgi sēdēju ārā aukstumā un noklikšķināju uz tālvadības pults. Es veicu 8 sekunžu intervālu aptuveni 1000 kadru veikšanai. Es domāju, hey, tas ir tikai IR LED, vai ne? Kāpēc es nevaru to atkārtot un izveidot savu tālvadības pulti ar iebūvētu aizkavi? Pēc tam es uzzināju (nedaudz mulsinoši, jo man šķita, ka man ir bijis milzīgs smadzeņu vilnis), ka tas ir izdarīts un par šo tēmu ir pat pāris pamācību. Mana īstenošana atšķiras no lielākās daļas intervometru un pašdarināšanas tālvadības pulti, jo tā ļauj daudz pielāgot un modularitāti, ir saderīga gan ar Nikon/Canon (un, iespējams, citiem vēlāk), gan apvieno iespēju uzņemt attēlu ar noteiktu sprūdu. Ideja ir vienkārša. Jūs vēlaties kaut ko diezgan ātri nofotografēt (šobrīd to ierobežo aizvara aizkavēšanās, man 6ms). Šim nolūkam ir dažādas metodes: 1. Izmēģinājumi un kļūdas, mēģinot uzņemt attēlu īstajā brīdī 2. Uzlaboti izmēģinājumi un kļūdas, aptumšojot telpu, ievietojot kameru uz spuldzes (atverot aizvaru) un iedarbinot zibspuldzi īstajā laikā 3. Iegādājieties īpašu sprūda kontrolieri, kuram ir sava veida audio/gaismas sensors, lai uzņemtu attēlu pēc jūsu komandas 4. Izveidojiet to pats! Labi, 1 un 2 ir piemēroti, lai sajauktos, un var iegūt ļoti labus attēlus. Bet tas, ko es jums parādīšu, ir tas, ka ir iespējams izveidot ķēdi, kas jums atkal un atkal sniegs konsekventus rezultātus. Vissvarīgākais ir tas, ka šajos saspringtajos laikos izmaksas ir zemākas nekā alternatīviem modeļiem (daži cilvēki ir izveidojuši komplektus, kas nodarbojas ar šāda veida darbībām, bet tie maksā bagātību, skatiet saites). Dizaina daudzpusība ir šāda: ja sensors rada izejas spriegumu no 0 līdz 5 V, varat to izmantot, lai iedarbinātu kameru! No pirmā acu uzmetiena tas ir garlaicīgs paziņojums, bet, kad jūs sākat saprast sekas, tas kļūst ļoti spēcīgs. Vienkārši uzraugot sprieguma līmeni, jūsu sprūda var būt balstīta uz gaismu (LDR), uz skaņu (mikrofons vai ultraskaņa), uz temperatūru (termistors) vai pat vienkāršs potenciometrs. Patiesībā gandrīz jebko. Jūs pat varētu saistīt ķēdi ar citu kontrolieri un ar nosacījumu, ka tas var sniegt loģisku izvadi, tādējādi jūs varat to aktivizēt. Vienīgais būtiskais dizaina ierobežojums pašlaik ir tas, ka tas darbojas tikai ar IR saskarnēm, un programmatūras un aparatūras pārveidošana, lai izvadītu, izmantojot mini-USB vai jebkura veida saskarne, būtu diezgan vienkārša. Piezīme: Avota kods: 13. darbībā esmu nodrošinājis dažas lietojumprogrammas. Kods, kuru pašlaik izmantoju savā kontrolierī, ir heksadecimālā failā kopā ar galveno c failu un tā atkarībām. Jūs varat vienkārši palaist manu kodu, ja neesat pārliecināts par kompilēšanu. Esmu iekļāvis arī dažus koda paraugus, kurus varat izmantot dažādās darbībās (tie ir acīmredzami nosaukti kā remote_test, intervalometra tests un adc tests. Ja es atsaucos uz kodu kādā solī, iespējams, ka tas ir tur. EDIT: Atjauninājums par parādās baloni - šķiet, es biju mazliet tuvredzīgs, kad teicu, ka varat viegli uzņemt uzlecošu balonu fotoattēlus. Izrādās, ka vidējā balona āda pārvietojas tik ātri, ka līdz kameras uzliesmošanai tā būs pilnībā izlēcusi. ir problēma ar lielāko daļu kameru, NAV kontrollera (kas uztver ADC ar ātrumu aptuveni 120 kHz). Visapkārt ir jāizmanto aktivizēta zibspuldze, kas ir izdarāma, ja pievienojat papildu vadu un citu nelielu ķēdi. teica, ka teorētiski jūs varētu izmantot kaut ko citu, lai to parādītu un spēlētu ar aizkavi (vai pat mainīt aizkaves kodu, iekļaujot tajā mikrosekundes). Tikai ieroča pārvietošana nodrošinātu elementāru aizkavēšanos par dažām mikrosekundēm s. Atkal atvainojos par to, es spēlēšu šovakar, ja varēšu paņemt rokās dažus balonus, bet audio iedarbināšanai joprojām ir daudz pielietojumu, piemēram, uguņošana! Zemāk esmu ievietojis ātru un netīru laika intervālu, lai parādītu, ka tas tomēr darbojas:) Neaizmirstiet lasīt, novērtēt un/vai balsot! Sveiks, Džošs Atruna Maz ticamā gadījumā, ja kaut kas šausmīgi noiet greizi vai tu kaut kādā veidā aizķēra kameru/izjauc savu kaķi, es neesmu ne par ko atbildīgs. Uzsākot projektu, pamatojoties uz šo pamācību, jūs to pieņemat un turpiniet uz savu risku. Ja veicat kādu no šīm darbībām vai izmantojat manu pamācību, lai jums palīdzētu - lūdzu, atsūtiet man saiti/fotoattēlu, lai es varētu to šeit iekļaut! Atbilde līdz šim ir bijusi milzīga (vismaz pēc maniem standartiem), tāpēc būtu lieliski redzēt, kā cilvēki to interpretē. Es strādāju pie 2. pārskatīšanas, kad rakstīju;)

1. solis: dažas sākotnējās domas…

Tātad, kā mēs veidosim šo lietu? Mikrokontrolleris Šī projekta sirds un dvēsele ir AVR ATMega8. Būtībā tā ir nedaudz apgriezta ATMega168 mikroshēmas versija, ko izmanto Arduino. Tas ir programmējams C vai montāžā, un tam ir dažādas patiešām noderīgas funkcijas, kuras mēs varam izmantot savā labā. "28 tapas, no kurām lielākā daļa ir ieejas/izejas (i/o)" Borta analogo ciparu pārveidotājs "Zems enerģijas patēriņš "3 iebūvētie taimeri" Iekšējais vai ārējais pulksteņa avots "Daudz koda bibliotēku un paraugu tiešsaistē. Ir daudz tapu. Mēs varam saskarties ar LCD ekrānu, ir 6 pogu ieejas, un joprojām ir pietiekami daudz, lai IR LED varētu fotografēt ar dažām statusa gaismas diodēm. Atmel AVR sērijas procesoriem ir liels atbalsts tiešsaistē, un ir daudz pamācību, kā iegūt sākās (es to īsumā aplūkošu, bet ir labākas īpašas apmācības) un kaudzēm un kaudzēm koda, par ko padomāt. Atsaucei es kodēšu šo projektu C, izmantojot AVR-LibC bibliotēku. Es to varētu viegli izdarīt, izmantojot PIC, lai to izdarītu, taču AVR ir labi atbalstīts, un visi piemēri, kurus esmu atradis tālvadības pultīm, ir balstīti uz AVR! LCD displejs ir divi galvenie displeja veidi - grafiskais un burtciparu. Grafiskajiem displejiem ir izšķirtspēja, un jūs varat ievietot pikseļus, kur vien vēlaties. Negatīvie ir tas, ka tos ir grūtāk kodēt (lai gan bibliotēkas pastāv). Burtciparu displeji ir vienkārši viena vai vairākas rakstzīmju rindas, LCD ir iebūvēts pamata rakstzīmju krājums (t.i., alfabēts, daži cipari un simboli), un ir salīdzinoši viegli izvadīt virknes un tā tālāk. Negatīvie ir tie, ka tie nav tik elastīgi, un grafikas parādīšana ir praktiski neiespējama, taču tā atbilst mūsu mērķim. Tie ir arī lētāki! Burtciparus klasificē pēc to rindu un kolonnu skaita. 2x16 ir diezgan izplatīts, ar divām 16 rakstzīmju rindām, katra rakstzīme ir 5x8 matrica. Jūs varat arī iegūt 2x20 s, bet es neredzu vajadzību. Pērciet visu, ar ko jūtaties ērti. Es izvēlējos izmantot sarkanu LCD apgaismojumu (es vēlos to izmantot astrofotogrāfijai, un sarkanā gaisma ir labāka nakts redzamībai). Jūs varat iztikt bez apgaismojuma - tā ir jūsu izvēle. Ja izvēlēsities maršrutu bez apgaismojuma, jūs ietaupīsiet enerģiju un naudu, bet jums, iespējams, vajadzēs lukturīti tumsā. Meklējot LCD, pārliecinieties, ka to kontrolē HD44780. Tas ir nozares standarta protokols, ko izstrādājis Hitachi, un ir daudz labu bibliotēku, kuras varam izmantot datu izvadīšanai. Modelis, kuru es nopirku, bija JHD162A no eBay. Ievadi ievadīs pogas (vienkārši!). Es izvēlējos 6 režīmu izvēli, ok/shoot un 4 virzienus. Ir arī vērts iegūt citu mazu pogu, lai atiestatītu mikro avārijas gadījumā. Runājot par sprūda ievadi, dažas pamatidejas ir no gaismas atkarīgs rezistors vai elektrīta mikrofons. Šeit jūs varat kļūt radošs vai skops atkarībā no budžeta. Ultraskaņas sensori maksās nedaudz dārgāk un prasīs papildu programmēšanu, taču ar tiem jūs varat paveikt patiešām glītas lietas. Lielākā daļa cilvēku būs apmierināti ar mikrofonu (iespējams, visnoderīgāko vispārējo sensoru), un elektri ir ļoti lēti. Ņemiet vērā, ka arī tas būs jāpastiprina (bet es to aplūkošu vēlāk). Izeja - statuss attēlus, mums ir jābūt saskarē ar kameru, un tam mums ir nepieciešams gaismas avots, kas var radīt infrasarkano starojumu. Par laimi, to dara daudzi gaismas diodes, un jums vajadzētu mēģināt izvēlēties samērā lielu jaudu. Ierīcei, kuru es izvēlējos, pašreizējais reitings ir 100mA max (lielākā daļa gaismas diodes ir aptuveni 30mA). Jums vajadzētu arī pievērst uzmanību viļņa garuma izejai. Infrasarkanā gaisma atrodas garākā EM spektra viļņu garuma daļā, un jums vajadzētu meklēt vērtību aptuveni 850–950 nm. Lielākā daļa IR gaismas diodes tiecas uz 950 galu, un, ieslēdzot, jūs varat redzēt mazliet sarkanu gaismu, tā nav problēma, bet tas ir izšķērdēts spektrs, tāpēc, ja iespējams, mēģiniet tuvināties 850. Jauda šo? Nu, tas būs pārnēsājams, tāpēc baterijas! Es izvēlējos izmantot 2 AA baterijas, kuras pēc tam tiek pastiprinātas līdz 5 V. Nākamajās sadaļās es aplūkošu šī iemesla pamatojumu. "Korpuss un būvniecība" Tas, kā jūs to darāt, ir pilnībā atkarīgs no jums. Pēc prototipēšanas es nolēmu ķēdei izmantot sloksnes plāksni, jo tas ir lēts un elastīgs un ļauj ietaupīt pielāgotas PCB izstrādi. Es esmu sniedzis shēmas, lai jūs varētu brīvi izveidot savu PCB izkārtojumu - lai gan, ja jūs to darītu, es būtu pateicīgs, ja saņemtu kopiju! Atkal lieta ir pilnībā jūsu izvēle, tai ir jāspēj iederēties ekrānā, pogas (diezgan intuitīvā izkārtojumā, ja iespējams) un baterijas. Tā kā shēmas plates ir ļoti sarežģītas, daudzi savienojumi ir vienkārši saistīti ar tādām lietām kā pogas/LCD.

2. darbība. Enerģijas pārvaldība

Enerģijas pārvaldība
Enerģijas pārvaldība

Šādam projektam ir skaidrs, ka pārnesamībai vajadzētu būt galvenajam aspektam. Tādējādi baterijas ir loģiska izvēle! Tagad pārnēsājamām ierīcēm ir diezgan svarīgi izvēlēties akumulatora avotu, kas ir uzlādējams vai viegli pieejams. Divas galvenās iespējas ir 9V PP3 baterija vai AA baterijas. Es esmu pārliecināts, ka daži cilvēki pieņems, ka 9V akumulators ir labākais risinājums, jo hei, 9V ir labāks par 3? Nu, ne šajā gadījumā. Lai gan 9 V baterijas ir ļoti noderīgas, tās rada spriegumu uz akumulatora darbības laika rēķina. Mērīts mAh (miliamperu stundās), šis vērtējums teorētiski norāda, cik ilgi akumulators stundās darbosies ar 1 mA (lai gan to var ņemt ar šķipsniņu sāls, tie bieži ir ideālos, zemās slodzes apstākļos). Jo augstāks vērtējums, jo ilgāk akumulators kalpos. 9V baterijas ir paredzētas līdz 1000 mAh. Savukārt sārmainajiem AA ir gandrīz trīs reizes vairāk pie 2900 mAh. NiMH uzlādējamās ierīces to var sasniegt, lai gan 2500 mAh ir saprātīga summa (ņemiet vērā, ka uzlādējamās baterijas darbojas ar spriegumu 1,2 V, nevis 1,5!). LCD ekrānam ir nepieciešama 5 V ieeja (10%), un AVR (mikrokontrolleram) ir nepieciešams aptuveni tas pats (lai gan zemfrekvences pulksteņa ātrumam tas var sasniegt pat 2,7). Mums ir vajadzīgs arī diezgan stabils spriegums, ja tas svārstās, tas var radīt problēmas ar mikrokontrolleri. Lai to izdarītu, mēs izmantosim sprieguma regulatoru, jums tagad ir jāizvēlas cena un efektivitāte. Jums ir iespēja izmantot vienkāršu 3 kontaktu sprieguma regulatoru, piemēram, LM7805 (78 sērija, +5 voltu izeja) vai nelielu integrālo shēmu. Vienkārša regulatora izmantošana Ja izvēlaties izmantot šo opciju, jums ir jābūt daži punkti prātā. Pirmkārt, trīs tapu regulatoriem gandrīz vienmēr ir nepieciešama ievade, kas ir augstāka par to jaudu. Pēc tam viņi samazina spriegumu līdz vēlamajai vērtībai. Negatīvie ir tie, ka tiem ir šausmīga efektivitāte (50–60% ir labs rezultāts). Otrā puse ir tā, ka tie ir lēti un darbosies ar 9 V akumulatoru, Apvienotajā Karalistē jūs varat izvēlēties pamata modeli par 20 pensiem. Jums arī jāpatur prātā, ka regulatoriem ir izslēgšanas spriegums - minimālā atstarpe starp ieeju un izeju. Jūs varat iegādāties īpašus LDO (Low DropOut) regulatorus, kuru izkrišana ir aptuveni 50 mV (salīdzinājumā ar 1-2 V ar citiem dizainparaugiem). Citiem vārdiem sakot, pievērsiet uzmanību LDO ar +5 V izeju. Integrētās shēmas izmantošana Ideāls ceļš ir komutācijas regulators. Mūsu nolūkos tie parasti būs 8 kontaktu iepakojumi, kas uzņem spriegumu un nodrošina mums regulētu izeju ar augstu efektivitāti - dažos gadījumos gandrīz 90%. Atkarībā no tā, ko vēlaties ievietot, varat iegūt pastiprinātājus vai pazeminātus pārveidotājus (attiecīgi palielināt/samazināt), vai arī varat iegādāties regulatorus, kas aizņems virs vai zem vēlamās produkcijas. Šim projektam izmantotā mikroshēma ir MAX619+. Tas ir 5V pastiprināšanas regulators, kas ņem 2 AA (ievades diapazons ir 2V-3.3V) un nodrošina vienmērīgu 5V izeju. Tam ir nepieciešami tikai četri kondensatori, un tas ir ļoti efektīvs telpā. Izmaksas - 3,00, ieskaitot ierobežojumus. Acīmredzot ir vērts plātīties tikai tāpēc, lai mazliet vairāk izmantotu baterijas. Vienīgais būtiskais trūkums ir tas, ka tas nav aizsargāts pret īssavienojumu, tādēļ, ja ir strāvas pārspriegums, brīdiniet! Tas ir samērā triviāli, lai to novērstu, izmantojot pievienoto shēmu: Vēl viens noderīgs mikroshēmas dizains - lai gan ne tuvu nav tik glīts risinājums, ir LT1307. Atkal 5V regulators, taču tam var būt vajadzīgas dažādas ieejas, un tam ir noderīgas lietas, piemēram, zema akumulatora līmeņa noteikšana. Ar induktoriem, lieliem kondensatoriem un rezistoriem tas maksā nedaudz vairāk - gandrīz 5 reizes. Sprieguma sliedes Mēs izmantosim divas galvenās sprieguma sliedes (plus kopīgu zemi). Pirmais būs 3V no akumulatora, tas tiks izmantots, lai darbinātu gaismas diodes un citus salīdzinoši lielas jaudas komponentus. Mans MAX619 ir paredzēts tikai līdz 60 mA (lai gan absolūtais maksimums ir 120 mA), tāpēc ir vieglāk savienot mikrokontrolleru ar MOSFET, lai kontrolētu visas gaismas diodes. MOSFET gandrīz neizmanto strāvu un darbojas kā pārtraukums ķēdē, kad vārtu ievade ir zemāka par 3 V. Kad mikrokontrolleris izsūta loģisko 1 uz tapas, spriegums ir 5V un FET ieslēdzas, tad darbojas tikai kā īssavienojums (ti, stieples gabals). 5V sliede darbinās LCD, mikrokontrolleru un visas pastiprināšanas shēmas Ievades sensori. Jaudas patēriņš LCD darbināšanai nepieciešams tikai 1 mA (vismaz tad, kad es pārbaudīju, budžets ir 2). Ja ir ieslēgts fona apgaismojums, tas tiešām ir jāizlemj jums. Pievienot to taisni pie 5V sliedes (es mēģināju) ir labi, taču pārliecinieties, vai tam ir iebūvēts rezistors (sekojiet PCB pēdām). Tas uzņēma 30mA tādā veidā - briesmīgi! Ar 3,3 k rezistoru tas joprojām ir skatāms (ideāls astro fotografēšanai) un patērē tikai 1 mA. Jūs joprojām varat iegūt pienācīgu spilgtumu, izmantojot 1k vai citādi. Man ir labi ar manu zīmējumu nedaudz zem 2mA ar ieslēgtu fona apgaismojumu! Ja vēlaties, ir mazsvarīgi pievienot spilgtuma pogu, izmantojot 10k potenciometru. IR gaismas diode var aizņemt maksimāli 100 mA, bet man ir bijuši labi rezultāti ar 60 mA manā (eksperiments!). Pēc tam jūs varat samazināt šo strāvu uz pusi, jo jūs faktiski strādājat ar 50% darba ciklu (kad LED ir modulēts). Jebkurā gadījumā tas ir ieslēgts tikai sekundes daļu, tāpēc mums par to nav jāuztraucas. Pārējās gaismas diodes, ar kurām jums vajadzētu spēlēties, var secināt, ka pietiek tikai ar 10 mA strāvu, lai sniegtu jums labu spilgtumu. mazjaudas gaismas diodēm (izņemot IR) neveidojat lāpu! Es izvēlējos nepievienot strāvas indikatoru savai ķēdei, vienkārši tāpēc, ka tas patērē daudz strāvas, lai to neizmantotu daudz. Izmantojiet ieslēgšanas/izslēgšanas slēdzi, lai pārbaudītu, vai tas ir ieslēgts! Kopumā jums nevajadzētu darboties vairāk par 30 mA vienlaicīgi un ar teorētisko piegādi aptuveni 2500 (pieļaujot izmaiņas) mAh, kam vajadzētu dot vairāk nekā 80 stundas taisni ar visu ieslēgtu. Ja procesors lielāko daļu laika ir tukšgaitā, tas vismaz dubultosies/trīskāršosies, tāpēc jums nevajadzētu ļoti bieži mainīt baterijas. Secinājums Jūs varat vai nu lēti un jautri ar 9V akumulatoru un LDO regulatoru uz efektivitātes rēķina, vai arī samaksāt nedaudz vairāk un izmantot īpašu IC, lai to izdarītu. Mans budžets joprojām bija zem 20, pat izmantojot IC, tāpēc, ja nepieciešams, varat to samazināt vēl vairāk.

3. solis: tuvāk apskatiet ATmega8

Aplūkojiet tuvāk ATmega8
Aplūkojiet tuvāk ATmega8

PinsImage 1 ir ATMega8 pinout diagramma (tieši tāda pati kā 168/48/88, vienīgā atšķirība ir iebūvētās atmiņas apjoms un pārtraukšanas iespējas). Pin 1 - Reset, jāuztur pie VCC sprieguma (vai vismaz loģiski 1). Ja ir iezemēts, ierīce tiks mīksti atiestatīta Pin 2-6 - D ports, vispārējā ieeja/izeja 7. pin - VCC, barošanas spriegums (mums+5 V) 8. tapa - GroundPin 9, 10 - XTAL, ārējā pulksteņa ieejas (daļa no B porta)) Pin 11 - 13 Port D, vispārējā ieeja/izeja Pin 14 - 19 Port B, vispārējā ieeja/izeja Pin 20 - AVCC, analogā barošanas spriegums (tāds pats kā VCC) 21. tapa - AREF, atsauce uz analogo spriegumu 22. pin - GroundPin 23-28 Port C, vispārēja ieeja/izeja Izmantojamie i/o porti: D = 8, C = 6, B = 6 Kopā ir 20 izmantojami porti, un vienkāršības labad izejas jāklasificē portos (teiksim, D kā izejas ports) vai grupas uz tāfeles - iespējams, vēlēsities, lai LCD darbotos no porta C tikai, lai vadi būtu sakārtoti šajā stūrī. Programmēšanai ir vajadzīgas trīs papildu tapas. Tie ir MISO (18), MOSI (17) un SCK (19). Tomēr, ja nepieciešams, tie ar prieku darbosies kā i/o tapas. Pulkstenis Signālam, ko nosūtām uz kameru, ir jābūt precīzi noteiktam laikam (aptuveni mikrosekundes precizitātei), tāpēc ir svarīgi izvēlēties labu pulksteņa avotu. Visiem AVR ir iekšējais oscilators, no kura mikroshēma var iegūt savu pulksteni. Negatīvie ir tas, ka tie var svārstīties aptuveni 10% temperatūrā/spiedienā/mitrumā. Lai to apkarotu, mēs varam izmantot ārēju kvarca kristālu. Tie ir pieejami jebkurā diapazonā no 32768 kHz (pulkstenis) līdz 20 MHz. Esmu izvēlējies izmantot 4Mhz kristālu, jo tas nodrošina pienācīgu ātrumu, taču ir diezgan konservatīvs, salīdzinot ar varbūt 8Mhz+. Borta enerģijas pārvaldība Es patiešām gribēju savā kodā izmantot miega režīmu. Faktiski es uzrakstīju pirmo versiju, kas lielā mērā paļaujas uz procesora tukšgaitu, kamēr laiks beidzas. Diemžēl laika ierobežojumu dēļ es saskāros ar dažām problēmām, kas saistītas ar pulksteņa ārēju darbību un pārtraukšanu, izmantojot taimeri. Būtībā man būtu jāpārraksta kods, lai tiktu galā ar to, ka kontrolieris vienkārši nepamostas - ko es varētu darīt, bet laiks ir pret mani. Ierīce patērē tikai 20 mA, lai jūs varētu izvairīties. Ja jūs patiešām esat gatavs to darīt, tad ar visiem līdzekļiem izklaidējieties ar kodu, viss, kas jums jādara, ir pulkstenis iekšēji un pēc tam palaist 2. taimeri asinhronā režīmā, izmantojot 4MHz kristālu, lai iegūtu precīzāku aizkavi. Tas ir vienkārši izdarāms, bet laikietilpīgs. ADC Šveices armijas nazis AVR rīku komplektā, ADC apzīmē Analogue to Digital Converter. No ārpuses tas ir salīdzinoši vienkārši. Spriegums tiek ņemts uz tapas (no kāda sensora vai citas ieejas), spriegums tiek pārveidots par digitālo vērtību no 0 līdz 1024. Ja ievades spriegums ir vienāds ar ADC atsauces spriegumu, tiks novērota vērtība 1024. Ja mēs iestatām atsauci uz VCC (+5 V), tad katrs sadalījums ir 5/1024 V vai aptuveni 5 mV. Tādējādi, palielinot tapu par 5 mV, ADC vērtība palielināsies par 1. Mēs varam ņemt ADC izvades vērtību kā mainīgo un pēc tam vijolīt ar to, salīdzināt to ar lietām utt. Kodā. ADC ir neticami noderīga funkcija, un tā ļauj veikt daudzas atdzist lietas, piemēram, pārvērst AVR par osciloskopu. Paraugu ņemšanas frekvence ir aptuveni 125 kHz, un tā ir jāiestata proporcionāli galvenajai pulksteņa frekvencei. Reģistrs ir vienkārši adrešu (atrašanās vietu) kopums AVR atmiņā. Reģistri tiek klasificēti pēc to bitu lieluma. 7 bitu reģistram ir 8 atrašanās vietas, jo mēs sākam no 0. Ir reģistri gandrīz visam, un mēs tos apskatīsim daudz sīkāk vēlāk. Daži piemēri ir PORTx reģistri (kur x ir B, C vai D), kas kontrolē, vai tapa ir iestatīta augsta vai zema, un nosaka ieejas pretestību, DDRx reģistri, kas nosaka, vai tapa tiek izvadīta vai ievadīta, un tā tālāk. DatasheetA literatūras behemots, kas sver aptuveni 400 lappuses; AVR datu lapas ir nenovērtējama atsauce uz jūsu procesoru. Tie satur informāciju par katru reģistru, katru tapu, kā darbojas taimeri, kādi drošinātāji ir jāiestata uz ko un vēl daudz vairāk. Tie ir bez maksas, un agrāk vai vēlāk jums tas būs vajadzīgs, tāpēc lejupielādējiet kopiju! Www.atmel.com/dyn/resources/prod_documents/doc2486.pdf

4. solis: tapas piešķiršana

Piešķiršanas tapas
Piešķiršanas tapas

Es jau minēju ieejas un izejas, kas mums nepieciešamas, tāpēc mums tās jāpiešķir! Tagad PORT D ir 8 tapas, kas ir ērti, jo tas var darboties kā mūsu izejas ports. LCD darbināšanai nepieciešami 7 tapas - 4 datu tapas un 3 vadības tapas. IR gaismas diodei ir nepieciešama tikai viena tapa, lai veidotu mūsu 8. PORTB būs mūsu pogas ports, tai ir 6 ieejas, bet mums vajadzēs tikai 5. Tās būs režīma un virziena pogas. īpašs, tas ir ADC ports. Mums ir nepieciešama tikai viena tapa sprūda ieejai, un ir jēga to ievietot PC0 (parasts ostas tapu saīsinājums šajā gadījumā ports C, 0). Pēc tam mums ir pāris tapas statusa gaismas diodēm (viena iedegas, kad ADC vērtība ir virs kāda stāvokļa, otra iedegas, kad tā ir zemāka par kādu stāvokli). Mēs arī šeit ievietosim savu ok/shoot pogu, iemeslu dēļ, kas kļūs skaidrs vēlāk. Pēc tam mēs esam izmantojuši lielāko daļu ostu, bet mums vēl ir palikuši daži, ja vēlaties paplašināt projektu - varbūt vairāki izraisītāji?

5. darbība. Saziņa ar kameru

Saziņa ar kameru
Saziņa ar kameru
Saziņa ar kameru
Saziņa ar kameru

Pirmā balva digitālo dienu fotokonkursā

Ieteicams: