برگزیده های پرشین تولز

میکروکنترلرهایpic

papo

کاربر تازه وارد
تاریخ عضویت
23 ژانویه 2006
نوشته‌ها
1
لایک‌ها
0
سلام chia
دمت گرم رفتی تو فاز میکروکنترلر
بچه ها ازش استفاده کنید این حالیشه
منم با این اموزش موافق هستم
راستی بچه ها من تازه عضو این سایت شدم.
 

chia

Registered User
تاریخ عضویت
18 ژانویه 2006
نوشته‌ها
243
لایک‌ها
2
محل سکونت
تو موتور خونه ي جهنم
راستی دوست عزیز sina_judgment اگه میشه این دعوتنامه رو برای من بفرست چون برای اموزش به این فظا نیاز دارم برای اپلود کردن نرم افزار های مورد نیاز با تشکر
 

chia

Registered User
تاریخ عضویت
18 ژانویه 2006
نوشته‌ها
243
لایک‌ها
2
محل سکونت
تو موتور خونه ي جهنم
دوستان عزيز لطفا اماده باشيد من دارم شروع ميكنم
tv.gif
 

afshin_electronic

Registered User
تاریخ عضویت
16 آگوست 2005
نوشته‌ها
1,112
لایک‌ها
1
ما آماده ايم ... لطفا اول چيرايي رو كه بايد تهيه كنيم .. بگو...
 

micro-pic

کاربر تازه وارد
تاریخ عضویت
3 می 2006
نوشته‌ها
7
لایک‌ها
0
محل سکونت
tehran
شما وقتی میگی باید خودم دست به کار بشم بهتره که واقعا این کار رو بکنید :hmm: . نه اینکه مطالب رو از یه وبلاگ کپی کنید اینجا و به اسم خودتون بزنید .
:mad:
شما یادتون رفت منبع رو ذکر کنید .
اما من جای شما این کار رو انجام می دم

http://micro-pic.persianblog.com
که حالا شده
www.ir-micro.com




به نقل از chia :
مثل انکه خودم باید دست به کار بشم

برای شروع:

میکروکنترلر های pic

این میکروکنترلر ها ساخت شرکت MicroChip هستند .نام pic از کلمه های
Programmable Interface Controlگرفته شده .
این نوع تراشه ها در انواع 8 و 18 و28 و 40 و 64 و 80 پایه موجود می باشند .

میکروکنترلرهای PIC از نظر نوع حافظه به 4 دسته تقسیم می شوند :
1- دارای حافظه از نوع Flash هستند : آی سی هایی که دارای حرف F هستند مانند 16F84
2- دارای حافظه از نوع Eprom هستند : آی سی هایی که دارای حرف C یا CE هستند مانند 16C84 -16CE625
3-دارای حافظه از نوع Rom هستند :آی سی هایی که دارای حرف CR هستند مانند 16CR84
4-دارای حافظه از نوع Eeprom هستند
همچنین آی سی هایی که دارای حرف L هستند دارای رنج ولتاژ گسترده ای هستند .


در اینجا به بررسی pic16F84A می پردازیم (چون این نوع کاربرد زیادی دارد )
این میکروکنترلر دارای 18 پایه می باشد که 13 پایه به عنوان خطوط I/O

