فهرست مطالب:

آشکارساز زامبی: 3 مرحله
آشکارساز زامبی: 3 مرحله

تصویری: آشکارساز زامبی: 3 مرحله

تصویری: آشکارساز زامبی: 3 مرحله
تصویری: The Internet of Things by James Whittaker of Microsoft 2024, نوامبر
Anonim
آشکارساز زامبی
آشکارساز زامبی

وقتی داشتم به دانشگاه می رفتم ، در مزرعه توت Knott کار می کردم و وقتی آخر هفته هالووین افتاد ، ما جمعیت زیادی را به خود جلب کردیم. همه ما لباس پوشیدیم و کمی با آن تفریح کردیم و اکثر مشتریان از این تلاش قدردانی کردند. یکی از "دختران سکه ای" که در آن کار می کردم کاملاً به عنوان مورتیشیا آدامز ظاهر شد. در آن زمان ظاهر گوتی اختراع نشده بود (مگر اینکه مونالیزا را حساب کنید) بنابراین در راه رفتن به محل کار ، از یک پسر بچه در ماشین کنار او در چراغ توقف چشم غره ای گرفت. دوباره به او خیره شد و لبخند بزرگی به او زد - نیش و همه. ظاهراً چهره او بی ارزش بود.

با همین روحیه ، من در مورد ذخیره این پست تا جایی در حوالی هالووین فکر کردم ، اما بعد به یاد آوردم که آخرالزمان زامبی می تواند در هر زمان اتفاق بیفتد. وقتی این را به نوه ها نشان دادم ، به آنها گفتم که اگر آنها زنده هستند نبض آنها را تشخیص می دهد اما هیچ نبضی به این معنی نیست که آنها یک زامبی هستند. اگر جمعیت زیادی دارید ، می توانید از آن به عنوان یک بازی حذف (نوعی نسخه عجیب صندلی های موسیقی) استفاده کنید. یکی از روشهای بازی ما این بود که آن را از روی میز عبور دهیم. اگر پاسخ "انسانی" دریافت کردید یک سکه دریافت کردید ، اگر نه یک سکه پرداخت کردید. بچه ها همیشه بازی هایی را که شامل سکه می شود دوست دارند.

مرحله 1: سخت افزار

سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار

شماتیک در نمودار موجود در بالا نشان داده شده است. قسمت "آشکارساز" یک کلید لمسی خازنی ساده است که معمولاً به عنوان TTP223 تبلیغ می شود. من یک مجموعه 10 تایی را انتخاب کردم ، اما هیچ مشکلی با آنها وجود ندارد. ماژول ها از 2.5 ولت تا 5 ولت کار می کنند ، اما اینطور نیست. چیزی که من دریافتم این بود که هر چیزی کمتر از 4.75 ولت باعث چسباندن ماژول در حالت "روشن" می شود. من می خواستم کل پروژه را با استفاده از یک جفت باتری AAA (حدود 3 ولت) اجرا کنم ، بنابراین مجبور شدم مشکل را پیدا کنم. پس از بررسی تراشه روی ماژول ، تشخیص دادم که جفت خالی پد لحیم کاری دارای خازنی است که حساسیت را تعیین می کند. محدوده توصیه شده از 0 تا 50 pf با افزایش حساسیت با کاهش ظرفیت است. من نتوانستم با کوتاه کردن پدها (0pf) کار کنم ، اما با خازن های 22pf و 47pf که دارم خوب کار می کند. با مقدار 22pf به راحتی ماژول را در 2.5 ولت کار کردم.

