اطلاعیه

Collapse
No announcement yet.

کار کردن با Avt

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

    #16
    پاسخ : کار کردن با Avt

    متاسفانه همونطور که گفتم تمام برنامه هایی که این مدت نوشته بودم پاک شده، خودم هم نمیدونم چی سرشون اومده فکر میکنم باشند ولی جابجا شدن. برای همین باید از اول برنامه بنویسم برات، از اونجا هم که این روزا وقتم خیلی کم شده نمیتونم زود این کار رو بکنم یکم وقت لازم هست ولی در اولین فرصت برنامه ساده ای میزارم، فقط اگر دیر شد فکر نکن یادم رفته به خاطر کمبود وقت هست. تا شما پروگرامر و .. جور کنی ایشالا من هم فایل رو آماده کردم، اگر هم از دوستان کسی آماده داشت و گزاشت که چه بهتر.
    از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
    هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
    اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
    اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
    شاد و موفق باشید

    دیدگاه


      #17
      پاسخ : کار کردن با Avt

      تصمیم گرفتم خودم پروگرامر رو درست بکنم همه چی رو هم خریدم ولی پروگرامر sk200 کفایت میکنه

      دیدگاه


        #18
        پاسخ : کار کردن با Avt

        پروگرامر sk200 کفایت میکنه
        چرا که نه.
        stk200/300 پروگرامر خوبیه .
        چگونه هوشمندانه بپرسیم

        دیدگاه


          #19
          پاسخ : کار کردن با Avt

          رفتم تمام قطعات پروگرامر رو بگیرم همه چی رو پیدا کردم غیر از کابل . همه جا رو گشتم آخرش رفتم تو یک مغازه البته مغازه ای نبود که نگشتم از خواربار فروشی گرفته تا ...... پیدا نکردم اخرش تو اخرین مغازه دیدم یک پروگرامر که قیمت اون 22000 هست USB هم هست رو خریدم با تمام امکاناتش .
          حالا پروگرام این فرق میکنه یا نه .
          لطفا یک مدار ساده به من بدهید اگر میشه سریع یکم زوق دارم . فرقی هم نمیکنه با سی بنویسم یا اسمبلی و بگید چکار کنم خودم دستورات رو میخوام پیدا بکنم ممنون .

          دیدگاه


            #20
            پاسخ : کار کردن با Avt

            در حال حاضر کدوم آی سی AVR رو داری که میخوای برنامه رو روی اون بریزی؟
            از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
            هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
            اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
            اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
            شاد و موفق باشید

            دیدگاه


              #21
              پاسخ : کار کردن با Avt

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

              اون پروگرامر usb ای هم که لینکش رو دادم میتونست اکثر avr ها رو پروگرام کنه.
              هزینه ساختش هم دو سه تومن بیشتر نبود.

              خوب حالا که خریدی که دیگه هیچی.
              حالا اینی که خریدی اصلا برای avr هست ؟

              -------
              خوب واسه شروع هم میتونی یه چشمک زن تک LED درست کنی که مثلا هر یک ثانیه LED روشن و خاموش بشه !

              چون من با avr-gcc کار میکنم و واسه شروع کار هم ممکنه یه مقدار مشکل باشه ترجیح میدم درباره نحوه برنامه نویسی دوستان توضیح بفرمایند.

              راستی شما الان پورت میدونید چیه ؟
              چگونه هوشمندانه بپرسیم

              دیدگاه


                #22
                پاسخ : کار کردن با Avt

                سلام این رو نوشتم فقط برای اینکه امتحان کنی. برنامه LED چشمک زن هست. فایل Proteus هم گزاشتم، فایل Hex هم داخلش هست، خود برنامه اسمبلی هم هست که فرمتش ASM هست. در مورد هر قسمت از برنامه که وظیفش چی هست مختصر نوشتم ولی اینکه دقیقا چی میکنند رو ننوشتم دیگه. فایل HEX که توی این ZIP هستدقیقا همون فایلی هست که بعد از اسمبل شدن برنامه ار AVR Studio تولید شده، اگر موقعی که میخواستی برنامه رو توی آی سی بریزی پیغام Verifying Error رو داد فایل Hex رو با NotePad باز کن و خط اول رو پاک کن، یکبار Delete بزن تا همه خطها یکی باین بالا بعد دوباره Save کن و دوباره بریزش توی آیسی. اگر هم error نداد که چه بهتر. عمدا خودم این خط رو پاک نکردم که اگر نشد خودت مراحل رو ببینی و متوجه بشی.
                در ضمن این برای ATMEGA8 هست، توی Proteus هم با همین شبیه سازی شده اگر آی سی دیگه ای داری بگو تا تغیرش بدم برای اون دوباره Upload کنم.
                http://navidt.persiangig.ir/Electronic/Blink%20LED.zip
                از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
                هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
                اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
                اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
                شاد و موفق باشید

                دیدگاه


                  #23
                  پاسخ : کار کردن با Avt

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

                  کتاب آموزشی Online برای آشنایی با قطعات الکترونیک
                  http://www.mikroe.com/en/books/keu/00.htm
                  چگونه هوشمندانه بپرسیم

                  دیدگاه


                    #24
                    پاسخ : کار کردن با Avt

                    شما اول برو دوتا برید بورد بخر بچسبونشون بهم ، بعدش یکم با اهمتر یکم اتصالاتش رو چک کن تا قلقش دستت بیاد ، بعدش 2 3 متر کابل شبکه cat5 بخر ، روکشش رو باز کن سیمهای توشو در بیار ، تیکه تیکه شون کن ، برای اتصلات در برید بورد باید از سیم مفتول استفاده کنی ، متری 180 تا 250 تومنه ، تو هر کابل هم 8 رشته سیم هست . حالا نیاز به یه اداپتور 5 ولت داری ، اگه میخواهی اونو هم از بیرون تهیه کن ، حواست باشه رگلاتور دار باشه . یه 10 20 تا مقاومت 560 اهم یا 1 کیلو هم بخر که در اینده نیازت میشه .
                    فتو بلاگ من
                    کاردستی ها :
                    روبات شطرنج باز ( یادگار دوران جوانی )
                    فارسی نویسی مستقیم در نمایشگر های گرافیکی
                    کتابچه خود آموز زبان توصیف سخت افزار Verilog

                    دیدگاه


                      #25
                      پاسخ : کار کردن با Avt

                      ممنون از همه که کمک می کنن .
                      من فعلا می خوام با AT90s1200 کار کنم .
                      چرا هر وقت هر پروژه ای رو با Proteus باز می کنم و دگمه Play رو می زنم همش سه تا Error می ده خطا ها :
                      Mixed Model Avr.DLL faild to authorize missing or invalid custome key
                      real time semulation faild
                      باید فایل HEX هم درونش Load کنم چطور ممنون.

                      دیدگاه


                        #26
                        پاسخ : کار کردن با Avt

                        باید حتما فایل HEX رو توی Proteus درون آی سی قرار بدی تا مدار کار کنه برای اینکار هم روی آی سی کلیک راست کن تا قرمز بشه ( به حالت Select در بیاد ) بعد دوباری روش کلیک چپ کن تا پنجره Edit Component ظاهر بشه، بعد در قسمت Program File روی عکس پوشه کلیک کن تا پنجره Select File Name باز بشه بعد فایل HEX رو انتخاب کن و OK کن.
                        حالا آی سی میدونه که باید چه برنامه ای رو اجرا کنه.
                        از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
                        هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
                        اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
                        اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
                        شاد و موفق باشید

                        دیدگاه


                          #27
                          پاسخ : کار کردن با Avt

                          Pin با Port چه فرقی می کند مثلا ...
                          sbis PortD,0
                          یا
                          Sbis PinD,0

                          دیدگاه


                            #28
                            پاسخ : کار کردن با Avt

                            نوشته اصلی توسط zoser
                            Pin با Port چه فرقی می کند مثلا ...
                            sbis PortD,0
                            یا
                            Sbis PinD,0
                            با عرض معذرت حالا توی کافی نت هستم مختصر توضیح میدم.
                            هر کدوم از این پورتهای میکرو 3 تا رجیستر برای خودش داره DDRX یکی از اونها هست که با مقدار دهی اون شما مشخص میکنی که میخوای از اون پورت به عنوان ورودی استفاده کنی یا خروجی، حالا شما اگر DDRX رو یک کنی پورت رو خروجی تعریف کردی و وقتی میخوای داده رو روی پورت بریزی باید اون رو روی PORTX بریزی اما وقتی میخوای داده رو بخوانی باید از رجیستر مربوط به PINX بخونی. برای اینکه مفصل با این سه تا رجیستر آشنا بشی به قسمت پورتهای I/O در دیتا شیت یا کتاب نگاه کن، توی دستور اولی شما میخواستی داده رو از روی پورت D پایه 0ام بخوانی ولی در دستور دوم شما اون رو از روی رجیستر پین بخونی اگر بخوام کامل توضیح بدم شاید بی فایده باشه چون نسبت به ساختمان هنوز خیلی آشنایی نداری فقط شما فعلا در این حد بدون که اگر خواستی از روی پورت اطلاعات رو بخوانی از PIN استفاده کن مثلا دومی، اما اگر خواستی بنویسی از Port استفاده کن، که البته قبل از این باید تسط DDRX تعریف کرده باشی که پورت ورودی هست یا خروجی، توی برنامه ای که خودم نوشتم نگاه بنداز اول برنامه DDR مربوط به پورت رو کامل 1 کردم بعد داده رو روی Port ریختم.
                            از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
                            هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
                            اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
                            اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
                            شاد و موفق باشید

                            دیدگاه


                              #29
                              پاسخ : کار کردن با Avt

                              اولین برنامه رو نوشتم روی برد برد هم امتحانش کردم فعلا مشکل ندارم اما بعضی چیز ها رو نمی فهم نه برنامه نوسی ها رو یک چیز های مثل این موضوع اخه من میگم هر چی روی Port هست که می نویسم از اون هم می خونم اشکالی نداره .
                              یا اینکه کریستال نوسان ساز چیه . همه جا ازشون نام برده ولی توضیح ندادن که اینا چی هستن فکر می کنم این ها همه مربوط به الکترونیک باشه اگر میشه یه توضیح کلی راجع به اینها بدید یا اینکه دوست دارم بدونم چه موقع خازن یا مقاومت با چه نوع آمپری رو در مدار اضاف کنم .

                              دیدگاه


                                #30
                                پاسخ : کار کردن با Avt

                                نمیدونم چرا Persiangig برام باز نمیشه که عکس Upload کنم.شما برو به سایت AVRbeginners.net بعد قسمت AVR Architecture بعد قسمت I/O Ports وروی General Description کلیک کن، حالا یک عکس میبینی روی همون توضیح میدم.
                                این خلاصه شده ساختمان داخلی یکی از پین های AVR هست، اگر دقت کنی Read Pin دقیقا وصل هست به پایه میکرو و هیچی بینش قرار نداره،یعنی هر موقع که بخونیش دقیقا وضعیت اون پین رو در همون لحظه خوندی، اما Read Port رو ببین به کجا وصل هست، پشت بافر هست یعنی اینکه مستقیم وصل نیست به پایه میکرو حالا شما وقتی که مثلا مینویسی IN R16,PORTB همه 8 بیت پورت B رو داری از پشت بافر میخونی و میریزی توی R16 اما وقتی بنویسی IN R16,PINB داری دقیقا 8 تا بیتی که روی پایه های پورتB هست رو میخونی و توی R16 میریزی، برای همین هست که میگن وقتی میخوای ورودی رو از روی پایه بخونی از رجیستر مربوط به PIN استفاده کن تا ورودی همون لحظه و صحیح رو بخونی. گاهی هم لازم هست از روی پورت بخوانی ولی موقعی که میخوای از بیرون مقدار رو به عنوان ورودی بگیری باید حتما IN PINX,RXX رو بنویسی.
                                کریستال وسیله ای هست که عمل نوسانسازی رو برای شما انجام میده و مرتب پالس برای شما ایجاد میکنه، میکرو برای اینکه هر خط برنامه رو اجرا کنه باید یک پالس بگیره و در نتیجه برای اینکه مرتب کار کنه باید با یک سرعت مشخص همینطور پشت سر هم پالس بگیره که کرسیتال عمل نوسانسازی رو انجام میده و این پالس ها رو تولید میکنه دلیل اینکه شما حالا کریستال به میکرو وصل نکردی و داره کار میکنه این هست که میکرو یک نوسانساز مقاومتی خازنی RC داخلی داره که در حالت پیشفرض با فرکانس 1 مگا هرتز فعال هست و تا تغیرش ندی از همون استفاده میکنه، در حال حاضر شما هم داری از یک نوسانساز داخلی 1 مگا هرتز استفاده میکنی که اگر بخوای میتونی از فرکانس های 2،4 و 8 مگا داخلی و همچنین از نوسانساز های خارجی مثل کریستال ها و .. با مقدارهای مختلف استفاده کنی، این نوسانساز رو که تغیر بدی سرعت اجرای برنامه تغییر میکنه مثلا حالا که شما داری از 1 مگا استفاده میکنی هر سایکل از برنامه در 1 میکرو ثانیه اجرا میشه یعنی وقتی مینویسی LDI R16,10 عدد 10 رو در عرض 1 میکرو ثانیه میریزه توی رجیستر R16 و میره که دستور بعدی رو اجرا کنه، حالا اگر توی Instruction set نگاه کنی میبینی که بعضی از دستورات توی تعداد سایکل های بیشتری کامل اجرا میشند مثلا 2 یا 3 یا .. سایکل که در اینصورت به همین مقدار زمان احتیاج دارند مثلا 2 سایکل میشه 2 تا 1 میکرو ثانیه پس اون دستور که 2 سایکل لازم داره 2 میکرو ثانیه طول میکشه تا اجرا بشه، حالا اگر شما از نوسانساز مثلا 4 مگاهرتز استفاده کنی سرعت اجرای هر سایکل 4 برابر قبل کم میشه یعنی اجرای هر سایکل میشه 25 صدم میکرو ثانیه که این زمان رو میتونی از رابطه T=1/F به دست بیاری، اینجا F فرکانس نوسانساز هست و T زمان اجرای هز سایکل از اونجا که عکس هم هستند هرچی فرکانس رو زیاد کنی زمان اجرا کمتر میشه و عملا میگن سرعت انجام عملیات بیشتر هست این که میگید CPU کامپیوترم 2 گیگ هست یعنی با فرکانس دو گیگا هرتز برای همین هست که کامپیوتر 2 گیگ از 1 گیگ سریعتر هست چون زمانی که هر دستور در CPU اجرا میشه 2 برابر کمتر هست و در نتیجه سرعت 2 برابر بیشتر میشه.
                                در مورد خازن و مقاومت و .. میتونی کتاب های پایه برق و الکتونیک رو بخوانی که کلیه مطالب جا بیوفته برات.
                                باز هم سوالی بود در خدمتیم
                                از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
                                هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
                                اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
                                اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
                                شاد و موفق باشید

                                دیدگاه

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