۵ پایه=Port A ،
8 پایه= Port B ) و 6 پایهء دیگر پایه های کنترل و تغذیه هستند .
CPU از نوع RICK بوده و دارای 35 دستوالعمل تک کلمه ای است.(35 دستور اسمبلی)
ورودی کلاک (فرکانس کریستال ) حداکثر تا MHZ 20 باشد .
فرکانس کلاک داخلی برابر یک چهارم فرکانس کریستال می باشد .
جریان بالای خروجی برای راه اندازی مستقیم LED و سون سگمنت . در حالتی که جریان بدهد 20 میلی آمپر و در حالی که جریان بکشد 25 میلی آمپر .
جریان مصرفی توسط آی سی 1.8میلی آمپر است که در حالت کاهش توان به 7 میکروآمپر میرسد .
یک تایمر (شمارنده) 8 بیتی که هم می تواند به صورت تایمر آزاد مورد استفاده قرار گیرد و هم به صورت WDT
(Watch Dog Timer تایمر سگ نگهبان که می تواند بعد از مدت زمان مشخصی مدار را ریست کند که دارای کلاک جدا است )
در ضمن دراین نوع میکروکنترلرها از معماری هاروارد(Harvard) استفاده شده است. در این نوع معماری بر خلاف معماری فون نیومن (Von Neumann) که از یک حافظه برای داده ها و برنامه استفاده میکند ، از دو بخش برای این کار استفاده شده . مزیت این معماری این است که میتوان به هر دو بخش حافظه در یک دستورالعمل دسترسی داشت .
حافظه برنامه از نوع Flash می باشد که دارای سرعت نسباتا خوبی می باشد و حجم آن 1k می باشد. که هر دستور العمل 14 بیت پهنا دارد .این حافظه را حداقل 1000 بار میتوان پاک کرد و از نو نوشت . برنامه اصلی در این قسمت قرار داده می شود .
حافظه داده به دو بخش RAM و EEPROM تقسیم میشود .
میزان RAM قابل استفاده برای کاربر 51 بایت میباشد (در کل 68 بایت می باشد) . که هم میتواند به صورت 8 و هم 16 بیتی مورد استفاده قرار بگیرد . Ram از 2 بانک 0 و 1 تشکیل شده که رجیسترها و ram کاربر را در بر میگیرد .
ممکن است که بعضی از رجیسترها در هر دو بانک باشند که این به علت دسترسی سریعتر و کاهش کد برنامه است .
میزان EEPROM قابل استفاده 68 بایت میباشد و قابلیت 10 ملیون بارخواندن و نوشتن دارد و
اطلاعات آن تا 40 سال محفوظ می ماند.
مسیر داده ها 8 بیتی بوده .
ترتیب پایه ها به صورت زیر می باشد :

