ساعت دیجیتالی دقیق با میکرو
با سلام
دوستان عزیز این برنامه مربوط به یک ساعت دیجیتال میباشد که زمان برای ما در lcd نمایش داده میشود و ما میتوانیم توسط سه کلید <>یکی برای ساعت <>یکی برای دقیقه <>یکی برای ثانیه > زمان را تنظیم کنیم این ساعت بسیار دقیق است.( 24 ساعته)
برنامه رو ببینید تا توضیح بدم>
---------------------------------------

توضیح برنامه
------------------------------------
در خط اول که آیسی معرفی کردم در خط دوم کریستال کاری میکرو تنظیم کردم در خط های 3و4و5 سه ورودی برای اتصال کلید های تنظیم زمان پیکره بندی کردم در خط 6و7و8 اسم پورت های ورودی عوض کردم (اختیاری)در خط بعد یک متغیر از نوع بایت بنام V نوشتم که این متغیر برای استفاده در حلقه for , next استفاده شده.
خوب خط 10>
خط بعد پیکره بندی ساعت (که این ساعت در برنامه بسکام بصورت پیشفرض هست <>>یعنی چی>> یک برنامه ساعت بصورت آماده وجود دارد که ما میتوانیم از آن استفاده کنیم و این زمان را تنظیم کنیم .
حالا به میکرو میگیم ساعت خودتو روی ساعت 8 شب تنظیم کن (هر زمانی که دوست داشتید میتوانید وارد کنید)(با نوشتن دستور خط 12)
حالا اگه به میکرو بگیم زمان رو برای ما در lcd نمایش بده میکرو شروع به کار میکنه و هر یک ثانیه به زمان (20:00:00)اضافه میکنه و بصورت کاملا دقیق کار میکنه (میکرو این زمان یک ثانیه رو از کریستال داخلی خودش درست میکند یعنی فرق نمیکند ما فرکانس کاری میکرو چند قرار بدیم) برای اینکه بتونیم این زمان رو تغییر بدیم باید ادامه برنامه رو بنویسیم در خط بعدش نوشتیم cls یعنی lcd رو پاک کن در خط بعد آدرس وبلاگم:)
در خط بعد وقفه 400 میلی ثانیه (پیام بازرگانی اول برنامه:)) زیاد مهم نیست>> بعدش دوباره دستور پاک کردن lcd و بعد دستور (cursor off ) برای حذف خط زیر حروف در lcd >><این _>>
و اما این سه خط
>> دستور (declare sub ) معرفی گروه >که من در اینجا سه گروه A,B,C رو معرفی کردم .
وظیفه گروه A: نمایش ساعت بروی lcd
وظیفه گروه B: تنظیم زمان
وظیفه گروه C:سرعت افزایش زمان (در تنظیم ساعت)<>>یعنی وقتی دست ما بروی کلید هست با چه سرعتی افزایش پیدا کنه که با تغییر عدد 5 در گروه c میتوانید این سرعت را تغییر دهید.
در حلقه do loop این گروه ها را بصورت دایم توسط دستور call فراخوانی میکنیم و گروه ها هر یک وظیفه خود را انجام میدهد .
دستور sub یعنی شروع گروه و دستور end sub یعنی پایان گروه یعنی هر دستوری در این گروه باشد انجام میدهد.
دستورات if ,then دستورات شرط هست و دستور end if یعنی پایان شرط دستور incr یعنی افزودن بر متغییر
دستور hour_ برای ساعت و دستور min_ برای دقیقه و دستور sec_ برای ثانیه میباشد که ما توسط سه ورودی (کلید ها) بر این متغییر ها اضافه میکنیم (یعنی اگر ما بر min_ یک مقدار اضافه کنیم دقیقه ساعت تغییر میکند)
اینم نقشه مدار
-----------------------------

سوالی داشتین در قسمت نظرات بیان کنید.
دانلود فایل پروتیوس و بسکام برنامه
<<موفق باشید>>
