اطلاعیه

Collapse
No announcement yet.

چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

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

    چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

    با سلام

    یک سوال خیای خییلی خیییلی ساده.
    می خواستم مگا 32 را با روش کد نویسی (کدویژن) رستارت کنم!

    منتظر پیشنهادهاتون هستم.

    ممنون
    دوست عزیز اگه مفید بود روی تشکر بزن

    #2
    پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

    استفاده از watchdog.
    می تونید با نرم افزار هم به آدرس 0 برنامه برید که با این کار فکر نکنم میکرو ریست بشه، یعنی متغیرها مقدار اولیه رو دوباره به دست بیارند.
    ---------
    .
    .
    ...........

    دیدگاه


      #3
      پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

      میتونید با دستور اسمبلی JMP (یا RJMP بسته به نوع میکرو) پرش کنید به ابتدای برنامه ولی واسه ریست کلی باید واچ داگ رو روشن کنید و بعدش وارد یه حلقه بشید....
      از این دو دیفاین زیر استفاده کنید...اولی واسه پرش به اول برنامه دومی واسه ریست کلی:

      [code=cpp]

      #define RESET() ((void(*)(void))0)()
      #define WATCH_DOG_RESET() WDTCR=(1<<WDE)|(1<<WDP1)|(1<<WDP 0); WHILE(1);
      [/code]
      تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

      www.intelart.ir


      ساخت کنترلر دما PID فازی با AVR [آموزشی]

      دیدگاه


        #4
        پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

        نوشته اصلی توسط Mahdi.Faani
        میتونید با دستور اسمبلی JMP (یا RJMP بسته به نوع میکرو) پرش کنید به ابتدای برنامه ولی واسه ریست کلی باید واچ داگ رو روشن کنید و بعدش وارد یه حلقه بشید....
        از این دو دیفاین زیر استفاده کنید...اولی واسه پرش به اول برنامه دومی واسه ریست کلی:

        [code=cpp]

        #define RESET() ((void(*)(void))0)()
        #define WATCH_DOG_RESET() WDTCR=(1<<WDE)|(1<<WDP1)|(1<<WDP 0); WHILE(1);
        [/code]
        جناب فانی آیا استفاده از روش اول جایی کاربرد داره؟
        منظورم استفاده کلی از این دیفاین هستش.
        ---------
        .
        .
        ...........

        دیدگاه


          #5
          پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

          استفاده از این اونلی خب بستگی به کاری داره که شما دارید انجام میدی...شاید بنا به دلیلی بخاید رحیستر Program Counter رو حذف کنید...با اون دستور اینکار انجام میشه و سی پی یو فلش رو از آدرس 0 شروع به خوندن میکنه...
          تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

          www.intelart.ir


          ساخت کنترلر دما PID فازی با AVR [آموزشی]

          دیدگاه


            #6
            پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

            میتونی یه پایه ی میکرو رو وصل کنی به پایه ریست(بصورت سخت افزاری) و هر موقع که خواستی اونو صفر کنی تا میکرو ریست بشه.مثلا پایه PORTA.0 رو وصل کن به پایه ریست و با نوشتن PORTA.0=0 میکرو ریست بشه

            دیدگاه


              #7
              پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

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

              دیدگاه


                #8
                پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

                نوشته اصلی توسط saeiddiod
                میتونی یه پایه ی میکرو رو وصل کنی به پایه ریست(بصورت سخت افزاری) و هر موقع که خواستی اونو صفر کنی تا میکرو ریست بشه.مثلا پایه PORTA.0 رو وصل کن به پایه ریست و با نوشتن PORTA.0=0 میکرو ریست بشه
                این دیگه چه کاری هست!
                واچ داگ هست دیگه
                همیشه به یاد خدا باش !

                دیدگاه


                  #9
                  پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

                  نوشته اصلی توسط david24
                  بله درست است ولی می خوام نرم افزاری باشه.
                  منظورم از ریست هم اینه که انگار میکرو از حالت خاموش - شروع به کار کند - نه محتویات حافظه ای باقی مانده باشد نه موارد دیگر.
                  ممنون از نظراتون
                  اون وصل کردن پین به پایه ریست رو فراموش کنید...
                  این واچداگ هم دقیقا به همون صورت ریست میکنه...تو پستای قبلی هم توضیحشو گذاشتم...میتونید دیتاشیت میکرو رو هم ببینید..قسمت منابع ریست...
                  تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                  www.intelart.ir


                  ساخت کنترلر دما PID فازی با AVR [آموزشی]

                  دیدگاه


                    #10
                    پاسخ : چگونه میکرو mega32 را با دستور(کد) رستارت کرد؟

                    ممنون از کد شما استفاده کردم. :bye
                    دوست عزیز اگه مفید بود روی تشکر بزن

                    دیدگاه

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