[
mc4y0y.gif

**** توضیحات:
پایه 3، (RA4) هم بیت چهارم پورتA می باشد و هم پایه مربوط به کلاک خارجی تایمر میکروکنترلر .
پایه 4 ،(MCLR) پایه ریست می باشد که فعال به صفر می باشد .
پایه 5 ، برای تغذیه منفی می باشد که به زمین وصل می شود .
پایه 6 ، (RB0/INT) هم بیت صفر از پورت B میباشد و هم مربوط به وقفه خارجی .
پایه 12 ،(RB6) در هنگام برنامه ریزی میکروکنترلر ، به عنوان پایه CLOCK میباشد .
پایه 13 ،(RB7) در هنگام برنامه ریزی به عنوان DATA میباشد .
پایه 14، (VDD) تغذیه مثبت می باشد و به 5 ولت وصل می شود.
پایه های OSC1 و OSC2 برای اتصال به یک نوسانساز است .
 

belphi122

کاربر تازه وارد
تاریخ عضویت
19 می 2006
نوشته‌ها
23
لایک‌ها
0
محل سکونت
shiraz
با سلام خدمت دوستان.
بهتر نیست زودتر آموزش شروع بشه .
 

belphi122

کاربر تازه وارد
تاریخ عضویت
19 می 2006
نوشته‌ها
23
لایک‌ها
0
محل سکونت
shiraz
من تازه به شروع یادگرفتن pic basic pro کردم.و در مورد hnterrupt ها مشکل دارم. اگه کسی کمک بکنه ممنون میشم.
در ضمن اگه کسی قصد شروع کردن نداره من شروع کنم.
 

afshin_electronic

Registered User
تاریخ عضویت
16 آگوست 2005
نوشته‌ها
1,112
لایک‌ها
1
جناب chia كه قرار بود آموزش رو شروع كنه به دلايل نامشخص مدت هاست كه ديگه اين طرفا سر نمي زنه ...

يا بايد يكي ديگه مسئوليت آموزش رو به عهده بگيره .. يا اينكه بيخيال ديگه ...


راستي من CCS رو پيشنهاد ميكنم كه به جاي basic بريد دنبالش....
 

afshin_electronic

Registered User
تاریخ عضویت
16 آگوست 2005
نوشته‌ها
1,112
لایک‌ها
1
شما وقتی میگی باید خودم دست به کار بشم بهتره که واقعا این کار رو بکنید . نه اینکه مطالب رو از یه وبلاگ کپی کنید اینجا و به اسم خودتون بزنید .

شما یادتون رفت منبع رو ذکر کنید .
اما من جای شما این کار رو انجام می دم

http://micro-pic.persianblog.com
که حالا شده
www.ir-micro.com

زياد جوش نزن ... براي قلبت خوب نيست ... (شوخي)
grin.gif


از بابت سايت هم ممنون ... خيلي خوشم اومد ...

راستي شما منبعي فارسي براي آموزش CCS سراغ نداري؟؟
 

belphi122

کاربر تازه وارد
تاریخ عضویت
19 می 2006
نوشته‌ها
23
لایک‌ها
0
محل سکونت
shiraz
سلام دوست عزیز.
این ccs که میگی چی هست؟ میتونی بیشتر راجبش توضیح بدی.:D
 

afshin_electronic

Registered User
تاریخ عضویت
16 آگوست 2005
نوشته‌ها
1,112
لایک‌ها
1
به نقل از belphi122 :
سلام دوست عزیز.
این ccs که میگی چی هست؟ میتونی بیشتر راجبش توضیح بدی.:D
يه چيزيه مثل همون qbasic براي برنامه ريزي PIC ..در واقع زبان برنامه نويسي C براي PIC كه خيلي روون تر و قدرتمند تره .. بيشتر از اوني كه فكرشو بكني ..

من هنوز منبع فارسي براي CCS نديدم و كتابي در رابطه با اون هنوز ترجمه نشده ( تا اونجايي كه من مي دونم )...

گفتم كه شايد دوستان منبعي فارسي براي CCS بشناسند .!!!!
 

belphi122

کاربر تازه وارد
تاریخ عضویت
19 می 2006
نوشته‌ها
23
لایک‌ها
0
محل سکونت
shiraz
سلام افشین جان.
ببین شما مرجع انگلیسی زبان C برای pic سراغ دارید. اگه سراغ دارید لینکشو بذارید.
یه نفر میگفت کتاب زبان c عین ا.. قمی کتاب خوبی هست حالا نمی دونم برای pic هست یا نه.
 

micro-pic

کاربر تازه وارد
تاریخ عضویت
3 می 2006
نوشته‌ها
7
لایک‌ها
0
محل سکونت
tehran
به نقل از afshin_electronic :
زياد جوش نزن ... براي قلبت خوب نيست ... (شوخي)
grin.gif


از بابت سايت هم ممنون ... خيلي خوشم اومد ...

راستي شما منبعي فارسي براي آموزش CCS سراغ نداري؟؟

جوش نمی زنم . فقط خواستم اگه مطلبی قراره آموزش داده بشه جدید باشه . نه اینکه تکراری . اگر اسم سایت رو هم گفتم واسه این بود که این دوستمون باقیشو از خودش بزاره . چون مسلما طرز بیان 2 نفر با هم فرق داره و تو یاد گیری هم خیلی بهتره .
من تو سایت خودم حدود 2 ماه دیگه ( بعد از کنکورم ) سعی می کنم آموزش کامل pic رو بزارم . البته کامل که نمیشه گفت چون pic خیلی بیشتر از این حرفا کار داره . اما نسبت به کتابایی که واسش ترجمه شده خیلی کامل تر هست .
:blink:
در مورد ccs هم چیزه درست حسابی ندیدم . یعنی کلا در مورد برنامه نویسی c . اما اگه دنبال همچین چیزایی هستی بهتره الان تو شرکت ها یا موسسه های آموزشی دنبالش باشی . چون اول تو اینا میاد و اموزش داده میشه و بعد کم کم کتابایی واسش ترجمه یا تالیف میشه :)
اما شما بیسیک رو هم دست کم نگیر و به همین کتابای فارسی اکتفا نکن . چون این کتابا حتی 10% قدرت pic basic رو هم نمایش ندادند وفقط جنبه نمایشی دارن .
 

belphi122

کاربر تازه وارد
تاریخ عضویت
19 می 2006
نوشته‌ها
23
لایک‌ها
0
محل سکونت
shiraz
با سلام
شما برای یادگیری زبان بیسبک از چه منبعی استفاده کردید اگه منبعتون را معرفی کنید ممنون میشم چون این کتابهای ترجمه شده خوب توضیح ندادند وهمونطور که گفتید ناقص هستند.
ضمنا من در مورد وقفه ها بخصوص وقفه تایمر ایراد دارم . اگه امکان داره کار با وقفه تایمر را توضیح بدید.
با تشکر.
 

micro-pic

کاربر تازه وارد
تاریخ عضویت
3 می 2006
نوشته‌ها
7
لایک‌ها
0
محل سکونت
tehran
به نقل از belphi122 :
با سلام
شما برای یادگیری زبان بیسبک از چه منبعی استفاده کردید اگه منبعتون را معرفی کنید ممنون میشم چون این کتابهای ترجمه شده خوب توضیح ندادند وهمونطور که گفتید ناقص هستند.
ضمنا من در مورد وقفه ها بخصوص وقفه تایمر ایراد دارم . اگه امکان داره کار با وقفه تایمر را توضیح بدید.
با تشکر.

