This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Code not working on LPC2148 board

I bought an ARM LPC2148 Development board and started uploading code in it.  I wrote the code to blink the on-board 4 LEDs.  It gets uploaded successfully in the board but the LEDs never blink (leave alone the blinking according to the code).  I have rechecked the code again and again.  I am getting 0 V on the pins(P1.16, P1.17, P1.18, P1.19) to which the LEDs are connected.  I cannot figure out why this is happening.  Help!!

The code is:-

#include  <lpc214x.h> //Includes LPC2148 register definitions
#define LED1_ON() IO1SET=(1<<16) //Macro Functions to turn ON LED

#define LED2_ON() IO1SET=(1<<17)

#define LED3_ON() IO1SET=(1<<18)

#define LED4_ON() IO1SET=(1<<19)

#define LED1_OFF() IO1CLR=(1<<16) //Macro Functions to turn OFF LED

#define LED2_OFF() IO1CLR=(1<<17)

#define LED3_OFF() IO1CLR=(1<<18)

#define LED4_OFF() IO1CLR=(1<<19)

void  Delay(unsigned char j)    //This Function is used to cause delay between LED ON and OFF events

{

unsigned int  i;

for(;j>0;j--)

{

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

}

}

int  main(void)

{

PINSEL0 = 0x00000000; // Enable GPIO on all pins

PINSEL1 = 0x00000000;

PINSEL2 = 0x00000000;

IO1DIR = (1<<19) | (1<<18) | (1<<17) | (1<<16); // Set P1.16, P1.17, P1.18, P1.19 as Output
while(1)

{

  LED1_ON();

  Delay(25);

  LED1_OFF();

  LED2_ON();

  Delay(25);

  LED2_OFF();

  LED3_ON();

  Delay(25);

  LED3_OFF();

  LED4_ON();

  Delay(25);

  LED4_OFF();

}

return(0);

}

Parents
  • Have you tried doing your exercises on PORT0?

    In this LED sequencer, you may want to replace IO1SET, IO1CLR, and IO1DIR with IO0SET, IO0CLR, and IO0DIR respectively in your code (save the modification in a different project) and connect the separate LEDs to P0.16, P0.17, P0.18, P0.19. Try if the code will work, this will tell whether the problem is confined only to PORT1 or will also manifest on PORT0.

Reply
  • Have you tried doing your exercises on PORT0?

    In this LED sequencer, you may want to replace IO1SET, IO1CLR, and IO1DIR with IO0SET, IO0CLR, and IO0DIR respectively in your code (save the modification in a different project) and connect the separate LEDs to P0.16, P0.17, P0.18, P0.19. Try if the code will work, this will tell whether the problem is confined only to PORT1 or will also manifest on PORT0.

Children
No data