Connect with us

Blinking LED with C18

Discussion in 'Electronic Basics' started by Abstract Dissonance, Mar 10, 2006.

Scroll to continue with content
  1. I'm trying to blink an LED using C18 in MPLAB but the code doesn't work for
    some reason. It is the exact code that came from one of there examples...
    but the LED doesn't blink or even come on. I tried doing some other stuff
    but it didn't work either(and I commented it out).

    I can't understand why this code doesn't work since "they" created but it
    doesn't. I was able to make the 16F688 blink using assembly but I'm trying
    to get it done in C with the 18F2455.

    Anyone see why this isn't working?



    #include <p18f2455.h>

    #pragma config WDT = OFF

    void delay (void)
    int i;

    for (i = 0; i < 10000; i++)


    void main (void)
    /* Make all bits on the Port B (LEDs) output bits.
    * If bit is cleared, then the bit is an output bit.

    //ADCON0 = 0;
    // ADCON1 = 0x6;
    TRISB = 0;
    // TRISA = 0;
    // TRISC = 0;

    while (1)
    /* Reset the LEDs */
    // PORTA = 0;
    PORTB = 0;
    // PORTC = 0;

    /* Delay so human eye can see change */
    delay ();

    /* Light the LEDs */
    // PORTA = 0xFF;
    PORTB = 0xFF;
    // PORTC = 0xFF;

    /* Delay so human eye can see change */
    delay ();
  2. BrunoG

    BrunoG Guest

    try to add :

    ADCON1 = 0x0E ;

    to configure RB0..4 as digital I/O pins

    check also extended instruction flag bit in configuration registers, this is
    a common issue migrating from p16 to p18


  3. "delay()" . What delay is that?.
Ask a Question
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.
Electronics Point Logo
Continue to site
Quote of the day