اطلاعیه

Collapse
No announcement yet.

ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

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

    ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

    سلام :smile:
    من چندتا سوال واسم پیش اومد که شاید هرکدومش هیچ ربطی به هم نداشته باشه ... لطفا هرکی میتونه پاسخ بده ، شما هم چیزایی که واسه خودتون جای سوال داره و بپرسین بقیه پاسخ بدن استفاده کنیم :read:

    1.
    دستور #define حافظه فلش رو اشغال میکنه ؟ مثلا من توی برنامهام از توی پروژه های آقای نور بخش یاد گرفتم یه سری دیفاین هایی رو واسه فهم بهتر برنامم تعریف میکنم...
    میخوام بدونم تو حجم برنامم تاثیر داره ؟
    خودم فک میکنم که کامپایلر فقط از اونا استفاده میکنه و توی فلش تاثیر نداره :rolleyes:

    2.
    توی برنامه چندتا تابع رو میشه تو در تو فراخونی کرد...که میکرو هنگ نکنه
    یا یه جور دبگه بپرسم
    میکرو تواناییش در چه حدیه که ما یه تابعی رو به شکل تو در تو فراخوانی میکنیم هنگ نکنه...
    حتما میدونید که فرمول فاکتوریل فراخوانی یه تابع به صورت تو در تو هست...منظ.وره منم همینه
    اگه میکرو محدودیت داره چطور این محدودیت رو کنترل کنیم که برنامه هنگ نکنه...
    واسه خودم پیش اومده تو پروژم پله پله برنامه و میبرم جلو وقتی برنامه سنگین میشه میکرو سر جاهایی که قبلا درست کار میکرده ریست شده

    3.
    عوامل هنگ کردن میکرو چیه ؟
    واسه خودم زیاد پیش اومده که میکروم هنگ کرده و به دو شکل هم هنگ میکنه ...
    3.1 سرعت میکرو به شدت افت میکنه و اسلو موشن میشه
    3.2 میکرو ریست میکنه
    3.3 میکرو متوقف میشه

    4.
    چطور توی یه پروژه جدی هنگ کردن میکرو کاهش بدیم و جلوگیری کنیم و سامان دهی کنیم

    پیشا پیش از همکاریتون متشکرم
    امیدوارم دوستانی هم که تجربه زیادی دارن ، تجربیاتشون رو هم به اشتراک بزارن :read:

    #2
    پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

    البته توی انجمن زیاد درباره نویز و هنگ میکرو بحث شده. :read:
    شما اول بگو به صورت سخت افزاری و نرم افزاری از چه تکنیک هایی برای رفع اونها استفاده می کنی؟
    انا لله و انا اليه الراجعون

    دیدگاه


      #3
      پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

      نوشته اصلی توسط شاهین شرق
      البته توی انجمن زیاد درباره نویز و هنگ میکرو بحث شده. :read:
      شما اول بگو به صورت سخت افزاری و نرم افزاری از چه تکنیک هایی برای رفع اونها استفاده می کنی؟
      سلام
      بله یه مقاله ای بود توسط آقای طراح ارایه شده بود که به نکاتی از جمله تغذیه ثابت و مناسب . جعبه مدار مناسب طراحی مدار ،خازن های بین پایه های vcc gnd و استفاده از قطعات smd ،ایزوله کردن ورودی ها و...
      من تو پروژه دانشگام ک اتوماسیون گلخانه هست این نکاتی که اشاره کردم و رعایت کردم...
      ولی تکنیک برنامه نویسی خاصی استفاده نکردم...
      با توجه به اینکه اگ توابع برنامم یکم تو در تو میشد...میکرو هنگ میکرد...مجبور شدم موقتا یه سری از چیزایی ک مد نظرم بود رو حذف کنم و به جزییات نپردازم.با اینکه میدونسم درسته کدهام چون همه چی رو تیکه تیکه نوشتم و در اخر همه و به هم مرتبط کردم و احساس میکنم میکرو کم میاره تو پیمایش توابع و چیزهای دگ
      ولی الان اون سوالات رو مطرح کردم چون جوابی واسشون پیدا نکردم.

      دیدگاه


        #4
        پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

        دستور #define حافظه فلش رو اشغال میکنه ؟ ...
        خیر ؛ به این دستورات، دستورات پیش پردازنده گفته میشه و فقط مختص کامپایلر هست و تاثیری در برنامه نداره

        توی برنامه چندتا تابع رو میشه تو در تو فراخونی کرد...که میکرو هنگ نکنه
        بسته به SRAM میکرو میشه این کار را انجام داد که بهتره شیوه برنامه نویسی طوری باشه که پشته ها پر نشه

        سرعت میکرو به شدت افت میکنه و اسلو موشن میشه
        فیوزبیت CKOPT را 0 کنید؛ ممکن است سطح سیگنال کم باشد و با فعال شدن این فیوزبیت سطح نوسان بهبود پیدا می کند

        میکرو ریست میکنه
        میتونه تغذیه نامناسب و عدم وجود مقاومت pull-up روی پین ریست باشه


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

        موفق باشید
        امام علي (عليه السلام) : الزکات العلم نشرهُ/ زکات علم نشر آن است

        دیدگاه


          #5
          پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهین&

          سلام
          دوستان جواب سوال 1و2 رو دادن
          حالا منم بقیه رو جواب میدم:
          3.
          تا حالا برا من پیش نیومده که اسلو موشن بشه
          دو سه مورد رو که خودتون گفتید
          1مورد هم من میگم:
          _نوشتن چرت و پرت رو السیدی :mrgreen: (چه کارکتری چه گرافیکی)
          بریم سر اصل مطلب:
          یکی از عوامل هنگ کردن AVR ها نویز هستش
          برای اینکه بفهمیم علت نویز هست یا چیز دیگه اول تو پروتوس تست میکنیم اگر در پروتوس میکرو هنگ نکرد یعنی ما در عمل نویز داریم. اگر در پروتوس هم جواب نداد و هنگ کرد اشکال از برنامه است.
          یه عامل دیگه هم هست: نزاشتن خازن و مقاومت برای پین ریست.
          عامل بعدی هم : برنامه نادرست است
          ===
          4.
          ***راه حل اول برا جلوگیری از هنگ :
          وصل کردن مدار زیر به پین ریست(اون کلید هم برای ریست کردن بصورت دستیه و گزاشتنش اجباری نیست.) :

          ***راه حل دوم:
          از بین بردن نویز
          تو گوگل سرچ کن پر از مطلبه!
          ***راه حل سوم:
          استفاده از واچداگ تایمر (یا WDT یا سگ نگهبان و یا...)
          که اینجا توضیح دادم:http://www.eca.ir/forum2/index.php?t...5245#msg615245
          ***راه حل چهارم:
          حذف Bounce کلید
          یه نمونه Bounce :

          یه روش برای حذف Bounce :

          ***راه حل پنجم :
          درست نوشتن برنامه !!!
          1 در دنیا 100 در آخرت (درس و مشق فعالیتمو تو انجمن کم کرده)
          من آنچه شرط بلاغست با تو میآ‌گویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
          !Electronic On! Programming On
          هوشمندانه سوال بپرسیم!
          http://ir02x6.persiangig.com/logo/eca/tanks_01.png

          دیدگاه


            #6
            پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

            ممنون از دوستان
            من تقریبا سعی کردم همه نکتهای طراحی که گفتین و نکاتی که توی pdf راجب نویز طراح رو رعایت کنم ...
            فقط watchdog استفاده نکردم...

            و نکته ای که جالب بود نوشتن چرت و پرت روی lcd...
            منظور چیه؟


            1.میشه راجب اینکه چطور کنترل کنیم sram رو بیشتر توضیح بدین ؟ واسم خیلی مهمه :read:
            2.توی کدویژن اگه برنامه یکم زیاد باشه و فلش کم بیاد میشه data stack size رو کاهش بدیم که فلش بیشتر بشه...این مورد مشکلی پیش نمیاره؟
            3.وقتی میکرو ریست میشه از ئقفه ها هنوز فعال هستن ؟چون من تو عمل احساس کردم تایمرم بعد از ریست هم هنوز داشت کار میکرد
            واسه همین همیشه یه تابع Init دارم که اول رجستر هارو آماده میکنه و اول از همه یا cli وقفه رو غیر فعال میکنم
            4.اگه over flow شدن متغیر ها باعث هنگ میکرو هم میشه ؟

            دیدگاه


              #7
              پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

              نوشته اصلی توسط کیوان قاسمی
              و نکته ای که جالب بود نوشتن چرت و پرت روی lcd...
              منظور چیه؟
              یعنی مثلا رو کارکتری حروف یونانی ،علامت سوال،تعجب،<=>،()،{}،[] ،*&^.%/|\+_-$#@×÷`~ و... نشون بده
              و یا در گرافیکی عکسا پیکسلی بشن یا بعضی پیکسلا بیخود روشن بشن یا عکس نصفه بیاد یا حروف قاطی پاتی بشه یا مثلا یک چهارم عکس اون گوشه بره نصفشم این طرف باشه بقیشم اونور توهم توهم شده و یا...

              ===========
              3.وقتی میکرو ریست میشه از ئقفه ها هنوز فعال هستن ؟چون من تو عمل احساس کردم تایمرم بعد از ریست هم هنوز داشت کار میکرد
              واسه همین همیشه یه تابع Init دارم که اول رجستر هارو آماده میکنه و اول از همه یا cli وقفه رو غیر فعال میکنم
              متوجه نمیشم چی میگید.
              1 در دنیا 100 در آخرت (درس و مشق فعالیتمو تو انجمن کم کرده)
              من آنچه شرط بلاغست با تو میآ‌گویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
              !Electronic On! Programming On
              هوشمندانه سوال بپرسیم!
              http://ir02x6.persiangig.com/logo/eca/tanks_01.png

              دیدگاه


                #8
                پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

                نوشته اصلی توسط Mahan.Rafiee
                یعنی مثلا رو کارکتری حروف یونانی ،علامت سوال،تعجب،<=>،()،{}،[] ،*&^.%/|\+_-$#@×÷`~ و... نشون بده
                و یا در گرافیکی عکسا پیکسلی بشن یا بعضی پیکسلا بیخود روشن بشن یا عکس نصفه بیاد یا حروف قاطی پاتی بشه یا مثلا یک چهارم عکس اون گوشه بره نصفشم این طرف باشه بقیشم اونور توهم توهم شده و یا...

                ===========متوجه نمیشم چی میگید.
                اوه بد نوشتم... :surprised: شرمنده
                1.آره دقیقا وقتی تو lcd گرافیکی همچین اتفاقی میوفته کلا lcd تعطیل میشه ... مثلا وسط عکس نشون دادن وقفه بیاد..یا بخوام با سرعت lcd پدیت کنم
                هرچند من توی وقفه هام سعی کردم کار گرافیکی نکنم ولی گاهی وقتا lcd خراب میشه ... چارش چیه این اتفق رو به 0 برسونیم ؟

                2.توی برنامه قبل از هر کاری توی یه تابعی به نام init مقادیرمو بار گذاری میکنم.
                چند بار میکرو ریست شد ولی دیگه درست کار نکرد...از یه سری وقفه استفاده کردم تو برنامم که احساس میکنم با اینکه ریست شده میکرو ولی هنوز فعالند...
                اومدم توی init اول از همه با دستور cli وقفه هارو غیر فعال کردم
                درسته ؟ یا دلیل درست کار نکردن میکرو بعد از ریست شدن (به دلیل هنگ کردن) چیز دیگه ای ؟

                3.واسه قفل گذاری و افزایش امنیت تجاری یه برد که بخوام کسی برنامه توی میکرو به راحتی کپی نکنه چه پیشنهادایی دارین ؟

                ---------------
                لطفا دوستان به سوالایی که پاسخ نداده شده هم پاسخ بدن من تکرار نکنم تو هر پست :rolleyes:

                ممنون از همگی :job:

                دیدگاه


                  #9
                  پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

                  نوشته اصلی توسط کیوان قاسمی
                  3.واسه قفل گذاری و افزایش امنیت تجاری یه برد که بخوام کسی برنامه توی میکرو به راحتی کپی نکنه چه پیشنهادایی دارین ؟
                  1-قفل کردن میکرو توسط فیوزبیت های LB
                  2-استفاده از واچ داگ و کندن پین ریست توسط انبردست و مالیدن چسب آکواریم به آن! :mrgreen:
                  3-میکرو SMD باشد.
                  ======

                  نوشته اصلی توسط کیوان قاسمی
                  1.آره دقیقا وقتی تو lcd گرافیکی همچین اتفاقی میوفته کلا lcd تعطیل میشه ... مثلا وسط عکس نشون دادن وقفه بیاد..یا بخوام با سرعت lcd پدیت کنم
                  هرچند من توی وقفه هام سعی کردم کار گرافیکی نکنم ولی گاهی وقتا lcd خراب میشه ... چارش چیه این اتفق رو به 0 برسونیم ؟
                  چارش اینه که خودتون یه هدر برا ال سی دی بنویسید(یا یه هدر آماده رو دستکاری کنید) و قبل از دستورات "نوشتن رو جی السیدی"، دستور CLI رو بزارید تا وقفه ها قطع شوند و بعد از اتمام "عملیات نوشتن رو GLCD" ،دستور SEIرو بزارید تا وقفه ها دوباره فعال بشن.
                  ======

                  2.توی برنامه قبل از هر کاری توی یه تابعی به نام init مقادیرمو بار گذاری میکنم.
                  چند بار میکرو ریست شد ولی دیگه درست کار نکرد...از یه سری وقفه استفاده کردم تو برنامم که احساس میکنم با اینکه ریست شده میکرو ولی هنوز فعالند...
                  اومدم توی init اول از همه با دستور cli وقفه هارو غیر فعال کردم
                  درسته ؟ یا دلیل درست کار نکردن میکرو بعد از ریست شدن (به دلیل هنگ کردن) چیز دیگه ای ؟
                  بازم متوجه نمیشم منظورتون چیه!
                  سوالتون چیه و چه جوابی میخواین.
                  oo: :sad:
                  1 در دنیا 100 در آخرت (درس و مشق فعالیتمو تو انجمن کم کرده)
                  من آنچه شرط بلاغست با تو میآ‌گویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
                  !Electronic On! Programming On
                  هوشمندانه سوال بپرسیم!
                  http://ir02x6.persiangig.com/logo/eca/tanks_01.png

                  دیدگاه


                    #10
                    پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

                    2.توی کدویژن اگه برنامه یکم زیاد باشه و فلش کم بیاد میشه data stack size رو کاهش بدیم که فلش بیشتر بشه...این مورد مشکلی پیش نمیاره؟
                    خوب می تونی از یه میکرو با فلش زیاد استفاده کنی
                    اگه بخواهی به خاطره اینکه حافظه فلش کم نیاری از حافظه sramاستفاده کنی احتمال پر شدن sramو مشکلات مثل هنگ کردن میکرو اونم زمانی رخ می ده که شما توی وقفه ها از تابع استفاده کرده باشی یا چندتا تابع تو هم استفاده کرده باشی که باعث هنگ کردن میکرو می شه

                    دیدگاه


                      #11
                      پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

                      نوشته اصلی توسط Mahan.Rafiee
                      1-قفل کردن میکرو توسط فیوزبیت های LB
                      2-استفاده از واچ داگ و کندن پین ریست توسط انبردست و مالیدن چسب آکواریم به آن! :mrgreen:
                      3-میکرو SMD باشد.
                      ======
                      چارش اینه که خودتون یه هدر برا ال سی دی بنویسید(یا یه هدر آماده رو دستکاری کنید) و قبل از دستورات "نوشتن رو جی السیدی"، دستور CLI رو بزارید تا وقفه ها قطع شوند و بعد از اتمام "عملیات نوشتن رو GLCD" ،دستور SEIرو بزارید تا وقفه ها دوباره فعال بشن.
                      ======
                      بازم متوجه نمیشم منظورتون چیه!
                      سوالتون چیه و چه جوابی میخواین.
                      oo: :sad:
                      از smd استفاده میکنم جدیدا ولی خب پین های پروگرمم معلومه مگه اینکه به قول شما پایه ریست رو آخر سر بکنم
                      جالب بود یه لحظه اینجوری شدم oo:
                      واچ داگ ؟! چطوری...

                      بابت سوال 3 که واضح گفتم :sad:
                      من تو پروژم از وقفه های تایمر و یوزارت استفاده کردم...فک کنم فک کنم اگه اشتباه نکنم چندباری که میکروم ریست کرد انگار وقفه هام هنوز فعال بودن چون
                      بعد از ریست شدن شاهد این بودم که وقفه تایمرم فعال شد و اون کاری که توی تابع وقفه نوشته بودم رو میکرو اجرا کرد که نبایست میکرد.
                      ببین یه مثال میزنم بهم بگین میکرو اینجوری عمل میکنه ؟!
                      مثلا تایمر 0 به طور مثال تا 150 شمرده ، میکرو هنگ میکنه ریست میشه...دوباره میکرو روشن میشه به سراغ تابع main میره...ولی وقفه تایمر و خود تایمر فعاله و ادامشو میشماره و خیلی زود سر ریز میشه...؟
                      اشتباهه؟ یا اینکه وقتی میکرو هنگ میکنه و ریست میشه همه رجستر ها به حالت اولیه بر میگردن ؟
                      من از پیش حودم با توجه به چیزی که واسم پیش اومد احساس کردم این مثالی که واستون زدم درسته...و اول برنامم با cli وقفه هارو خاموش کردم و بعد از بار گذاری همه رجستر های مورد نظرم اومدم با sei فعال کردم.اینی که میگم درسته ؟

                      دیدگاه


                        #12
                        پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

                        نوشته اصلی توسط 1morteza
                        خوب می تونی از یه میکرو با فلش زیاد استفاده کنی
                        اگه بخواهی به خاطره اینکه حافظه فلش کم نیاری از حافظه sramاستفاده کنی احتمال پر شدن sramو مشکلات مثل هنگ کردن میکرو اونم زمانی رخ می ده که شما توی وقفه ها از تابع استفاده کرده باشی یا چندتا تابع تو هم استفاده کرده باشی که باعث هنگ کردن میکرو می شه
                        خب اونکه از sram استفاده کردم مجبوری شدم ولی توی یه بورد که برنامش زیاد پیچیده نیست و مشکلی پیش نمیاد و با یکم وقت میشه کد رو کمترش کرد.
                        ولی آره توی وقفه توی یه بورد دیگم که مگا 128 هست تابع فراخونی کردم...
                        خب پیش میاد دیگه یکم برنامه پیچیده بشه ممکنه توابع تو در تو پیش بیاد...ولی بازم سعی میکنم تا بشه پیش نیاد .
                        راهی نیست که بفهمم sram چقدر ممکنه درگیر بشه ؟ جز اینکه سعی کنم برنامه ساده بشه یا اصلا پیچیده نشه .

                        من سعی دارم یاد بگیرم از حداکثر توانایی میکروم استفاده کنم :sad:

                        دیدگاه


                          #13
                          پاسخ : پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهین&

                          نوشته اصلی توسط Mahan.Rafiee
                          [color=blue][b
                          3.
                          تا حالا برا من پیش نیومده که اسلو موشن بشه
                          این اسلو موشن رو من از روی lcd گرافیکیم میگفتم که دیگه درست کار نمیکرد و کاراکتر هارو خیلی کند نشون میداد و حتی عکس رو پیکسل پیکسل ...
                          واسه منم عجیب بود

                          البته الان که دارم بحث میکنم خیلی از این مشکلاتمو حل کردم ، با کم کردن برنامه و ساده کردن...
                          ولی اصلا این وضع رو دوس ندارم که ندونم میکرویی که دارم کار میکنم چقدر میتونم ازش کار بکشم...
                          وقتی کد برنامم درست باشه ولی چون یکم زیاد میشه میکرو اذیتم کنه...

                          دیدگاه


                            #14
                            پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهینه سازی ، هنگ کردن میکرو

                            نوشته اصلی توسط کیوان قاسمی
                            از smd استفاده میکنم جدیدا ولی خب پین های پروگرمم معلومه مگه اینکه به قول شما پایه ریست رو آخر سر بکنم
                            جالب بود یه لحظه اینجوری شدم oo:
                            واچ داگ ؟! چطوری...

                            بابت سوال 3 که واضح گفتم :sad:
                            من تو پروژم از وقفه های تایمر و یوزارت استفاده کردم...فک کنم فک کنم اگه اشتباه نکنم چندباری که میکروم ریست کرد انگار وقفه هام هنوز فعال بودن چون
                            بعد از ریست شدن شاهد این بودم که وقفه تایمرم فعال شد و اون کاری که توی تابع وقفه نوشته بودم رو میکرو اجرا کرد که نبایست میکرد.
                            ببین یه مثال میزنم بهم بگین میکرو اینجوری عمل میکنه ؟!
                            مثلا تایمر 0 به طور مثال تا 150 شمرده ، میکرو هنگ میکنه ریست میشه...دوباره میکرو روشن میشه به سراغ تابع main میره...ولی وقفه تایمر و خود تایمر فعاله و ادامشو میشماره و خیلی زود سر ریز میشه...؟
                            اشتباهه؟ یا اینکه وقتی میکرو هنگ میکنه و ریست میشه همه رجستر ها به حالت اولیه بر میگردن ؟
                            من از پیش حودم با توجه به چیزی که واسم پیش اومد احساس کردم این مثالی که واستون زدم درسته...و اول برنامم با cli وقفه هارو خاموش کردم و بعد از بار گذاری همه رجستر های مورد نظرم اومدم با sei فعال کردم.اینی که میگم درسته ؟
                            در رابطه با واچداگ برو اینتو:http://www.eca.ir/forum2/index.php?t...5245#msg615245
                            =========
                            والا باید بعد از ریست 0 بشن (راستش نمیدونم چی بگم)
                            من تاحالا ندیدم که میکرو بعد از ریست سرریز کنه!(چون زیاد با وقفه کار نکردم شایدم اصلا کار نکردم!)
                            اینکه میگی موقع هنگ ریست میشه و دوباره برنامه رو شروع میکنه برام عجیبه!(نکنه واچداگ گزاشتی؟؟!)
                            =========
                            1 در دنیا 100 در آخرت (درس و مشق فعالیتمو تو انجمن کم کرده)
                            من آنچه شرط بلاغست با تو میآ‌گویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
                            !Electronic On! Programming On
                            هوشمندانه سوال بپرسیم!
                            http://ir02x6.persiangig.com/logo/eca/tanks_01.png

                            دیدگاه


                              #15
                              پاسخ : ُسوال هایی درباره عملکرد میکرو ؛ بهین&

                              نوشته اصلی توسط Mahan.Rafiee
                              در رابطه با واچداگ برو اینتو:http://www.eca.ir/forum2/index.php?t...5245#msg615245
                              =========
                              والا باید بعد از ریست 0 بشن (راستش نمیدونم چی بگم)
                              من تاحالا ندیدم که میکرو بعد از ریست سرریز کنه!(چون زیاد با وقفه کار نکردم شایدم اصلا کار نکردم!)
                              اینکه میگی موقع هنگ ریست میشه و دوباره برنامه رو شروع میکنه برام عجیبه!(نکنه واچداگ گزاشتی؟؟!)
                              =========
                              نه نزاشتم ...
                              آره به نظر میرسه با هنگ کردن رجستر ها به حالت اولیه نمیرن نمیرن...
                              ولی من اومدم از cli در اول برنامه استفاده کردم و رجسترهامو که مقدار دادم بعد sei گذاشتم که درست ریست بشه...

                              کد:
                              void main()
                              {
                              cli();
                              // code
                              sei();
                              
                              //code
                              
                              }
                              سایز برنامم :
                              لب مرزه عیب نداره ؟

                              دیدگاه

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