9 years, 1 month ago.

I am trying to toggle D1 pin, but it remains low only, how to toggle pin D1 ?

  1. include "mbed.h"

DigitalOut myled(LED1);

DigitalOut LCD_D0(D0); DigitalOut LCD_D1(D1); DigitalOut LCD_D2(D2); DigitalOut LCD_D3(D3); DigitalOut LCD_D4(D4); DigitalOut LCD_D5(D5); DigitalOut LCD_D6(D6); DigitalOut LCD_D7(D7); DigitalOut LCD_D8(D8); DigitalOut LCD_D9(D9); DigitalOut LCD_D10(D10); DigitalOut LCD_D11(D11); DigitalOut LCD_D12(D12); DigitalOut LCD_D13(D13); DigitalOut LCD_D14(D14); DigitalOut LCD_D15(D15);

int main() { while(1) { myled = 1; LED is ON wait(0.2); 200 ms myled = 0; LED is OFF wait(1.0); 1 sec

LCD_D2 = 1; D2 = 1 LCD_D1 = 1; D1 = 1 wait(3); 3 sec LCD_D2 = 0; D2 = 0 LCD_D1 = 0; D1 = 0 wait(3); 3 sec } }

above code toggles D2 but not D1, D1 remains low, how to toggle pin D1? same is the case for D0

Question relating to:

2 Answers

9 years, 1 month ago.

If I recall correctly D0 and D1 are by default not connected. You can see if the Nucleo manual says something about it.

Accepted Answer
9 years, 1 month ago.

You must use "<<code>> and <</code>>" tags to make your program readable on this forum...

#include "mbed.h" 

DigitalOut myled(LED1);

DigitalOut LCD_D0(D0); 
DigitalOut LCD_D1(D1); 
DigitalOut LCD_D2(D2); 
DigitalOut LCD_D3(D3); 
DigitalOut LCD_D4(D4); 
DigitalOut LCD_D5(D5); 
DigitalOut LCD_D6(D6); 
DigitalOut LCD_D7(D7); 
DigitalOut LCD_D8(D8); 
DigitalOut LCD_D9(D9); 
DigitalOut LCD_D10(D10);
DigitalOut LCD_D11(D11); 
DigitalOut LCD_D12(D12); 
DigitalOut LCD_D13(D13); 
DigitalOut LCD_D14(D14); 
DigitalOut LCD_D15(D15);

int main() 
{ 
  while(1) 
  { 
    myled = 1;  // LED is ON 
    wait(0.2);    //200 ms 
    myled = 0; //LED is OFF 
    wait(1.0);   //1 sec

    LCD_D2 = 1; 
    LCD_D1 = 1; 
    wait(3);  
    LCD_D2 = 0; 
    LCD_D1 = 0; 
    wait(3); 
  } 
}

It have to works...