دا ټول د لیکوال سره په ثانوي بازار کې د زړه پورې وسیلې پیرود سره پیل شوي - سمارټ ځواب XE (
دا وسایل څو کاله دمخه بند شوي وو، او کوم ښوونځي چې هر یو $ 100- $ 200 لپاره پیرودلي اوس په ای بی کې د $ 10 یا لږ لپاره پاپ کیږي. هلته هارډویر د ګیکي تجربو لپاره خورا مناسب دی:
- 60 کلیدي کیبورډ
- د 384 × 136 ریزولوشن سره ښکاره کول، په هر پکسل کې 2 بټونه - BC، CGA ته ورته، مګر 4 رنګونه نه، مګر د روښانتیا درجه
- مایکرو کنټرولر ATmega128RFA1 (128 kB فلش حافظه، 4 kB ROM، 16 kB RAM، 802.15.4 ټرانسیور)
- بهرنۍ (د مایکرو کنټرولر په تړاو، نه ټول وسیله) 1 میګابایټ (128 کیلوبایټ) فلش حافظه د SPI انٹرفیس سره
- د 4 AAA عناصرو لپاره کڅوړه.
د مایکرو کنټرولر له نوم څخه دا روښانه ده چې دا د AVR کورنۍ پورې اړه لري ، پدې معنی چې د وسیلې Arduino-compatible جوړول د کوچني کار څخه ډیر دی ...
له خبرونو څخه
مګر لیکوال په دې فرصت کې ډیر لیوالتیا لري چې په وسیله لوبې نه کوي، مګر د مطالعې لپاره:
- د سیریل SPI انٹرفیس سره فلش حافظه
- د AVR لپاره بوټلوډر
- معیار 802.15.4
لیکوال په لیکلو پیل وکړ
دا د Arduino بوټلوډر اپلوډ کولو لپاره کافي دی ، مګر سکیچ نه - سیریل پورټ هلته وصل ندی ، نو تاسو لاهم د قضیې خلاصولو پرته نشئ کولی. همچنان ، د لومړي سیریل پورټ TX0 او RX0 لاینونه د کیبورډ میټریکس د رایې ورکولو لاینونو سره یوځای شوي ، د بیلګې په توګه هغه څوک چې د نندارې په اړخونو کې د فعالیت کیلي رایه ورکوي. مګر تاسو څه کولی شئ - لیکوال دا جوړ کړی:
هغه هلته د JTAG لینونه راوړل، او اوس اړتیا نشته چې د بیټرۍ کمپارټ پرانیستل شي. او د دې لپاره چې سکیچونه اپلوډ شي ، ما دواړه سیریل پورټونه ورته نښلونکي سره وصل کړل ، یو سویچ یې هم اضافه کړ ، ځکه چې د بیټرۍ نصبولو سره ، دا په فزیکي لحاظ ناممکن دی چې وسیله په بل ډول بنده کړي.
د سولډرینګ اوسپنې، یوټیلټي چاقو او د ګوتو ټوپک سره کار کولو لپاره یو څه وخت ونیول. په عموم کې، "په هوا کې" د سکیچونو پورته کول خورا اسانه دي؛ موږ په چټکۍ سره د دې لپاره یو څه اختراع کولو ته اړتیا لرو.
Arduino IDE د سکیچونو اپلوډ کولو لپاره برنامه کاروي
د دې ستونزې د له منځه وړلو لپاره د مختلفو لارو هڅه کولو وروسته، لیکوال لاندې سره راغی. وسیله د SPI انٹرفیس سره 128 KB فلش حافظه لري - موږ په تارونو کې ډیټا ترلاسه کوو (په یاد ولرئ چې لیکوال دمخه یو وسیله لري چې په اړخ کې نښلونکی لري) ، دا حافظه د بفر په توګه وکاروئ ، او ډیټا راډیو ته واستوو. بل وسیله ته چینل. د سایبکو څخه سلام.
د راډیو چینل سره د کار کولو لپاره د کوډ لیکلو وروسته، او همدارنګه فونټ، لوډر د 4 کیلوبایټ څخه ډیر اوږد شو. له همدې امله، د HFUSE ارزښت باید له 0xDA څخه 0xD8 ته بدل شي. اوس بوټلوډر تر 8 کیلوبایټ پورې اوږد کیدی شي، او د پیل پته اوس 0x1E000 ده. دا په میک فایل کې منعکس کیږي ، مګر د ډکولو پرمهال باید په پام کې ونیول شي
په ATmega802.15.4RFA128 کې د 1 ټرانسیور په اصل کې د پروتوکول په کارولو سره د کار کولو لپاره ډیزاین شوی
دا معلومه شوه چې 15 او 26 چینلونه لږ تر لږه د وائی فای مداخلې لپاره حساس دي، لیکوال د دوی دویم غوره کړی. اعلان: ژباړونکی نه پوهیږي چې ایا دا اجازه لري چې ZigBee پدې ډول ساده کړي. شاید موږ یو څه نور پروګرامونه وکړو او په بشپړ ډول یې پلي کړو؟
په لومړي وسیله کې، دا اړینه ده چې یو محدود دولتي ماشین پلي کړئ چې د STK500 پروتوکول له لارې ډاټا لیږدوي. د ډیری برخې لپاره، لیږل شوي او ترلاسه شوي پیغامونه په خپل ځان بسیا دي، مګر ځینې یې د هغو سره تړلي دي چې مخکې د چینل له لارې تیر شوي. د خبرو اترو توضیحات ورکړل شوي
د دې ډیالوګ یوه مهمه برخه د پاکټونو لیږد دی چې هدف یې د منزل وسیلې فلش حافظې ته لیکل کیږي. د AVR کورنۍ ساده مایکروکنټرولرونو لپاره، د پاڼې اندازه 128 بایټه ده، مګر د ATmega128RFA1 لپاره دا 256 دی. او د فلش حافظې لپاره چې د SPI پروتوکول له لارې تړل کیږي، دا ورته دی. په لومړي وسیله کې برنامه ، کله چې سکیچ اپلوډ کوي ، سمدلاسه یې دوهم ته نه لیږدوي ، مګر دې حافظې ته یې لیکي. کله چې د Arduino IDE د ننوتلو سموالی معاینه کوي، دا لیږل کیږي چې هلته څه لیکل شوي. اوس موږ اړتیا لرو چې ترلاسه شوي معلومات د راډیو چینل له لارې دوهم وسیله ته انتقال کړو. په ورته وخت کې، د ترلاسه کولو څخه لیږدولو او بیرته لیږدولو ته ډیری وختونه پیښیږي. د STK500 پروتوکول د ځنډ په اړه بې پروا دی، مګر د معلوماتو ضایع نه زغمي (عجیب، مګر پورته وویل شول چې ځنډ د معلوماتو لیږد هم اغیزه کوي). او د بې سیمه لیږد پرمهال زیانونه ناگزیر دي. ATmega128RFA1 د بار بار غوښتنو لپاره جوړ شوي هارډویر پلي کول لري کله چې د لیږد سموالي په اړه شک شتون ولري ، مګر لیکوال پریکړه کړې چې پخپله سافټویر کې ورته پلي کړي. هغه یو پروتوکول رامینځته کړ په کوم کې چې ډیر ډیټا د بل په پرتله له یوې لارې تیریږي.
دا کامل نه دی، مګر دا کار کوي. د 256 بایټ پاڼه په څلورو برخو ویشل شوې، چې هر یو یې د پاکټ په توګه د هوا له لارې لیږدول کیږي. یو کڅوړه کولی شي د 125 بایټ ډیټا او د اوږدوالي لپاره یو بایټ او د CRC لپاره دوه بایټس وساتي. نو د پاڼې او برخې شمیرې (له 64 څخه تر 0 پورې) سره 3 بایټ اوږد ټوټې هلته ځای په ځای شوي. د ترلاسه کولو وسیله یو متغیر لري چې دا ته اجازه ورکوي چې تعقیب کړي چې څومره برخې ترلاسه شوي، او کله چې ټول څلور راشي، د لیږلو وسیله تاییدوي چې ټوله پاڼه ترلاسه شوې. هیڅ تایید (CRC سمون نه درلود) - ټوله پاڼه بیا واستوئ. سرعت حتی د کیبل له لارې لیږدولو څخه ډیر دی. وګورئ:
مګر په عموم کې ، دا به اړین وي چې د سکیچونو اپلوډ کولو او د هغې له لارې وسیلو ته کیبل سره وصل کولو لپاره اسانه لاره چمتو کړئ. د مثال په توګه، د داسې یو انټرفیس کنورټر دننه په CP2102 کې ځای په ځای کړئ، لکه څنګه چې په عکس کې، او بورډ ته یې چپه کړئ ترڅو د مایکرو USB کیبل سره نښلولو او منحل کولو په وخت کې د ځواک سره مقاومت وکړي.
دا د 3,3 ولټ سټیبلائزر هم لري (او دا څنګه په وسیله کې د 6 ولټ بریښنا رسولو سره وکاروئ - که یوازې دا ورته سټیبلائزر ولري ، او تاسو کولی شئ دوه ډیایډونه اضافه کړئ ترڅو په اتوماتيک ډول وټاکئ چې کوم یو به وسیله بریښنا کړي) . ټول درې LEDs باید د انٹرفیس کنورټر بورډ څخه غیر پلورل شوي وي ، که نه نو دوی به اضافي بیټرۍ بار کړي کله چې دوی کار کوي ، او همدارنګه د کیبورډ رای ورکولو کې مداخله کوي او د SPI انٹرفیس سره د فلش حافظې سره کار کوي.
د یوې موخې تعقیب د هغې د ترلاسه کولو په پرتله خورا په زړه پورې وګرځید (او د بس په اړه دې ټوکې ته اړتیا نلري). لیکوال د AVR بوټلوډرانو، SPI فلش حافظې، د STK500 پروتوکول او 802.15.4 معیار په اړه ډیر څه زده کړل.
پورته ذکر شوي کتابتون سربیره نور ټول کوډ - دی
سرچینه: www.habr.com