م componentلفه اصلی دیگر این پروژه (غیر از میکروکنترلر PIC) یک ماتریس LED 8x8 است. در ابتدا من از یک ماتریس ساده استفاده می کردم اما مجبور بودم یک جفت رجیستر شیفت برای آدرس دهی سطرها و ستون ها اضافه کنم و برای نمایش کامل آنها مجبور بودم آنها را چندگانه کنم. سپس یک ماژول LED ارزان قیمت را کشف کردم که با یک تراشه درایور صفحه نمایش MAX7219 LED به یک برد مدار متصل شده بود. تراشه درایور دستورات سریال را می پذیرد و سپس از آن برای روشن کردن سطرها و ستون های مورد نظر استفاده می کند. تراشه همچنین مالتی پلکس را به طور خودکار انجام می دهد تا بار از میکروکنترلر برداشته شود. این کشف هم پیچیدگی سخت افزار و هم نرم افزار را کاهش داد.

مرحله 2: جعبه پروژه

جعبه پروژه
جعبه پروژه
جعبه پروژه
جعبه پروژه

من یک فیلتر قرمز شفاف می خواستم که ماتریس LED را بپوشاند. من می توانستم قطعه ای از پلکسی گلاس قرمز خود را ببرم و سپس آن را در یک جعبه پروژه بچسبانم ، اما به جای آن ، کمی دوباره هدف گذاری کردم. جعبه ای که من در آن ساخته شده است یک ظرف است که روزی چندین گلوله.22 را در خود داشت. اکثر این ظروف پلاستیکی شفاف هستند اما من یک جفت قرمز دارم. خیلی شیک نیست اما نوه ها به ظرافت اهمیت نمی دهند.

مرحله 3: نرم افزار

نرم افزار
نرم افزار
نرم افزار
نرم افزار

نرم افزار بسیار ساده است. Timer0 مجاز به اجرای آزاد است و هر زمان که سنسور لمسی تشخیص داده شود مقدار آن بررسی می شود. من به طور خودسرانه تصمیم گرفتم که اگر تعداد تایمر 0 کمتر از 100 باشد صفحه نمایش زامبی ظاهر می شود. با توجه به اینکه تایمر 0 8 بیت است ، این بدان معناست که نمایش "انسانی" برای مقادیر 100-255 اتفاق می افتد. این نسبت حدود 3: 2 است و به راحتی در نرم افزار قابل تغییر است.

هنگامی که یک لمس تشخیص داده می شود و نوع صفحه نمایش مشخص می شود ، روال مناسب برای ارسال داده به ماتریس LED فراخوانی می شود. برای انجام این کار ، یک سری دستورات به عنوان آدرس 8 بیتی و داده 8 بیتی ارسال می شود. رجیسترهایی که ممکن است آدرس داده شوند در قسمت جلویی فهرست تعریف شده اند. چند مورد از آنها برای راه اندازی اولیه ماتریس (به عنوان مثال: روشنایی) و یکی برای روشن/خاموش کردن کل ماتریس استفاده می شود. ماتریس می تواند در حالتی کار کند که BCD (اعشاری با کد دودویی) عدد مناسب را نمایش دهد. روال Init آن را خاموش می کند تا بتوانیم LED های فردی را کنترل کنیم. بخش دیگر مقداردهی اولیه ، تعیین محدوده ستون است. ما هر هشت ستون را می خواهیم بنابراین محدوده اسکن روی 7 تنظیم شده است.

هشت ثبت وجود دارد که برای فعال کردن LED های مورد نظر استفاده می شود - یک ثبت برای هر ستون. یک "1" در یک بیت داده آن ستون LED را فعال می کند. همانطور که قبلاً ذکر شد ، هیچ نرم افزاری در نرم افزار مورد نیاز نیست. نمایش "انسانی" قلب تپنده ای است. پس از ارسال الگوهای مناسب بیت به ماتریس ، ضرب و شتم به سادگی با روشن/خاموش کردن ماتریس (با تأخیر در بین) تا زمانی که سنسور لمسی فعال است ، شبیه سازی می شود. روال زامبی تا زمانی که لمس برداشته نشود ، الگوی ثابت "X" را نمایش می دهد.

همین برای این پست سایر پروژه های الکترونیکی من را در www.boomerrules.wordpress.com ببینید

توصیه شده: