Logo 150Logo 150Logo 150Logo 150
  • صفحه اصلی
  • میکروکنترلرها
    • میکروکنترلرهای AVR
      • آموزش AVR در CodeVision
      • آموزش Atmel Studio
      • AVR بیسیک
    • میکروکنترلرهای PIC
    • میکروکنترلرهای ARM
      • خانواده STM32
    • میکروکنترلر 8051
    • برنامه نویسی گرافیکی
      • LabView
  • مقالات
    • قطعات و نکات فنی
    • خواندنی ها
    • کتاب-جزوه-مجله
  • نرم افزار
    • کتابخانه آلتیوم
      • Microchip
  • پروژه های آماده
  • خرید پروژه
  • حل تمرینات
  • تماس با ما
  • کانال ها
    • کانال تلگرام
    • اینستاگرام
    • آپارات
    • یوتیوب

شمارنده 4 رقمی با سون سگمنت و قابلیت کنترل زبان C و AVR

  • صفحه نخست
  • مطالب سایت میکروکنترلرها میکروکنترلرهای AVR آموزش AVR در CodeVision
  • شمارنده 4 رقمی با سون سگمنت و قابلیت کنترل زبان C و AVR
شمارنده دو رقمی با سون سگمنت زبان C و AVR
شمارنده دو رقمی با سون سگمنت زبان C و AVR
13 مرداد, 1389
شمارنده 4 رقمی با LCD زبان C و AVR
شمارنده 4 رقمی با LCD زبان C و AVR
13 مرداد, 1389
منتشر شده توسط مدیر در 13 مرداد, 1389
موضوعات
  • آموزش AVR در CodeVision
برچسب ها
  • 4 رقمی
  • avr
  • C
  • micro
  • program
  • seven segment
  • آموزش c
  • آموزش سی
  • بالا شمار
  • پایین شمار
  • زبان C
  • سون سگمنت
  • شمارش
  • شمارش اعداد
  • شمارنده چهار رقمی
شمارنده 4 رقمی با سون سگمنت و قابلیت کنترل زبان C و AVR

بازدیدها: 3241

این شمارنده چهار رقمی به زبان سی برای میکرو کنترولر AVR نوشته شده و بعد از اجرا کردن آن میکرو از صفر تا 9999 شروع به شمارش می کند و بعد اینکه به 9999 رسید مجددا این عملیات تکرار می شود. این مدار قابلیت بالا شمار کردن و پایین شمار کردن و همچنین تنطیم سرعت شمارش را دارد.

عملکرد مدار:

با روشن شدن مدار میکرو به صورت پیش فرض به صورت بالا شمار کار می کند. و با استفاده از کلید های UP و DOWN می توان در همان لحظه نحوی شمارش را عوض کرد و برای اینکه تاخیر بین هر شمارش را کم و زیاد کنیم ابتدا کلید Delay را پایین نگه می داریم و بعد با کلیدهای up و DOWN تاخیر را کم و زیاد می کنیم.

نکات برنامه:

اول از همه به این نکته توجه بفرمائید که کل عدد شمارنده در یک متغییر به نام C می باشد.

unsigned char control[]={0x0e,0x0d,0x0b,0x07};

از آرایه control برای کنترل کردن چهار تا سون سگمنت استفاده شده که پایه های 1,2,3,4 را کنترل می کند.(توضیح پایه ها در شمارنده دو رقمی )

تابع display: این تابع مسولیت جدا کردن اعداد از متغیر C می باشد و بعد از جدا سازی روی سون سگمنت نمایش داده می شود.

مثلا اگر محتوای c=1248 باشد این تابع اعداد را به این صورت جدا می کند و درون متغیرهای محلی خود کپی می کند. c1=1,c2=2,c3=4,c4=8 و در نهایت محتوای این متغیر های در آرایه data قرار می گیرد:

data[0]=1,data[1]=2,data[2]=4,data[3]=8 و بعد توسط یک حلقه for روی سون سگمنت نمایش داده می شود. 

 تابع key_up : این تابع وضعیت کلید UP را چک می کند که دو حالت دارد: 1- آیا کلید برای بالا شمار کردن فشرده شده یا برای افزایش تاخیر که اگر برای تاخیر بود از اجرا کردن زیر برنامه بالا شمار صرف نظر می کند و Return می شود و زیر تابع delay اجرا می شود و عمل افزایش و یا کاهش تاخیر اجرا می شود.

تابع key_down : این تابع نیز مانند تابع بالایی کار میکند.

و در نهایت در تابع main و یک حلقه بی نهایت هستیم که هر 4 تابع در اینجا فراخوانی می شود و مدام وضعیت کلید ها چک می شود. من در این برنامه از یک متغییر بیتی به نام s استفاده کردم که با 0 و 1 بود این متغییر میکرو متوجه می شود که بالا شمار کار کند یا پایین شمار.

 کردیم تا 10 بار سون سگمنت را تازه کنیم.

امیدوارم که این مقاله مورد رضایت شما واقع شده باشد.

این مقاله توسط سایت برنامه نویسی میکروکنترولرها ارائه شده کپی برداری تنها با ذکر منبع مجاز می باشد.

توضیحاتی در مورد سون سگمنت ها در دو قسمت داده شده و شما می توانید به این دو مثال مراجعه کنید:

Icon

دانلود شمارنده 4 رقمی با سون سگمنت و قابلیت کنترل

1 file(s) 32.46 KB
Download
Share
45
مدیر
مدیر

مطالب مرتبط

22 مرداد, 1395

آموزش گام به گام برنامه نویسی AVR به زبان C


اطلاعات بیشتر
پروژه آموزشی تابلون روان 8.8 به زبان سی همراه با سورس C
29 تیر, 1391

پروژه آموزشی تابلون روان 8.8 به زبان سی همراه با سورس C


اطلاعات بیشتر
کار با LED ماتریسی 8.8 (LED Displays 8.8 LED Matrix)
14 تیر, 1391

کار با LED ماتریسی 8.8 (LED Displays 8.8 LED Matrix)


اطلاعات بیشتر

7 Comments

  1. محمد گفت:
    2 آذر, 1399 در 15:44

    سلام ، آقا این تایمر که مث برق میشماره میره جلو 😭 اگه بخوام هر ثانیه یکی بره جلو باید چیکار کنم؟

    پاسخ
    • مدیر گفت:
      11 آذر, 1399 در 19:13

      بستگی به کلاک میکرو دارد

      پاسخ
  2. mahdi گفت:
    27 فروردین, 1400 در 15:11

    سلام رمز فایل زیپ چی هست؟

    پاسخ
    • مدیر گفت:
      28 فروردین, 1400 در 13:16

      www.picpars.com

      پاسخ
  3. الهه گفت:
    12 اردیبهشت, 1400 در 16:34

    سلام میشه لطفا آی دی تلگرامتونو داشته باشم؟

    پاسخ
    • مدیر گفت:
      3 خرداد, 1400 در 12:56

      @picpars

      پاسخ
  4. سینا گفت:
    3 آبان, 1400 در 08:51

    سلام
    میشه فایل شمارنده ۴رقمی با سون سگمنت رو با پروتعوس و کد ویژن بهم بدی
    اگه نه بگو به جای پروتوس از چی استفاده کردی چون پسوند dsn و pwi هست در حالیکه پروتووس pdsprj هستش

    پاسخ

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمامی حقوق مادی و معنوی برای PicPars.com محفوظ است. شماره همراه 09335751032 جهت ارتباط با خرید پروژها در تلگرام و واتساپ