اطلاعیه

Collapse
No announcement yet.

روشن کردن 3 سون سگمنت جدا

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    روشن کردن 3 سون سگمنت جدا

    سلام
    من میخام ورودی که از یک منبع ولتاژ میباشه به میکرو بدم
    بعد عدد را ضربد 75 کنم ارقام را جدا کنم یکان دهگان و صدگان
    هر کدام را روی یک سون سگمنت نشون بدم
    $regfile = "m32def.dat"
    $crystal = 8000000
    Config Adc = Single , Prescaler = Auto , Reference = Avcc
    Start Adc


    Config Pina.0 = Input
    Config Portb = Output
    Config Portc = Output
    Config Portd = Output
    Dim X As Integer
    Dim Y As Integer
    X = Getadc(pina0)
    حالا میخام عملیات ریاضی را روش انجام بدم و رو سون سگمنت نشومن بدم چکار باید بکنم

    #2
    پاسخ : روشن کردن 3 سون سگمنت جدا

    من یه توضیح کلی درباره این طرحتون میدم
    شما برای سون سگمن ها حتما از ای سی های درایو استفاده کنید تا کارتون ساده تر بشه و همین طور مشکل جریان کشی ای سی رفع بشه
    برای کار شما من ای سی های 7447 و یا 7448 رو پیشنهاد میکنم که ورودی باینری و خروجی نمایشگر هفت قسمتی به اون وصل میشه
    روش درگه برای درایو کردن استفاده از ترانزیستور و روش دیگه هم ای سی uln2003 هست
    -----------------
    در برنامه شما باید مقدار های یکان دهگان و صدگان رو با تقسیم از هم جدا کنید
    بعد از اون متناسب با ای سی درایورتون مقدار رو برای خروجی آماده کنید مثلا با ای سی های 7447 یا 7448:
    مقدار بدست آمده باید به کد bcd یا همان مقدار باینری تبدیل شود و پس از آن این مقدار رو به یک پورت میدین porty=x
    مدت هاست نیستم

    دیدگاه


      #3
      پاسخ : روشن کردن 3 سون سگمنت جدا

      نوشته اصلی توسط abbasalifix
      من یه توضیح کلی درباره این طرحتون میدم
      شما برای سون سگمن ها حتما از ای سی های درایو استفاده کنید تا کارتون ساده تر بشه و همین طور مشکل جریان کشی ای سی رفع بشه
      برای کار شما من ای سی های 7447 و یا 7448 رو پیشنهاد میکنم که ورودی باینری و خروجی نمایشگر هفت قسمتی به اون وصل میشه
      روش درگه برای درایو کردن استفاده از ترانزیستور و روش دیگه هم ای سی uln2003 هست
      lممنون
      در مورد ای سس درایور یه مدار با دیاک و ترایاک طراحی کردم چون سون سگمنت ها از نوع بزرگ میباشند مشکلی پیش نیاید
      -----------------
      در برنامه شما باید مقدار های یکان دهگان و صدگان رو با تقسیم از هم جدا کنید
      بعد از اون متناسب با ای سی درایورتون مقدار رو برای خروجی آماده کنید مثلا با ای سی های 7447 یا 7448:
      مقدار بدست آمده باید به کد bcd یا همان مقدار باینری تبدیل شود و پس از آن این مقدار رو به یک پورت میدین porty=x
      [/quote]
      مشکلی با تقسیم کردن و جدا کردن یکان و دهگان و صدگان ندارم
      مشکلم اینجاست که با ADcما وردی را باینری کردیم حالا که میخواهیم ضربدر 75 کنیم نباید 75 را هم باینری کنیم
      فرض با عملیات ریاضی qیکان zدهگان , tصدگان شد
      با چه دستوری ببرم رو پورت خروجی

      دیدگاه


        #4
        پاسخ : روشن کردن 3 سون سگمنت جدا

        شما میتونید با همه فرمان های معمولی اعمال ریاضیاتی رو انجام بدین مثلا :

        b=b*75
        c=d+2
        b=b+1
        یا حالا هرچیزی
        بعد یه عدد بدست میاد که این مقدار هارو باید به بکان دهگان و صدگان و.... تبدیل کنید
        مرحله بعد تبدیل مقدار های یکان دهگان و.... به مقدار هایی هست که ما لازم داریم
        اگر خواستین با ای سی بافر جریان یا ترانزیستور کار کنید باید همه 7 یا 8 پورت رو اشغال کنیم و برنامه به این صورت خواهد بود که ما مقدار باینری اون عدد رو لازم داریم پس برای تبدیل به باینری یه فرمان خیلی کوچیک داره که الان یادم نیست
        بعد عدد باینری رو باید روی پورت بریزیم تا روشن بشه مثلا

        portb=a
        یا
        portb=&b1011101

        توی روش دیگه که با ای سی های 7447 , 4748 هست مثل همینه فقط مقدار باید به bcd تبدیل بشه و این هم یه کد هست که تبدیل میکنه و مقدار رو روی پورت میریزیم

        b=10
        b=dec(b)
        portb=b

        مدت هاست نیستم

        دیدگاه

        لطفا صبر کنید...
        X