PIC18F4620

P

planet69

Guest
मैं काम करने के लिए समस्या हो रही PIC18F4620 कर
रहा हूँ.
मैं
एक परीक्षण कार्यक्रम की आंतरिक थरथरानवाला 8MHz PLL के साथ करने के लिए सेट का उपयोग कर भाग गया
है सक्षम होना चाहिए.
मैं हर 100ľs बीच
में Timer2 निर्धारित किया है.
अभी यह परीक्षण करने के लिए,
मैं टॉगल करने के लिए RB0, RC0, RD0 निर्धारित
किया है.यह पहला शक्ति अप पर काम किया, लेकिन बाद की कोशिश की पर असफल रहे.

कृपया मदद करते हैं.मैं विन्यास सेटिंग गलत है.भी MPLAB सिम्युलेटर 'कोर-E0001 देकर: प्रवाह त्रुटि पर stack असफल अनुदेश से 0x00004e'
में हुआ

रजिस्टर विन्यास
CCS का उपयोग
कोड:
INTRC_IO, NOFCMEN, NOIESO, डालो, BROWNOUT, BORV43, NOWDT, WDT1, CCP2C1, NOPBADEN, LPT1OSC, NOMCLR, STVREN, NOLVP, NOXINST, NODEBUG, NOPROTECT, NOCPB, NOCPD, NOWRT, NOWRTC, NOWRTB, NOWRTD, NOEBTR, NOEBTRB
OSCTUNE = 0b01000000; / / आंतरिक PLL

= 0b01110000 / / OSCCON; / / osc आंतरिक, 8MHz चुनें

IRCF2 = 1;

IRCF1 = 1;

IRCF0 = 1;

= 0b11011100 / / RCON; / /, Bor सक्षम प्राथमिकता अंतरायन

IPEN = 1;

SBOREN = 1;

= 0b00000000 / / STKPTR;

/ / दर्जा = 0b00000000;

/ / = 0b00000000 EECON1;ADCON0 = 0b00000000;

ADCON1 = 0b00001111; / / सब ए / डी डिजिटल बंदरगाह के रूप में स्थापित

ADCON2 = 0b00000000;

TRISA = 0b00000000; / / सब आउटपुट

TRISB = 0b00000000; / / सब आउटपुट

TRISC = 0b00000000; / / सब आउटपुट

TRISD = 0b00000000; / / सब आउटपुट

TRISE = 0b00000000; / / सब आउटपुट

Porta = 0b00000000; / / initialize बंदरगाह डिफ़ॉल्ट उत्पादन राज्य

PORTB = 0b00000000;

PORTC = 0b00000000;

PORTD = 0b11111111;

PORTE = 0b00000111;T0CON = 0b01001000; / / सौंपा नहीं prescale, TMRO रोक, 8 बिट

T1CON = 0b01000000;

T2CON = 0b00000000;

T3CON = 0b00000000;CCP2CON = 0b00000000;

CCP1CON = 0b00000000;

= 0b00000000 / / PWM1CON; / /

= 0b00000000 / / ECCP1AS;

/ / SSPSTAT = 0b00000000;

SSPCON1 = 0b00000000;

/ / SSPCON2 = 0b00000000;

TXSTA = 0b00000000;

RCSTA = 0b00000000;

BAUDCON = 0b00000000;

= 0b00000111 / / CMCON;

= 0b00000000 / / CVRCON;

= 0b00000101 / / HLVDCON;

= 0b00000000 / / WDTCON;INTCON = 0b10000000; / / उच्च एवं अक्षम कम प्राथमिकता, बीच में अक्षम TMR0 आंतरायन सक्षम

INTCON2 = 0b10000000; / / PORTB pullups निष्क्रिय, TMR0 कम प्राथमिकता सेट

INTCON3 = 0b00000000;

/ / = 0b00000000 PIR1;

/ / PIR2 = 0b00000000;

PIE1 = 0b00000010; / / आंतरायन TMR2 सक्षम

/ / PIE2 = 0b00000000;

IPR1 = 0b00000010; / / TMR2 उच्च प्राथमिकता अंतरायन

/ / IPR2 = 0b00000000;
PR2 = 199; / / इनिशियलाइज़ 1000ľs के लिए

T2CON = 0b00000001; / / 1:1 postscale, 1:4 prescale

TMR2ON = 1;

 
एक परियोजना के लिए हाय, Im का उपयोग कर 18F4620 अभी, यहाँ अपने init है.कोड, पूरी तरह से काम करता है:
कोड:

= 0b01110000 / / OSCCON;

= 1 / / PLLEN; आंतरिक OSC (8 * 4 = 32MHz के लिए) / / uncomment

/ / जबकि (! IOFS); आंतरिक oscilaotr आवृत्ति के लिए / / रुको को स्थिर करने के लिए

/ / पोर्ट बी

PORTB = 0x00;

LATB = 0x00;

TRISB = 0x00; / / RB0 .. RB7 - Outputs

/ / पोर्ट सी

PORTC = 0x36;

LATC = 0x36;

TRISC = 0xC0; / / RC0 .. RC5 - Outputs, RC6 .. RC7 - निविष्टियाँ

/ / पोर्ट डी

PORTD = 0x00;

LATD = 0x00;

TRISD = 0x00;

/ / पोर्ट ई

PORTE = 0x00;

= 0x00 स्वर्गीय;

TRISE = 0x08; / / RE0 .. RE2 - Outputs, RE3 - इनपुट

/ / COMP

CMCON = 0b00110110;

/ / पोर्ट एक

Porta = 0x00;

लता = 0x00;

TRISA = 0x83; / / RA2 .. RA6 - Outputs, RA0 .. RA1, RA7 - निविष्टियाँ

delay_us (10);

# asm

MOVF CMCON, एफ

# endasm

/ / घड़ी 0 / / equel अंतराल में TSL ऑप्टिकल सेंसर के discret पढ़ने के लिए उपयोग किया

T0CON = 0b11000110; / /, 1:128 prescaller, चरण = 10.7us @ 48MHz साथ ,8-सा सक्रिय, अतिप्रवाह = 2730,7 हमें

/ / घड़ी 1 / / रूका

/ / घड़ी 2 / / रूका

/ / घड़ी 3 / / रूका

/ / CCP1 / / निष्क्रिय

/ / CCP2 / / निष्क्रिय

/ / MSSP / / निष्क्रिय

/ / EUSART

/ / # का उपयोग rs232 (बॉड = 128000, समता = एन, xmit = PIN_C6, rcv = PIN_C7, बिट = 8)

/ / ADC

ADCON0 = 0b00000001;

ADCON1 = 0b00001101;

ADCON2 = 0b10010110;

/ / Vref

CVRCON = 0b10001000;

/ / HLVD / / निष्क्रिय
 
मैं उसे अगले ही दिन काम मिल गया.
यह कैसे तुच्छ कुछ ग़लतियाँ हो सकती है अद्भुत है.मुझे मूर्ख असली.
वैसे भी धन्यवाद!

 

Welcome to EDABoard.com

Sponsor

Back
Top