:read: دوستان میخواستم بدونم pll را در lpc1768 چطوری تنظیم میکنند من در فایل startup چیزی ندیدم از دوستان اگر لطف کنند اگر توضیح بدهند ممنون میشوم :read:
اطلاعیه
Collapse
No announcement yet.
تنظیم pll در lpc1768 بصورت تصویری
Collapse
X
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
سلام
مگه منظورتون این نیست؟؟
انجام پروژه های برنامه نویسی اندروید
[glow=red,2,300]نرم افزار نقشه های پاور کامپیوتر اندورید[/glow]
http://cafebazaar.ir/app/?id=com.atxdroid
- تشکرها 1
دیدگاه
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
من یکیش رو توضیح میدم شما بقیه اش رو خودت دیگه...
اول موس رو روی اون گزینه ای که میخای بدونی چیه نگه میداری تا توضیحاتش بیان
حالا همون تور که فرمول رو میبینی شروع میکنی به محاسبه که من از برد فروشگاه که کریتال 12 گذاشته و مشخصات زیر
استفاده میکنم
)2*100*12(/6=400یعنی فرکانس خروجی pll مساوی 400 مگا هرتزه :eek:
حالا شروع میکنیم استفاده مثلا برای cpu که دو فیلد پایین تر از اون توضیحاته و نوشته cpu clock confi... نوشته 4 که یعنی باید مقدار خروجی pll رو تقسیم بر 4 و استفاده کرد که میشه 100مگا هرتز
موفق باشید!انجام پروژه های برنامه نویسی اندروید
[glow=red,2,300]نرم افزار نقشه های پاور کامپیوتر اندورید[/glow]
http://cafebazaar.ir/app/?id=com.atxdroid
دیدگاه
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
ضمن تشکر فراوان از همه دوستان من مطلبی را دراین مور پیدا کردم و خواستم تا دوستان دیگری هم که مثل من در این مورد نیاز به اطلاعات دارند استفاده نمایند
لینک مطلب http://www.iranmicro.ir/forum/showthread.php?t=5203&page=4
در این قسمت می خوام به نحوه تنظیم و استفاده از واحدد pll در میکروکنترولر lpc1768 در حد اشنائی و راه اندازی اشاره کنم،وچون از کتابخانه های cmsis استفاده خواهیم کرد به نحوه تنظیم مقادیر در این کتابخانه ها اشاره می کنیم.البته بهترین منبع LPC17xx User manual می باشد که و توصیه می شود جهت استفاده بهتر به این برگه مراجعه شود.
ضمنا سورس های نوشته شده در این تاپیک قرار خواهند گرفت:
کلیه سورس ها و نکات مهم میکروکنترولر lpc1768 - ایـــــــــران میـــــــکرو ™
میکرو کنترولر lpc1768 دارای 2 واحد pll به نامهای pll0,pll1 می باشد.
خصوصیات PLL0:
-این واحد ورودی کلاک از 32khz تا 50mhz را پشتیبانی میکند.
-منبع کلاک pll0 می تواند اوسیالاتور داخلی میکرو یا کریستال متصل به پایه های xtal1,xtal2 ویا کریستال ساعت (32.768) انتخاب گردد.
(اوسیلاتور داخلی میکرو 4mhz بوده و کریستال خارجی مورد استفاده می تواند از 1 تا 25mhz انتخاب شود)
-خروجی pll0 میتواند بین 275 تا 550mhz باشد.
مقادیر انتخاب شده برای رجیستر های MSEL,NSEL که از انها برای ضرب و تقسیم فرکانس ورودی استفاده می شود به ترتیب می تواند:
N=1-256
M=6-512
قرار بگیرد.
خصوصیات PLL1:
از این PLL مخصوص برای تهیه فرکانس کاری قسمت USB که مقدار 48MHZ را داراست استفاده می شود زیرا دراوردن این فرکانس با استفاده از PLL0 کمی مشکل است در صورتی که PLL1 میتواند به صورت ثابت این فرکانس را تهیه کند.
-منبع کلاک برای این واحد فقط می تواند کریستال خارجی انتخاب شود.
- ورودی کلاک برای این واحد می تواند از 10 تا 25MHZ انتخاب شود.
-خروجی PLL1 می تواند بین 156 تا 320MHZ باشد.
-مقادیر انتخاب شده برای رجیستر های MSEL,PSEL که از انها برای ضرب و تقسیم فرکانس ورودی استفاده می شود به ترتیب می تواند :
M=1-32
P=1-8 قرار بگیرد.
مثال:
-کریستال متصل به میکرو را اکثرا 12MHZ در نظر میگیریم.
با فرض بالا مقادیر واحد PLL را طوری انتخاب نمائید که فرکانس کاری CPU=12MHZ و واحد USB=48MHZ باشد.
فرمول های مورد استفاده برای محاسبه مقادیر مورد نظر به صورت زیر است:
(M = (FCCO × N) / (2 × FIN
N = (2 × M × FIN) / FCCO
(FIN = (FCCO × N) / (2 × M
Fin=منبع کلاک مورد نظر که در اینجا 12MHZ می باشد.
که می توانید برای راحتی کار از نرم افزار ارائه شده برای این منظور(در تاپیک ذکر شده در بالا) استفاده کنید.
شماتیک و فرمول های واحد PLL:
ما مقادیر M,N را با کمک نرم افزار به این صورت انتخاب می کنیم:
M=12
N=1
با انتخاب این مقادیر خروجی واحد PLL0 مقدار 288MHZ قرار می گیرد که این مقدار برای اعمال به عنوان کلاک CPU خیلی زیاد بوده و ما در این مثال فرکانس CPU را 12MHZ در نظر گرفته ایم،در این مرحله ما رجیستر CCLKSEL را مقدار دهی می کنیم ،که مقدار 24 را انتخاب می نمائیم با انتخاب این مقدار خروجی کلاک PLL0 تقسیم بر این مقدار شده (288/24) و فرکانس کاری CPU برابر 12MHZ قرار می گیرد.
بعد از این مراحل نوبت به مقدار دهی N,M,CCLKSEL تعیین شده در سورس(برنامه) مورد نظرمان است،چون از کتابخانه های CMSIS استفاده می کنیم سورس system_LPC17xx.c را باز کرده و مقدار معادل هگز مقادیر به دست امده در بالا را مانند شکل زیر جایگزین می کنیم:
N-1=0=0
M-1=11=0XB
CCLKSEL-1=23=0X17
دیدگاه
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
با سلام به دوستان
یه چند تا سوالدارم ممنون میشم کمک کنین
سوال اول : وقتی این گزینه های مربوط به pll و اعداد مربوط به ضرب کننده و تقسیم کننده های فرکانس را در فایل system_lpc17xx.c تغییر دهیم و بعد پروژه را کامپایل کنیم و روی تراشه بریزیم تغییرات عمال می شند ؟؟ یعین لازم نیست کار دیگه ای انجام بدیم؟ مثلا تو AVR می رفتیم فیوز بیت ها را تیک میزاشتیم یا تیکشون را بر می داشتیم . اینجا چی؟؟ چنین کاری نیاز هست ؟ یا با کامپایل کردن و ریختن روی تراشه تغییرات اعمل می شن ؟
سوال دوم: من اگه بخوام قسمت GPIO با بالاترن فرکانس ممکن کار بکنه چی کار باید بکنم ؟ به عبارت بهتر چه تغییراتی باید بدم تا فرکانس GPIO ماکسیمم بشه . من هدفم اینه که با بالاترین سرعت که LPC1768 از روی پرت های ورودی خروجیبنویسم و بخونم با این هدف چی کارهایی لازم هست؟ من خودممیگم اگه دوستان کمک کنن ممنون میشم :
یکی فرکانس PCLK_GPIO را که تقسیم کننده فرکانس هست و در قسمت perpherial clockselection register 1 را روی مقدار Pclk=Cclk/4 قرار بدم دیگر انکه MSEL و NSEL را به ترتیب روی 100 و 6 بزارم . همچنین در قسمت CPU Clock Configuration Register مقدار CCLKSEL را روی 1 بزارم . درست میگم ؟؟
خواهشا کمک کنین
اخرین سوال : اگه عددی را در این ضرب کننده و یا تقسیم کننده های فرکانس اشتباه بزنیم ممکنه ای سی خراب بشه ؟( مثل AVR که اگه یه قسمت از فیوز بیتش را اشتباه میزدیم ای سی خراب می شد و باید با پرگرامر پارالل ای سی را درستش می کردیم )
ممنون از کمک دوستان
دیدگاه
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
نوشته اصلی توسط ادیسون کوچولوبا سلام به دوستان
یه چند تا سوالدارم ممنون میشم کمک کنین
سوال اول : وقتی این گزینه های مربوط به pll و اعداد مربوط به ضرب کننده و تقسیم کننده های فرکانس را در فایل system_lpc17xx.c تغییر دهیم و بعد پروژه را کامپایل کنیم و روی تراشه بریزیم تغییرات عمال می شند ؟؟ یعین لازم نیست کار دیگه ای انجام بدیم؟ مثلا تو AVR می رفتیم فیوز بیت ها را تیک میزاشتیم یا تیکشون را بر می داشتیم . اینجا چی؟؟ چنین کاری نیاز هست ؟ یا با کامپایل کردن و ریختن روی تراشه تغییرات اعمل می شن ؟
سوال دوم: من اگه بخوام قسمت GPIO با بالاترن فرکانس ممکن کار بکنه چی کار باید بکنم ؟ به عبارت بهتر چه تغییراتی باید بدم تا فرکانس GPIO ماکسیمم بشه . من هدفم اینه که با بالاترین سرعت که LPC1768 از روی پرت های ورودی خروجیبنویسم و بخونم با این هدف چی کارهایی لازم هست؟ من خودممیگم اگه دوستان کمک کنن ممنون میشم :
یکی فرکانس PCLK_GPIO را که تقسیم کننده فرکانس هست و در قسمت perpherial clockselection register 1 را روی مقدار Pclk=Cclk/4 قرار بدم دیگر انکه MSEL و NSEL را به ترتیب روی 100 و 6 بزارم . همچنین در قسمت CPU Clock Configuration Register مقدار CCLKSEL را روی 1 بزارم . درست میگم ؟؟
اخرین سوال : اگه عددی را در این ضرب کننده و یا تقسیم کننده های فرکانس اشتباه بزنیم ممکنه ای سی خراب بشه ؟( مثل AVR که اگه یه قسمت از فیوز بیتش را اشتباه میزدیم ای سی خراب می شد و باید با پرگرامر پارالل ای سی را درستش می کردیم )
از جمله ی رفتگان این راه دراز
باز آمده ای کو که به ما گوید راز
هان بر سر این دو راهه از روی نیاز
چیزی نگذاری که نمی آیی باز
دیدگاه
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
با سلام...
من تیک انتخاب کریستال اصلی(oscen) رو به اشتباه برداشتم و حواسم نبود بعد از برنامه نویسی با j-link چروگرمش کردم و متاسفانه الان دیگه نمیشه برد رو پروگرم کرد ....مشکلش چیه؟میکرو الان از اسیلاتور داخلی استفاده میکنه ؟
(احتمال داره میکرو سوخته باشه ؟)
دیدگاه
-
پاسخ : تنظیم pll در lpc1768 بصورت تصویری
دوستان اگه ممکنه این بحث رو در مورد پاور و فلش هم دنبال کنیم...
منظروم دو سه تا گزینه ی آخر system_LPC17xx.c تو ویزاردش هست...کسی هست یه کم در موردشون توضیح بده...
خواهش دیگه این که اگر ممکنه در مورد نحوه ی محاسبه ی m,n ,p در مورد pll ها یه مثالی بزنید(این نرم افزاره کجاست ؟)
دیدگاه
دیدگاه