PICDEM Z Programmierung: versteh Teil-Programm nicht

Gast #1802234
Lesenswert?

Hallo, Ich bin leider ein C-Anfänger, daher hoffe ich auf Hilfe. Ich 
habe das Picdem z (Zigbee) Board (PIC18f4620) und versuche gerade das 
Demoprogramm zu verstehen. Ich hänge aktuell an dem folgenden 
Programmteil fest:


Eingebunden durch Header-Dateien:

#define ConsoleIsGetReady()   (PIR1bits.RCIF)
----------------------------------------------------
BYTE ConsoleGet(void)
{
    // Clear overrun error if it has occured
    // New bytes cannot be received if the error occurs and isn't 
cleared

    if(RCSTAbits.OERR)
    {
        RCSTAbits.CREN = 0;   // Disable UART receiver
        RCSTAbits.CREN = 1;   // Enable UART receiver
    } return RCREG
-------------------------------------------------------------------
void ConsolePut(BYTE c)
{
    while( !ConsoleIsPutReady() );
    TXREG = c;
}

---------------------------------------------------
void ConsolePutROMString(ROM char* str)
{
    BYTE c;

    while( c = *str++ )
        ConsolePut(c);

    // Since this function is mostly for debug, we'll block here to make 
sure
    // the last character gets out, in case we have a breakpoint on the
    // statement after the function call

---------------------------------------
.
.
Programmteil:

BYTE GetHexDigit( void )
{
    BYTE    c;

    while (!ConsoleIsGetReady());
    c = ConsoleGet();
    ConsolePut(c);

    if (('0' <= c) && (c <= '9'))
        c -= '0';
    else if (('a' <= c) && (c <= 'f'))
        c = c - 'a' + 10;
    else if (('A' <= c) && (c <= 'F'))
        c = c - 'A' + 10;
    else
        c = 0;

    return c;
}



BYTE GetMACByte( void )
{
    BYTE    oneByte;

    //ConsolePutROMString( (ROM char * const) "\r\n\r\nEnter last MAC 
byte in hex: " );
    oneByte = GetHexDigit() << 4;
    oneByte += GetHexDigit();
    //ConsolePutROMString( (ROM char * const) "\r\n\r\n" );

    return oneByte;
}

-----------------------------

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren