اطلاعیه

Collapse
No announcement yet.

خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

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

    خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

    سلام و خسته نباشید
    دوستان من میخوام با LPC1768 و از طریق پورت اترنتش یک عکس یا داده حجم بالا رو نمایش بدم. این کار باید از طریق فلش داخلی خود میکرو انجام بشه. یعنی به نوعی شبیه بوت لودر هستش(با بوت لودر هم فقط آشنایی دارم و کاری انجام ندادم ) . میشه کمکم کنین که چه کارایی باید انجام بدم؟؟؟
    مثالی یا لینکی تو این ضمینه هست که کمکم کنه؟؟خیلی گشتم ولی... :cry: :cry2:

    #2
    پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

    نوشته اصلی توسط mehdia1968
    سلام و خسته نباشید
    دوستان من میخوام با LPC1768 و از طریق پورت اترنتش یک عکس یا داده حجم بالا رو نمایش بدم. این کار باید از طریق فلش داخلی خود میکرو انجام بشه. یعنی به نوعی شبیه بوت لودر هستش(با بوت لودر هم فقط آشنایی دارم و کاری انجام ندادم ) . میشه کمکم کنین که چه کارایی باید انجام بدم؟؟؟
    مثالی یا لینکی تو این ضمینه هست که کمکم کنه؟؟خیلی گشتم ولی... :cry: :cry2:
    سلام
    شما میتونی از روی فلش بخونی ولی نمیتونی توش بنویسی. اگر نوشتن هم برات ضروریه بهتره از مموری SD استفاده کنی تا هر دو عمل رو بتونی انجام بدی و از حافظه خیلی بالا هم بهره ببری
    نمونه برنامه برای اترنت هست که داده ارسال میکنه و میگیره. برو توی سمپل های کیل و Telnet رو ببین خیلی کمکت میکنه. البته من با AT91 کار کردم و راحت داده رو هم ارسال کردم. توی قسمت برد آموزشی 1768 هم سمپل برای اترنت و SD کارت وجود داره
    زندگی یعنی امید و حرکت
    کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
    سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
    برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
    به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

    دیدگاه


      #3
      پاسخ : پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

      نوشته اصلی توسط علی ایمانی فر
      سلام
      شما میتونی از روی فلش بخونی ولی نمیتونی توش بنویسی. اگر نوشتن هم برات ضروریه بهتره از مموری SD استفاده کنی تا هر دو عمل رو بتونی انجام بدی و از حافظه خیلی بالا هم بهره ببری
      نمونه برنامه برای اترنت هست که داده ارسال میکنه و میگیره. برو توی سمپل های کیل و Telnet رو ببین خیلی کمکت میکنه. البته من با AT91 کار کردم و راحت داده رو هم ارسال کردم. توی قسمت برد آموزشی 1768 هم سمپل برای اترنت و SD کارت وجود داره
      مرسی از توضیحاتتون آقای ایمانی فر
      این کار رو انجام دادم ولی زیاد از برنامش سردرنیاوردم :sad:
      User manual خود LPC1768 رو که خوندم (Chapter 32) فهمیدم باید از حالت و توابع IAP و ISP همون ( Flash & RAM programming commands and function)استفاده کنم که بتونم از طریق برنامه پروگرم شده در فلش روی RAM بنویسم .ولی یه مثال عملی از این کار پیدا نمیکنم. :angry: شما مثال یا لینکی از این مورد سراغ ندارین؟؟

      دیدگاه


        #4
        پاسخ : پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

        نوشته اصلی توسط mehdia1968
        مرسی از توضیحاتتون آقای ایمانی فر
        این کار رو انجام دادم ولی زیاد از برنامش سردرنیاوردم :sad:
        User manual خود LPC1768 رو که خوندم (Chapter 32) فهمیدم باید از حالت و توابع IAP و ISP همون ( Flash & RAM programming commands and function)استفاده کنم که بتونم از طریق برنامه پروگرم شده در فلش روی RAM بنویسم .ولی یه مثال عملی از این کار پیدا نمیکنم. :angry: شما مثال یا لینکی از این مورد سراغ ندارین؟؟
        قبلا ی عده دنبال این بودن که با اسمبلی روی flash از توی برنامه داده بنویسن ولی فک کنم به جایی نرسید. میگفتن میشه ولی تا جایی که من دنبال کردم به نتیجه نرسیده بودن. البته شاید بعدها رسیده باشن و من ندیده باشم. ی سرچ کنید ببینید چیزی دستگیرتون میشه.
        روی RAM نوشتن که کاری نداره. همهی متغییر ها روی RAM هستن دیگه. منظورتون چیه؟
        زندگی یعنی امید و حرکت
        کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
        سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
        برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
        به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

        دیدگاه


          #5
          پاسخ : پاسخ : پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

          نوشته اصلی توسط علی ایمانی فر
          قبلا ی عده دنبال این بودن که با اسمبلی روی flash از توی برنامه داده بنویسن ولی فک کنم به جایی نرسید. میگفتن میشه ولی تا جایی که من دنبال کردم به نتیجه نرسیده بودن. البته شاید بعدها رسیده باشن و من ندیده باشم. ی سرچ کنید ببینید چیزی دستگیرتون میشه.
          روی RAM نوشتن که کاری نداره. همهی متغییر ها روی RAM هستن دیگه. منظورتون چیه؟
          ببینید من میخوام این بورد رو یکبار پروگرم کنم و یجا نصب کنم.بعد از اون از طریق پورت اترنت (و DP83848CVV) هر دفعه یک عکس(که حجمش شاید از 512kb حافظه فلش هم بیشتر باشه ) رو به میکرو بدم و روی LCD گرافیکی نمایش بدم.تو این کار نمیخوام از حافظه جانبی و EEPROM هم استفاده کنم.
          انگار یه برنامه کوچیک(یه چیزی شبیه بوت لودر یا خود بوت لودر) قراره هر دفعه قسمتی از حافظه رو پاک کرده و داده های عکس جدید رو بریزه(که بعد بتونم نمایش بدم)
          حالا با سرچ هایی که کردم یکی این قضیه IAP و ISP رو دیدم یکی هم قضیه (EEPROM Emulation) رو دیدم که انگار یکی EEPROM مجازی در داخل میکروی LPC1768 هست و میشه ازش استففاده کرد.
          ولی مثالی ازش پیدا نکردم و دیگه گیج شدم :angry:

          دیدگاه


            #6
            پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

            این مقاله برای استفاده از حافظه فلش به جای ایتوپرام هست
            http://s5.picofile.com/file/8118928976/%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7% D8%B2_%D8%AD%D8%A7%D9%81%D8%B8%D9%87_%D9%81%D9%84% D8%B4_%D8%A8%D9%87_%D8%B9%D9%86%D9%88%D8%A7%D9%86_ %D8%A7%DB%8C%D8%AA%D9%88%D9%BE%D8%B1%D8%A7%D9%85.p df.html

            اینم مثالهاش
            http://s5.picofile.com/file/8118929034/Example_Virtual_EEPROM.rar.html

            دیدگاه


              #7
              پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

              نوشته اصلی توسط arvin2009
              این مقاله برای استفاده از حافظه فلش به جای ایتوپرام هست
              http://s5.picofile.com/file/8118928976/%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7% D8%B2_%D8%AD%D8%A7%D9%81%D8%B8%D9%87_%D9%81%D9%84% D8%B4_%D8%A8%D9%87_%D8%B9%D9%86%D9%88%D8%A7%D9%86_ %D8%A7%DB%8C%D8%AA%D9%88%D9%BE%D8%B1%D8%A7%D9%85.p df.html

              اینم مثالهاش
              http://s5.picofile.com/file/8118929034/Example_Virtual_EEPROM.rar.html
              خیلی خیلی ممنون دوست عزیز
              میکروی من LPC1768 هست میرم سراغ این فایل ها ببینم چی میشه و میتونم تغییرش بدم این رو.
              مرسی

              دیدگاه


                #8
                پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                این درایور کنترل حافظه FLASH که تو لینک بالا گفته شده ، برای LPC1768 رو از کجا میتونم پیدا کنم؟؟
                آیا همین فایل های FlashDev.c و FlashOS.h که در قسمت IAP_Demo هست منظوره؟؟؟؟

                و یه سوال کلی تر : :sad:
                این Virtual EEPROM با مبحث IAP و ISP فرق داره؟؟چه فرقی؟؟
                مرسی

                دیدگاه


                  #9
                  پاسخ : پاسخ : پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                  نوشته اصلی توسط mehdia1968
                  ببینید من میخوام این بورد رو یکبار پروگرم کنم و یجا نصب کنم.بعد از اون از طریق پورت اترنت (و DP83848CVV) هر دفعه یک عکس(که حجمش شاید از 512kb حافظه فلش هم بیشتر باشه ) رو به میکرو بدم و روی LCD گرافیکی نمایش بدم.تو این کار نمیخوام از حافظه جانبی و EEPROM هم استفاده کنم.
                  انگار یه برنامه کوچیک(یه چیزی شبیه بوت لودر یا خود بوت لودر) قراره هر دفعه قسمتی از حافظه رو پاک کرده و داده های عکس جدید رو بریزه(که بعد بتونم نمایش بدم)
                  حالا با سرچ هایی که کردم یکی این قضیه IAP و ISP رو دیدم یکی هم قضیه (EEPROM Emulation) رو دیدم که انگار یکی EEPROM مجازی در داخل میکروی LPC1768 هست و میشه ازش استففاده کرد.
                  ولی مثالی ازش پیدا نکردم و دیگه گیج شدم :angry:
                  پس باید ی مموری SD بزاری و تصاویر رو توی مموری SD ذخیره کنی و هر وقتم خاستی روی LCD نمایش بدی
                  اگر هم نمیخای تصاویر رو ذخیره کنی میتونی پیکسلا رو دونه دونه ارسال کنی و روی LCD نمایش بدی و اصلا هم به حافظه جهت ذخیره نیاز نداری
                  زندگی یعنی امید و حرکت
                  کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                  سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                  برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                  به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                  دیدگاه


                    #10
                    پاسخ : پاسخ : پاسخ : پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                    نوشته اصلی توسط علی ایمانی فر
                    پس باید ی مموری SD بزاری و تصاویر رو توی مموری SD ذخیره کنی و هر وقتم خاستی روی LCD نمایش بدی
                    اگر هم نمیخای تصاویر رو ذخیره کنی میتونی پیکسلا رو دونه دونه ارسال کنی و روی LCD نمایش بدی و اصلا هم به حافظه جهت ذخیره نیاز نداری
                    نه آقای ایمانی فر.مهندس arvin2009 منظورم رو خوب گرفتن و لینک هایی که دادن خیلی خوبه.فقط مشکلش اینه که واسه STM32F10xxx هستش.منم از کدهای STM32F10xxx سر درنمیارم که بتونم خوب عوضش کنم.یه تغییراتی دادم ولی.....
                    من دقیقا همین قابلیتی که تو pdf بالایی گفته شده رو میخوام عملی کنم واسه LPC1768 و البته با این تغییر که داده ها از طریق اترنت به میکرو داده میشن.

                    دیدگاه


                      #11
                      پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                      عزیز دل برادر، شما با Flash Magic برای برنامه ریزی 1768 کار کردید؟ دیدید یه قسمتی داره که می تونی با پورت سریال پروگرامش کنید، یا با Ethernet؟
                      من این کار رو انجام دادم. مثالش رو خودِ Keil داره. وقتی Flash Magic رو نصب می کنید، برای Ethernet Bootloader دو تا پروژه به شما میده که یکیش برای Bootloader میکروئه. دومی، مثالیه که از طریق Ethernet می تونی یه برنامه ساده چشمک زن رو روی میکرویی که Bootloader شبکه داره پروگرام کنی. خیلی باحاله. من خودم یه سیستم بستم و از راه دور با همین برنامه توسط Ethernet پروگرامش کردم.
                      من انجامش دادم. توضیحات NXP خیلی مفیده. البته Flash Magic هم واقعاً معرکه ست.

                      دوم، وسطِ برنامه میشه روی فلش میکروهای نظیر 1768 و STM32 نوشت. اسمش همون IAP هست که شما فرمودید. می تونید از توابعش استفاده کنید. خیلی ساده ست. به صورت صفحه (Page)، یکپارچه روی فلش می نویسه. وسطِ برنامه. نگرانِ چیزی هم نباشید (مثلاً نوشتن در آدرس غیرمجاز)، چون خودش محافظت از فلش داره و نهایتاً میکرو وقفه میده و کار رو متوقف می کنه.
                      من با STM32 این کار رو کردم. همونطور که می دونید این میکروها EEPROM ندارند. برای استفاده از فلش به جای EEPROM (که یه عدد تنظیم دما روی دماسنج بود) من از IAP استفاده کردم. تو این یه مورد، STM32 خیلی روان و واضح مثال داره، ولی 1768 یکم باید باهاش دست و پنجه نرم کنید.
                      کلاً همه چیزایی که شما می خواید، شدنیه. فقط باید یکم مطالعه و تلاش کنید تا به نتیجه برسید.
                      بیایید با Google آشتی کنیم!

                      دیدگاه


                        #12
                        پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                        نوشته اصلی توسط محمد رستمی
                        عزیز دل برادر، شما با Flash Magic برای برنامه ریزی 1768 کار کردید؟ دیدید یه قسمتی داره که می تونی با پورت سریال پروگرامش کنید، یا با Ethernet؟
                        من این کار رو انجام دادم. مثالش رو خودِ Keil داره. وقتی Flash Magic رو نصب می کنید، برای Ethernet Bootloader دو تا پروژه به شما میده که یکیش برای Bootloader میکروئه. دومی، مثالیه که از طریق Ethernet می تونی یه برنامه ساده چشمک زن رو روی میکرویی که Bootloader شبکه داره پروگرام کنی. خیلی باحاله. من خودم یه سیستم بستم و از راه دور با همین برنامه توسط Ethernet پروگرامش کردم.
                        من انجامش دادم. توضیحات NXP خیلی مفیده. البته Flash Magic هم واقعاً معرکه ست.

                        دوم، وسطِ برنامه میشه روی فلش میکروهای نظیر 1768 و STM32 نوشت. اسمش همون IAP هست که شما فرمودید. می تونید از توابعش استفاده کنید. خیلی ساده ست. به صورت صفحه (Page)، یکپارچه روی فلش می نویسه. وسطِ برنامه. نگرانِ چیزی هم نباشید (مثلاً نوشتن در آدرس غیرمجاز)، چون خودش محافظت از فلش داره و نهایتاً میکرو وقفه میده و کار رو متوقف می کنه.
                        من با STM32 این کار رو کردم. همونطور که می دونید این میکروها EEPROM ندارند. برای استفاده از فلش به جای EEPROM (که یه عدد تنظیم دما روی دماسنج بود) من از IAP استفاده کردم. تو این یه مورد، STM32 خیلی روان و واضح مثال داره، ولی 1768 یکم باید باهاش دست و پنجه نرم کنید.
                        کلاً همه چیزایی که شما می خواید، شدنیه. فقط باید یکم مطالعه و تلاش کنید تا به نتیجه برسید.
                        خیلی ممنون دوست عزیز از توضیحات جامعی که دادی
                        منم دقیقا به همین مرحله دست و پنجه نرم کردن رسیدم الان. اگه یه مثال از این کار با LPC1768 باشه خیلی زودتر راه میفتم. آخه زیاد از توابع STM32 سر درنمیارم که بتونم تغییر بدم واسه LPC1768. حرفتون هم کاملا قبول دارم که شدنیه و کار نشد نداره.
                        یه سوال دوست عزیز :
                        تو مبحث IAP و مثالش که اومده مبنای Write/Erase رو Sector ها گرفته ولی تو مبحث Virtual EEPROM و همین فایلی که واسه STM32 هست مبنا روی Page هاست. میدونم که کوچکترین واحد قابل نوشتن یا پاک کردن تو این سری میکروها Page هستش.حالا واسه این کاری که گفتم ، موندم که باید بر چه اساسی برنامم رو بنویسم؟؟؟

                        دیدگاه


                          #13
                          پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                          یه سوال دیگه آقای رستمی :
                          واسه استفاده از IAP باید PLL غیرفعال بشه.این کار باید کجای برنامه انجام بشه؟؟؟درون توابع مثلا Erase و Program و...؟؟یا باید همون اول به طور کلی غیرفعال بشه؟؟
                          و اینکه در موقع غیرفعال بودن PLL باید کلاک رو روی چه مقداری تنظیم کرد؟؟
                          ممنون

                          دیدگاه


                            #14
                            پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                            این چیزیه که برای STM32 پیدا کردم و جواب گرفتم (البته راه اندازیش چندین روز وقتمو گرفت!):
                            http://m2012rostami.persiangig.com/document/flash.c
                            اینم فایل Header:
                            http://m2012rostami.persiangig.com/document/flash.c
                            اینم نمونه کد برای نوشتن 4 تا عدد برای 4 تا رله متناسب با دمای تنظیم شده توسط کاربر (کامپایلر Keil):
                            کد:
                            #include "STM32F10x.h"
                            #include "flash.h"
                            
                            #define		ADDR_RELAY1_FLASH		0x8040000
                            #define		ADDR_RELAY2_FLASH		0x8040004
                            #define		ADDR_RELAY3_FLASH		0x8040008
                            #define		ADDR_RELAY4_FLASH		0x804000C
                            
                            void do_write_flash(void)
                            {
                            	FLASH_Unlock();
                            	delay_us(100);
                            	FLASH_ErasePage(ADDR_RELAY1_FLASH);
                            	delay_us(100);
                            	FLASH_ProgramHalfWord(ADDR_RELAY1_FLASH, temp_relay[0]);
                            	FLASH_ProgramHalfWord(ADDR_RELAY2_FLASH, temp_relay[1]);
                            	FLASH_ProgramHalfWord(ADDR_RELAY3_FLASH, temp_relay[2]);
                            	FLASH_ProgramHalfWord(ADDR_RELAY4_FLASH, temp_relay[3]);
                            	delay_us(100);
                            	FLASH_Lock();
                            }
                            بیایید با Google آشتی کنیم!

                            دیدگاه


                              #15
                              پاسخ : خواندن/نوشتن روی حافظه فلش میکرو LPC1768 از طریق پورت اترنت(کمک)

                              برای 1768، این توضیحات خودِ NXP برای Ethernet Bootloader:
                              http://www.nxp.com/documents/applica...te/AN10744.pdf

                              اون اوایل که میکروهای NXP معروف نشده بود، همه مثال ها و پروژه هاش آماده دم دست بود. خودِ Keil کل فایل هاش رو می ذاشت. الآن شده کتابخونه های غیرقابل دسترسی. اینا رو از اون زمانها دارم:
                              http://m2012rostami.persiangig.com/d...r.rar/download

                              اولاش یه کارایی با PLL کرده. زیاد دقت نکردم چیه. شما خودتون نگاه کنید..
                              بیایید با Google آشتی کنیم!

                              دیدگاه

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