میکرو 16F873A با کریستال 4Mبه خوبی کار میکند اما با کریستال 20M نه. تو نرم افزار PICBASIC هم از دستور انتخاب نوع اوسیلاتور استفاده میکنم (DEFINE OSC 20)اما بازم جواب نگرفتم.مشتکل تغذیه هم مطلقا ندارم.بزرگان کمک کنند.پروگرامر از pickit2استفاده میکنم.در مورد تنظیمات اوسیلاتور خارجی هم چیزی تو منوی نرم افزار پروگرامر پیدا نکردم.
اطلاعیه
Collapse
No announcement yet.
مشکل با کریستال 20M در میکرو 16F873A
Collapse
X
-
پاسخ : مشکل با کریستال 20M در میکرو 16F873A
بسم الله الرحمن الرحیم
السّلامُ علیکَ ایُّها العبدُ الصّالحُ المطیعُ للهِ وَ لِرسولهِ و لِأمیرِلمومنینَ وَ الحسنِ و الحسینِ صلّی اللهُ علیهم. السلام علیک یا ابالفضل العباس
نوشته اصلی توسط leaderتو نرم افزار PICBASIC هم از دستور انتخاب نوع اوسیلاتور استفاده میکنم ....
خیلی خوشحالم که بالاخره یکی را ملاقات کردم که از BasicPro استفاده می کند.
همانطور که صد البته می دانید :
انتخاب نوع کریستال و فرکانس کار یک دستور اسمبلی است. و ارتباطی به کمپایلر و پروگرامر ندارد. بسته به اینکه شما چه اسمبلری استفاده می فرمائید ، دستورات اسمبلی شکل نگارش [Format] متفاوتی دارند.
دو تا اسمبلر برای محیط کامپایلر BasicPro هست یکی اسمبلر PM که پیش فرض برنامه کمپایلر است ، حدس می زنم که شما هم از همین اسمبلر استفاده می کنید. (البته من خودم شخصا از همین اسمبلر "باقلوا صفت" استفاده می کنم . ) در اینجا کریستال 20 مگاهرتز اینجوری تعریف می شود . من فکر کنم خط اول کد زیر را ندارید .
کد:@ device hs_osc define osc 20
اسمبلر بعدی MPASM از شرکت میکروچیپ است. که شکل نگارش دستورات در آن به گونه ای دیگر است :
کد:@ __config _INTRC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_ON & _MCLRE_OFF & _BODEN_ON & _LVP_OFF & _CP_ALL & _DATA_CP_ON
اگر مشکل تان حل نشد ، زحمت بکشید تمام سورس کد تان را قرار دهید
لطفاً برای استفاده معنوی دیگران ، نتیجه کارتان را به اشتراک بگذارید.
با هم موافق باشیموالسلام علی من اتبع الهدی .... و درود بر کسانی که راه هدایت را دنبال می کنند.
هوشمندانه بپرسید...
-
پاسخ : مشکل با کریستال 20M در میکرو 16F873A
استاد اصغریان از لطف جنابعالی بینهایت سپاسگزارم. متاسفانه عجله داشتم مجبور شدم دنبال علت بگردم جواب هم گرفتم.راحل شما رو هم امتهان کردم اونم جواب داد. بنده قبلا از ICPROG استفاده میکردم که انتخاب نوع اوسیلاتور مشکل نبود.اما حالا از پروگرامر PICKIT2استفاده میکنم.که باسیتی جهت تغییرات در فیوزبیتهای میکرو باید در قسمت COnfigتغییرات لازم را باتوجه به نوع میکرو اعمال کنیم مثلا:
bit 13 CP: Flash Program Memory Code Protection bit
1= Code protection off
0= All program memory code-protected
bit 12 Unimplemented: Read as ‘1’
bit 11 DEBUG: In-Circuit Debugger Mode bit
1= In-Circuit Debugger disabled, RB6 and RB7 are general purpose I/O pins
0= In-Circuit Debugger enabled, RB6 and RB7 are dedicated to the debugger
bit 10-9
WRT1:WRT0 Flash Program Memory Write Enable bits
11= Write protection off; all program memory may be written to by EECON control
10= 0000h to 00FFh write-protected; 0100h to 0FFFh may be written to by EECON control
01= 0000h to 03FFh write-protected; 0400h to 0FFFh may be written to by EECON control
00= 0000h to 07FFh write-protected; 0800h to 0FFFh may be written to by EECON control
bit 8
CPData EEPROM Memory Code Protection bit
1= Data EEPROM code protection off
0= Data EEPROM code-protected
bit 7
LVP: Low-Voltage (Single-Supply) In-Circuit Serial Programming Enable bit
1= RB3/PGM pin has PGM function; low-voltage programming enabled
0= RB3 is digital I/O, HV on MCLR must be used for programming
bit 6
BOREN: Brown-out Reset Enable bit
1= BOR enabled
0= BOR disabled
bit 5-4
Unimplemented:Read as ‘1’
bit 3
PWRTEN: Power-up Timer Enable bit
1= PWRT disabled
0= PWRT enabled
bit 2
WDTEN: Watchdog Timer Enable bit
1= WDT enabled
0= WDT disabled
bit 1-0
FOSC1:FOSC0: Oscillator Selection bits
11= RC oscillator
10= HS oscillator
01= XT oscillator
00= LP oscillatorOSC
دیدگاه
دیدگاه