اطلاعیه

Collapse
No announcement yet.

درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

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

    درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

    ا سلام خدمت همه دوستان بزرگوار لطفا در باره موار زیر راهنمایی ونظری دارید بفرمایید.باتشکر


    1-نشان دادن حرارت توسط فشنگی یا سنسور آب خودرو که بصورت یک مقاومت معکوس بین منفی ومیکرو قرار دارد ودر 10درجه مقاومتش برابر1200اهم وبا افزایش دما در 100 درجه مقاومتش به10 اهم میرسد.
    2-نشان دادن فشار روغن که بصورت بالا بسته شده ودر حالت عدد=0مقاومتش 5اهم وبا افزایش فشار در حالت عدد=10مقاوت به300اهم میرسد.
    3-با تغییر ولتاژمنفی از 0تا5ولت باADCبتوان اعداد از10 تا3000رانشان داد.البته این حالت بصورت گرافیکی یعنی بصورت پر شدن کادری درحالت افقی از چپ براست باافزایش ولتازمنفی (مثلادر LCDگرافیکی64*128 باخطوط ظخیم باپیکسل 12*4 فواصل 6قسمت مساوی 5تایی از 0تا 30 نشون بده.

    البته بنده برای این پروژه که خیلی مفصل است از مگا64ویک LCD گرافیکی استفاده نموده ام و.... لطفا درمورد نرم افزاراین پروژه با بسکام کمک کنید.

    [glow=red,2,300]ازدوستان ممنون میشم چون کارم خیلی لنگه»»»»»»»[/glow] :cry: :cry: :angry:

    #2
    پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

    سلام
    شما قبلا هم یک بار همین موضوع پیش کشیدید
    http://www.eca.ir/forum2/index.php?topic=54467.0
    به هیچ نتیجه ای هم نرسیدید چون معلوم نبود که چی می خواید

    باز الان هم اصلا مشخص نیست که چی مد نظر شماست

    نوشته اصلی توسط faranegar
    1[size=12pt][color=navy]-نشان دادن حرارت توسط فشنگی یا سنسور آب خودرو که بصورت یک مقاومت معکوس بین منفی ومیکرو قرار دارد ودر 10درجه مقاومتش برابر1200اهم وبا افزایش دما در 100 درجه مقاومتش به10 اهم میرسد.
    خوب شما سوال پرسیدید که چجوری نشون بدید اما این( بین منفی و میکرو ) اصلا یعنی چی ؟ اگر مقاومتش تغییر می کنه خوب با یک بافر ولتاژ دوسر مقاومت به ADC میکرو بدبید بافر هم برایه اطمینان که به میکرو ولتاژ زیاد نرسه (بافر هم با یک Op Amp درست میشه و چیز خاصی نیست)

    سوال دوم هم مثل سوال اول

    نوشته اصلی توسط faranegar
    3-با تغییر ولتاژمنفی از 0تا5ولت باADCبتوان اعداد از10 تا3000رانشان داد.البته این حالت بصورت گرافیکی یعنی بصورت پر شدن کادری درحالت افقی از چپ براست باافزایش ولتازمنفی (مثلادر LCDگرافیکی64*128 باخطوط ظخیم باپیکسل 12*4 فواصل 6قسمت مساوی 5تایی از 0تا 30 نشون بده.
    الان مشکل این کار چی هست ؟ شما 10Bit دقت دارید و از 0 تا 5 ولت و دقیقا با این دقت می شه 1023 حالت داشت که در ازایه هر 4.88 میلی ولت یک بیت اضافه می شه و 10 تا 3000 هم نسبتی از همین 4.88 میلی ولت که در ازایه هر 4.88 میلی ولت شما 2 واحد به 10 اضافه می کنید که در 5 ولت شما به 3000 میرسید رویه GLCD هم نمایش میدید اعدادی هم که بدست میان به هر نسبتی که GLCD اجازه بده و شما مد نظرتون باشه نمایش میدید

    نوشته اصلی توسط faranegar
    البته بنده برای این پروژه که خیلی مفصل است از مگا64ویک LCD گرافیکی استفاده نموده ام و.... لطفا درمورد نرم افزاراین پروژه با بسکام کمک کنید.
    خوب اصلا شما مشکل نگفتید که کسی بخواد کمک کنه اگر مشکل برنامه دارید که باید برنامرو اینجا قرار بدید تا مشکل پیدا بشه

    ولی کلا خیلی بد مفهوم رسوندید خیلی کوتاه بگید مشکل چی هست خیلی زود تر به نتیجه می رسید

    موفق باشید




    دیدگاه


      #3
      پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

      دوست عزیز SKETCHER باتشکر از اظهار لطف وراهنمایی هاتون یه سری مشکلات رو حل کردم .میدونم صورت مسئله یه خورده گنگ بود میبخشین.راستی این GLCDها هم خیلی مشکل سازند چون درموقع پاک کردن ویا تغییر عکس اکثرا پیکسلها بالا پایین یا نامرتب میشه وبا یه GLCDدیگه همون برنامه درست کار میکنه.در ضمن من چون علاوه بر نشان دادن متغییرها روLCD از پورتهای میکرو برای بارگراف نیز استفاده کردم در برنامه نویسی بسکام بصورت SELECT CASEو CASEهای زیادی نوشتم برنامه هم سنگین شده .آیا میشه طور دیگه ای نوشت؟وعکس های مورد استفاده را با دستورات مطابق INDEX BASCOM درEEPROM ذخیره میکنم ولی اصلا عکسها نمیان .نمیدونم چطوری میشه سنسورهایی که تغییرات مقاومتش رو گفتم برای این پروژه برنامش رو بنویسم؟یاداوری کنم که اگه بارگراف رو یه جور دیگه طراحی میکردم از دست این همه دستورات CASE راحت میشدم. بازهم از کمکتون ممنون میشم.

      دیدگاه


        #4
        پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

        تضمین می کنم که GLCD هیچ مشکلی نداره و 100% قشنگ کارمی کنه پس برنامه شما یک جاییش مشکل داره یا سخت افزار شما درست وصل نشده که این ایراد پیش میاد
        من با Bascom کار نمی کنم ولی دیدم که در بعضی از ورژن ها وقتی برنامه سنگین میشه کامپایلر خراب کاری می کنه (به خاطر کرک شدن)

        بعد شما هیچ شماتیک یا برنامه ای نزاشتید که کسی بخواد نظر بده اگر کار شما خیلی محرمانست که هیچ کاری نمی تونید بکنید چون من تا کار نبینم نمی تونم نظر بدم ممکنه دیگر دوستان بتونن!

        باز برنامه نویسی هم یک کار ساده نیست منظور بی احترامی نیست منظورم این هست که شخص باید هنر اینکارو داشته باشه چون دونستن فرمانها و دیگر چیزها مهم نیست مهم این که بتونید برنامرو در کمترین حجم ممکنه بنویسید چون هر دستور اضافی می تونه خرابکاری کنه البته سخت افزار هم از این ماجرا پیروی می کنه
        مثلا از جمله شما مشخص که بار گراف به صورت موازی به میکرو متصل کردید ولی میشد بجاش از روش UART یا SPI استفاده کرد و خیلی کارهایه دیگه که باید یک شماتیک یا برنامه باشه که نظر داد
        موفق باشید

        دیدگاه


          #5
          پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

          باسلام وتشکر مهندس بنده برنامرو با بسکام نوشتم میزارم یه کنترلی بکنین شاید مشکل پیدا بشه یا یه روش کلی وساده تر برای این برنامه .....

          این هم برنامه:
          http://uploadfa.com/dq3q0sjgvdkh/GRAPHIC.bas

          دیدگاه


            #6
            پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

            برنامه خیلی شلوغ
            برایه این که برنامه درست کار کنه و کوتاه بشه بهتر اولش یک فلوچارت کوتاه بکشید تا بدونید چی کار می خوایید بکنید چون این جور که معلومه شما برنامرو قسمت به قسمت جلو بردید و دستوراتون خیلی زیاد شده !

            به طور مثال :
            برای چی قبل از :
            For x = ......

            شما به X مقدار دادید چون خود فرمان For مقدار دهی میکنه

            یا من یک قسمت کوچیک از برنامه شمارو ادیت کردم (البته نمیدونم تو Bascom شما مجاز به این کار هستید یا نه


            Case 710 To 720 :
            '----------------
            X = 0
            For X = 0 To 4
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X
            'Lcdat 4 , 1 , "0 " '0

            X = 4
            For X = 4 To 8
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 8
            For X = 8 To 12
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 12
            For X = 12 To 16
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 16
            For X = 16 To 20
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 20
            For X = 20 To 24
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X
            'Lcdat 4 , 1 , "0 5 " '5


            X = 24
            For X = 24 To 28
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 28
            For X = 28 To 32
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 32
            For X = 32 To 36
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next

            X = 36
            For X = 36 To 40
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 40
            For X = 40 To 44
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X
            'Lcdat 4 , 1 , "0 5 10 " '10


            X = 44
            For X = 44 To 48
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 48
            For X = 48 To 52
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 52
            For X = 52 To 56
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 56
            For X = 56 To 60
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X


            X = 60
            For X = 60 To 64
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X
            'Lcdat 4 , 1 , "0 5 10 15 " '15

            X = 64
            For X = 64 To 68
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 68
            For X = 68 To 72
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 72
            For X = 72 To 76
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 76
            For X = 76 To 80
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 80
            For X = 80 To 84
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X
            'Lcdat 4 , 1 , "0 5 10 15 20 " '25

            X = 84
            For X = 84 To 88
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 88
            For X = 88 To 92
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 92
            For X = 92 To 96
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 96
            For X = 96 To 100
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 100
            For X = 100 To 104
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X
            'Lcdat 4 , 1 , "0 5 10 15 20 25" '25

            X = 104
            For X = 104 To 108
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 108
            For X = 108 To 112
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 112
            For X = 112 To 116
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            X = 116
            For X = 116 To 120
            Line(x , 0) +(x , 8) , 1
            Waitus 50
            Next X

            '///////////////////////////////////////





            این برنامه شماست ولی این همون قسمت به روش که من ترجیح میدم انجام بدم

            Case 710 To 720 :
            For y= 0 to 116 Step 4
            For X = 0 To 4
            Line(x+y , 0) +(x+y , 8) , 1
            Waitus 50
            Next X
            Next Y



            شما کلی خط اضافی نوشتید و از همون X= هم استفاده کردید!
            من از 'Lcdat استفاده نکردم چون شما علامت ' گزاشتید که من فکر کردم خط در نظر گرفته نمی شه ( بازم میگم برنامه نویس Bascom نیستم )
            البته به نظر من حذف Waitus 50 هم سرعت اجرا رو بیشتر می کنه (البته به شرطی که Bascom بیت تمام شدن کار GLCD چک کنه اگر چک نکنه که این وقفه کمه و باید بیشترش کنید ) وکلی کار دیگه
            از نظر من برنامه شما خیلی قابلیت بهتر شدن داره و حداقل 2/3 برنامه اضافی نوشته شده
            شما در بیسیک خیلی قابلیت دارید و باید ازش استفاده کنید اگر ASM بود چاره ای نداشتید ولی بیسیک که دیگه محدودیت نداره


            دیدگاه


              #7
              پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

              سلام دوست عزیز دوباره ممنون از راهنماییتون. میدونم برنامرو خیلی شلوغ بود ومن هم ساده تر نوشتم وچون سخت افزار رو ساخته بودم نتونستم روش راه اندازی بار گرافهارو تغییر بدم وبرای بارگراف ازLM3914 ISPLAY DRIVE استفاده میکردم کار برنامه نویسم هم ساده تر میشد ونیاز به این همه CASEنبود، بگذریم حالا اگه زحمت نباشه شما برنامه ساده تر برای نشان دادن یک متغییر ADCکه بصورت نواری پهن مثلا 12 پیکسلی با حرکت خطی افقی روی GLCD برای اینکه دیگه این همه برنامه برای این قسمت ننویسم میتونید پیشنهاد بدید.در ضمن در ورودی کانالهایADC از تقویت کنندهOP AMP استفاده نکردم واکثر سنسورها مقاوتی بوده ودر 0درجه1200 اهم ودر100 درجه هم مقاومتش به10 درجه میرسه فرمول ومحاسباتش رو بزارین ممنون میشم .با تشکر FARANEGAR
              یک نونه عکس ازLCD وبرنامش:http://uploadfa.com/b1dmuz0uvknu/201109091115.jpg

              دیدگاه


                #8
                پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

                من نرسیدم برنامه شمارو نگاه کنم و این قسمتی هم که نوشتم دیدم خیلی راحت تر می شد درش اورد
                خود شما بهترین برنامه نویس برایه این کار هستید چون می دونید چی می خوایید و در چه شرایطی و رویه سخت افزار هم که می تونید تست کنید ولی من هیچی نمی دونم و تست هم نمی تونم بکنم
                به نظر من اگر خود شما بنویسید زودتر به نتیجه میرسید و یک تجربه خوبی هم پیدا می کنید چون می دونید چی نوشتید ولی من باید کل برنا مرو بخوانم وبعد درستش کنم تازه اگر بتونم تو Bascom درش بیارم!
                فقط یک بار رو سیستمم Bascom نصب کردم اونم 2 سال پیش بود و پروژه درس میکروکنترلر بود که یک شمارنده حلقوی و جانسون باید می بردیم و بعد دیگه پاکش کردم پس از این طرف بدونید که عملا هیچی ازش نمی دونم و باید دوباره کار کنم تا راه بیفتم
                Case هایه اضافی رم باید به یک فرمول تبدیل کنید که بعد گراف نسبت به اون فرمول سازمان بدید 100% می شه ولی یک کم وقت گیر

                به طور مثال
                مقدار تغییرات 500 واحد بعد شما می تونید 100 حالت نمایش بدید پس 5 / 500 و باقی ماندرو هم به صورت صحیح در میارید که اعشارش حذف بشه بعد در یک حلقه می گید به تعداد باقی مانده خط عمودی بکشه در نهایت با چند خط برنامه می تونید همه Case ها رو حذف کنید البته اگر سنسور خطی باشه این کار عملی اگر نباشه که یکم سخت تر میشه چون بالخره به یکی از صورت هایه خطی و نمایی و لگاریتمی و.... میشه درش اورد

                برایه مقاومت ها هم گفتم در پست هایه قبل باید مقدار افت ولتاژ دوسر مقاومت بگیرید و حساب کنید مثل مقاومت شنت که برایه انداژه گیری جریان کاربرد داره
                در این جا هم شما یک ولتاژ اصلی دارید و افت ولتاژ رو هم دارید بنابر این میشه مقدار مقاومت حساب کرد
                این راحت ترین روش و مهم هم نیست که دیگه سنسور ها به کجا وصل شدن چون شما افت ولتاژ رو می گیرید
                موفق باشید

                دیدگاه


                  #9
                  پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

                  سلام وتشکر .میدونم شاید زیاد با بسکام کارنکردید ولی بخاطر لایبرریهاش وکار باglcd خیلی کامل تر وبهتره وبرای مورد گرافیکی روی lcdآیا متونید با توجه به عکس یه برنامه ساده راهنمایی بفرمایید.ممنون میشم

                  دیدگاه


                    #10
                    پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)


                    نوشته اصلی توسط faranegar
                    میدونم شاید زیاد با بسکام کارنکردید ولی بخاطر لایبرریهاش وکار باglcd خیلی کامل تر وبهتره و....
                    به خدا من نگفتم Bascom ناقص
                    من اصلا با AVR کار نمی کنم دلیلی هم ندارم که چرا کار نمی کنم شخصا خوشم نمیاد ازش
                    برایه همین گفتم شما بهترید و تا دوباره راه بیفتم سخته

                    بعد اگر بخوایید می نویسم ولی سخت چون باید کل برنامرو بخونم بعد شبیه سازی کنم بعد ادیت کنم یعنی طول می کشه و کار یکی ، 2 روز نیست چون باید به کار هایه خودمم برسم و فکر کنم خود شما زود تر راش بندازید

                    دیدگاه


                      #11
                      پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

                      بازهم از اظهار نظر وکمکتون متشکرم خیلی راهنمایی کردین.مرسی

                      دیدگاه


                        #12
                        پاسخ : درخواست کمک فوری برای ADCوLCD گرافیکی(داشپورت اتومبیل)

                        [glow=red,2,300]لطفا از دوستای عزیز واساتید گرامی کسی بتونه نظر بده[/glow].[glow=red,2,300][/glow] :nice:

                        دیدگاه

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