Агуулгын хүснэгт:
Видео: Ерөнхий шилжүүлэгч барьцаалагч: 3 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
Энэ нийтлэлд физик унтраалгыг хянадаг хатуу төлөвт микроконтроллер төхөөрөмжийг хэрхэн бүтээх талаар тайлбарласан болно. Танд микроконтроллер програмист байгаа гэж үзвэл (4 доллар орчим) хийх нь маш хямд юм. Хэлхээ нь өөрөө нарийн төвөгтэй байдаг.
Энэхүү төсөл нь маш энгийн бөгөөд ямар ч гайхалтай шинэ техник шаарддаггүй. Энэ нь анхны микроконтроллерийн сайн төсөл болно. Угсралтын эх кодыг энэ нийтлэлд танд өгөх болно. Надад ажил дээрээ үнэхээр дажгүй дарга байгаа. Заримдаа бид бие биентэйгээ практик онигоо тоглох дуртай. Харамсалтай нь түүний хувьд би эрдэмтэн хүн. Энд миний зорилго бол ажлын байран дахь янз бүрийн төхөөрөмжийг богино хугацаанд нууцлаг байдлаар асаах явдал юм. Радио, чимээ шуугиантай принтер, тэр ч байтугай төрсөн өдрийн ядаргаатай хөгжмийн картуудыг энгийн зүйлд нуусан байдаг. Дээрхээс гадна төсөл бол гаралтын тээглүүр өөрсдөө харьцаж чадахаас илүү хүнд ачааг AVR ашиглан хэрхэн хянаж байгаагийн жишээ юм. Энэ бол маш олон төрлийн зүйл юм, учир нь гаралтын тээглүүр нь танд бага хүчдэл, маш хязгаарлагдмал гүйдэл өгдөг. Энэ хэлхээг реле ашиглан өргөжүүлж, маш хүнд ачааг хянах боломжтой.
Алхам 1: Дизайн ба хэлхээ
Энэ төслийн хувьд та бараг бүх микроконтроллер, 5V хүчдэлийн зохицуулагч, NPN транзисторыг ашиглаж болно. Би хэрэглэсэн:
1x ATtiny26L-8PU (~ 2 $) 1x TL780 5в хүчдэлийн зохицуулагч (~ 0.7 $) 1х N2222 транзистор (~ 0.07 $) 1х 9в зай, эсвэл зайны хэмнэлттэй 12в алсын удирдлагатай зай … мөн мэдээж миний найдвартай STK500, одоо ZIF-тэй залгуурууд нэмэгдсэн! Үндсэн загвар нь ийм байна: Микроконтроллер нь цаг хугацааны хоёр гогцоог дамжуулдаг. Төхөөрөмжийг хэзээ асаахыг тодорхойлох урт гогцоо, төхөөрөмжийг хэр удаан асаахыг тодорхойлох богино гогцоо. Асуудал үүсгэх цаг болоход микроконтроллер 14 -р логикийг (хамгийн бага ач холбогдолтой PORTA) илгээдэг. Энэ нь транзисторыг галладаг. Хэрэв та хавчаарыг унтраалганы залгуурт холбосон бол энэ нь унтраалгын эсэргүүцэл гэнэт маш өндөрөөс 1 ом -оос доош буухад хүргэдэг бөгөөд энэ нь ихэнх төхөөрөмжүүдийн хувьд асаалтыг асаахад хангалттай юм. Транзистор нь диод гэдгийг санаарай, хэрэв энэ нь ажиллахгүй бол хавчаарын туйлшрал буруу байж магадгүй тул тэдгээрийг солино уу! Нэмж дурдахад энэ төхөөрөмж нь 9 вольтын батерей шаарддаг бөгөөд үүнээс гадна 8 вольтоос дээш хүчдэл үлдсэн байдаг. Ашиглагдаагүй олон тооны тээглүүрүүд байгаа тул мэдээж илүү эмх замбараагүй байдлыг хангахын тулд та илүү олон унтраалгыг удирдах боломжтой байсан ч энэ нь миний зорилгод хангалттай байсан юм. Дараагийн алхам бол энэ зүйлийг үргэлжлүүлэхийн тулд бичсэн эх код юм. "Асаах" ба "унтраах" төлөвийн үндсэн урт нь ойролцоогоор 10 секунд, 13 минут байна. Эдгээр утгыг хэрхэн өөрчлөх талаар код дээр тайлбарууд байдаг. Эцэст нь таймеруудыг тохируулахын тулд "nop" функцийг өргөн ашигладаг (энэ нь CPU -ийн мөчлөгийг юу ч хийхгүй өнгөрүүлдэг). Хэрэв та хичнээн их хэрэглэж байгаагаа анхаарахгүй бол rjmp функцийг эвдэж болзошгүй тул энэ нь дэгжин юм!
Алхам 2: Эх код
ЭХЛЭХ:
. INCLUDE "tn26def.inc"; Тодорхойлолтын файл. Хэрэв танд хуулбар хэрэгтэй бол Google үүнийг ашиглаарай. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 DDRA, r27 гарах PORTA, r28 TIMER: nop nop nop nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: no nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r29 Tpi r11 t2Rp11 R29, nop nop nop nop nop nop nop nop nop nop nop inc r25 cpi r25, 0b11111111; "унтраах" хугацааг багасгахын тулд энэ тоог бууруул FUNC rjmp TIMER FUNC: nop nop cpi r28, 0x00 breq FUNC2 dec r28 clr r30 clr r29 clr r25 out of PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 out PORTA, r28 clr r25 clr r30 clr r29 rjmp TIMER4 TIMER4: no rop nop nop nop nop nop nop nop nop nop nop nop nop nop nop үгүй nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nop nop nop nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; "On" time breq FUNC rjmp TIMER4 -ийг нэмэгдүүлэхийн тулд энэ тоог нэмнэ үү
Алхам 3: Эцсийн тэмдэглэл
Хөгжилтэй байгаарай, гэхдээ транзистор нь хэр их хүчээр дамжуулж болох талаар хязгаартай гэдгийг санаарай. Энэ нь сүлжээний хүчдэл байхгүй гэсэн үг юм! Энэ нь транзисторыг хэт ачаалахаас гадна энэ төхөөрөмж нь ээлжлэн дамжуулах дохиог сайн хянаж чаддаггүй, хэрэв та доор тайлбарласан өөрчлөлтийг ашиглахгүй бол * ба * реле нэмж оруулаарай: Хэрэв хавчаарын туйлшралын талаар санаа зовох нь таныг бухимдуулж байвал хоёр дахь транзисторыг утсаар холбоно уу. үндсэн транзистортой ижил эх үүсвэрт холбогдсон боловч эсрэг талын коллектор ба ялгаруулагчтай. Ингэснээр та хавчаарыг яаж хавсаргасан хамаагүй микроконтроллероос гарч буй логик нь унтраалгыг үргэлж "асаах" болно. Энэ систем дэх алдагдлын гүйдэл нь гарны матриц гэх мэт зарим мэдрэмтгий унтраалгыг идэвхжүүлэхэд хангалттай байж магадгүй тул энэ програмд резисторыг цувралаар нэмэх шаардлагатай байж магадгүй гэдгийг санаарай. Та батерейг ашиглахын оронд зорилтот төхөөрөмжөөс тэжээл авах боломжтой гэдгийг санаарай. Эцэст нь хэлэхэд би төхөөрөмжийг хэвлэх функцтэй эртний нягтлан бодох бүртгэлийн тооцоолуурт суулгасан. Би цаасан хавчаар ашиглан товчлуурын матрицыг урвуу зохион бүтээсэн бөгөөд аль IC зүү нь цаасан тэжээл өгөхийг тодорхойлж, зөв зүүг төхөөрөмжтэй холбосон. Дараа нь би хэвлэх функцийг унтраах боломжийг олгодог унтраалгыг идэвхгүй болгов. Төхөөрөмжийг асаах бүрт 10 минут тутамд 10 секундын турш маш их чимээ шуугиантай цаасан тэжээлийг асааж, төрсөн өдрийн хөгжмийн картуудын нэгний хэлхээнд сайн ажилладаг байсан.
Зөвлөмж болгож буй:
Arduino 1 утастай ерөнхий үйлчлүүлэгч/боол төхөөрөмж (мэдрэгч): 4 алхам
Arduino 1 утастай ерөнхий үйлчлүүлэгч/боол төхөөрөмж (мэдрэгч): Нөхцөл байдал, номын сангийн талаар илүү их мэдээлэл авахын тулд Arduino 1 утастай дэлгэц (144 тэмдэгт) хэрхэн бүтээх тухай миний зааварчилгааны танилцуулга, 2-р алхамыг уншина уу. Тэнд тайлбарласны дагуу бид OneWire-Hub номын санг ашиглах болно
Ерөнхий 433MHz RF модулиудтай DIY Walkie-Talkie: 4 алхам
Ерөнхий 433MHz RF модулиудтай DIY Walkie-Talkie: Энэхүү төсөлд Walkie-Talkie-ийг ашиглахын тулд Ebay-ээс 433MHz RF-ийн ерөнхий модулийг хэрхэн ашиглахыг танд үзүүлэх болно. Энэ нь бид янз бүрийн RF модулийг харьцуулж, d ангиллын өсгөгчийн талаар бага зэрэг сурч, эцэст нь Walkie-Talkie бүтээх болно гэсэн үг юм
Sugarcube бүхий twine дахь ерөнхий өрөөнүүд: 11 алхам
Sugarcube бүхий Twine -ийн ерөнхий өрөөнүүд: Сайн байна уу, Wumpus Hunt -ийг Sugarcube ашиглан twine хийх талаар миний хичээлд тавтай морилно уу! Twine бол текстэн адал явдалт тоглоом бүтээхэд зориулагдсан маш энгийн хэрэгсэл юм! Миний дуртай бяцхан үеэл ахлах төсөлдөө Twine -тай хамт тоглохоор шийдсэн нь
HP WebCam 101 aka 679257-330 вэбкамерын модулийг ерөнхий USB камер болгон дахин ашиглах: 5 алхам
HP WebCam 101 Aka 679257-330 вэбкамерын модулийг ерөнхий USB камер болгон дахин ашиглах: Би 14 настай Panasonic CF-18-ийг цоо шинэ вэб камераар чимэглэхийг хүсч байна, гэхдээ Panasonic энэ гайхалтай машиныг цаашид дэмжихгүй байгаа тул би үүнийг хийх ёстой. саарал материалыг b & amp (шар айраг & бургер) гэхээсээ илүү хялбар зүйлд ашиглаарай. Энэ бол эхний хэсэг
IOT123 - D1M BLOCKS - Ерөнхий угсралт: 7 алхам
IOT123 - D1M BLOCKS - Ерөнхий угсралт: Төслийнхөө загварыг загварчлах эсвэл хэлхээ үүсгэх үед эд ангиудыг ПХБ -д гагнах үед гагнуурын эвдрэлээс болж бусад хэлхээнд дахин ашиглах хязгаарлалт байдаг. Энд D1M BLOCKS орж ирдэг. Эдгээр нь бүрхүүл/овоолох систем юм