یه چند تا ebook دارم . باید سر فرصت آپلود کنم تا بشه لینکش رو بزارم . اما در مورد وقفه ، احتمالا شما از پروتئوس واسه شبیه سازی استفاده میکنی . چون پروتئوس با وقفه و اسیلاتور داخلی مشکل داره و به خوبی عمل نمیکنه . ( 6.7 sp3 )
حالا یه برنامه واسه تایمر1 هست که بد نیست واسه کار :​


کد:
    	symbol LED = PORTD.0
    	Brojac var byte
    	TRISB=%00000000
    	T1CON=%00000001
    	PIR1.0=0	
    	PIE1= %00000001
    	Brojac = 0
    	PORTD = 0	              
        On Interrupt Goto ISR
    	INTCON =  %11000000
Main:
    	if Brojac = 152 then
        toggle LED
        Brojac = 0
    	Endif
    	goto Main
    	Disable
ISR:
    	Brojac = Brojac + 1
    	PIR1.0 = 0
    	Resume
    	Enable
	    End



اینم واسه تایمر0 هست :​
کد:
symbol LED = PORTB.1
    	brojac var byte
    	TRISB = 0
    	PORTB = 0              
    	INTCON = %00100000
    	OPTION_REG = %10000100
    	brojac = 0
    	TMR0 = 96

    	On Interrupt Goto ISR
    	INTCON =  %10100000de
Main:
    	if brojac = 200 then
 	  	toggle LED
       	brojac = 0
   	    endif
    	goto Main
    	Disable
ISR:
    	brojac = brojac + 1
    	TMR0 = 96
    	INTCON.2 = 0
    	Resume
    	Enable
        End


در ضمن اگه می خوای واقعا با امکانات pic آشنا بشی بهتره دیتا شیت ها رو بخونی :happy:​
 

afshin_electronic

Registered User
تاریخ عضویت
16 آگوست 2005
نوشته‌ها
1,112
لایک‌ها
1
به نقل از belphi122 :
سلام افشین جان.
ببین شما مرجع انگلیسی زبان C برای pic سراغ دارید. اگه سراغ دارید لینکشو بذارید.
یه نفر میگفت کتاب زبان c عین ا.. قمی کتاب خوبی هست حالا نمی دونم برای pic هست یا نه.
نه اين كتابي كه ميگي براي pic نيست.... آموزش خود C هست
 

afshin_electronic

Registered User
تاریخ عضویت
16 آگوست 2005
نوشته‌ها
1,112
لایک‌ها
1
به نقل از micro-pic :
جوش نمی زنم . فقط خواستم اگه مطلبی قراره آموزش داده بشه جدید باشه . نه اینکه تکراری . اگر اسم سایت رو هم گفتم واسه این بود که این دوستمون باقیشو از خودش بزاره . چون مسلما طرز بیان 2 نفر با هم فرق داره و تو یاد گیری هم خیلی بهتره .
من تو سایت خودم حدود 2 ماه دیگه ( بعد از کنکورم ) سعی می کنم آموزش کامل pic رو بزارم . البته کامل که نمیشه گفت چون pic خیلی بیشتر از این حرفا کار داره . اما نسبت به کتابایی که واسش ترجمه شده خیلی کامل تر هست .
:blink:
در مورد ccs هم چیزه درست حسابی ندیدم . یعنی کلا در مورد برنامه نویسی c . اما اگه دنبال همچین چیزایی هستی بهتره الان تو شرکت ها یا موسسه های آموزشی دنبالش باشی . چون اول تو اینا میاد و اموزش داده میشه و بعد کم کم کتابایی واسش ترجمه یا تالیف میشه :)
اما شما بیسیک رو هم دست کم نگیر و به همین کتابای فارسی اکتفا نکن . چون این کتابا حتی 10% قدرت pic basic رو هم نمایش ندادند وفقط جنبه نمایشی دارن .
مرسي .. من هم از همين آموزشگاه ها با CCS آشنا شدم .. البته وقت نداشتم و دنباش رو نگرفتم و الان هم پشيمونم ....

راستي شما در چه مقطعي هستي ؟؟!! منظورت از كنكور ، ارشد بود ديگه!!
biggrin.gif
 

hamun

کاربر تازه وارد
تاریخ عضویت
3 می 2006
نوشته‌ها
76
لایک‌ها
1
سن
38
محل سکونت
karaj
سلام دوستان
من تازه به شما ملحق شدم امیدارم که مفید باشم
-------
من e-book کامل برای آموزش C برای pic ها دارم که زبان اصلی ولی خیلی ساده است اگه دوست داشتید بهم
میل بزنید تا براتون بفرستم

bye
 
بالا