Shahariar Hossain
/
STM32TextLCD_HelloWorld
20x4 LCD with SRM32F407
Diff: main.cpp
- Revision:
- 3:15d08fd609ec
- Parent:
- 2:ad0b044d0a10
diff -r ad0b044d0a10 -r 15d08fd609ec main.cpp --- a/main.cpp Sat Dec 04 11:31:07 2010 +0000 +++ b/main.cpp Mon Jan 13 04:36:25 2020 +0000 @@ -3,8 +3,54 @@ #include "mbed.h" #include "TextLCD.h" -TextLCD lcd(p15, p16, p17, p18, p19, p20); // rs, e, d4-d7 +TextLCD lcd(PC_15, PC_13, PC_14, PE_6, PE_4, PE_2,TextLCD::LCD20x4); // rs, e, d4-d7 +AnalogIn adcPB0(PB_0); +AnalogIn adcPB1(PB_1); +AnalogOut dacPA5(PA_5); +DigitalIn buttonPA0 (PA_0); +DigitalIn extbutton1PE5 (PE_5); +DigitalIn extbutton2PE3 (PE_3); +DigitalOut rLED(PD_14); // on board red LED, DO +DigitalOut bLED(PD_15); // on board blue LED. DO +DigitalOut gLED(PD_12); // on board green LED, DO +DigitalOut oLED(PD_13); // on board orange LED, DO + +DigitalOut exRef(PE_7); // on board orange LED, DO + + + +uint32_t adcval=0; +uint16_t val=0; + int main() { - lcd.printf("Hello World!\n"); + dacPA5=0.0f; + extbutton1PE5.mode(PullUp); + extbutton2PE3.mode(PullUp); + exRef=1; + + while(1) + { + lcd.cls(); + lcd.printf("mbed with STM32F407G"); + lcd.printf(" !! It Worked !!\n"); + if(dacPA5<1.00f) + dacPA5 = dacPA5+0.002442f; + adcval=0; + for(int i=0;i<4096;i++) + { + adcval= adcval + 4095*adcPB1.read_u16()/65535; // 12 bit value + } + val=adcval/4096; + lcd.printf(" ADC on PB1: %d\n", val); + lcd.printf("AREF Volts: %f",(2.9464*val/4095)); + wait(.25); + rLED =extbutton1PE5.read(); + bLED =extbutton2PE3.read(); + gLED =!extbutton1PE5.read(); + oLED =!extbutton2PE3.read(); + while(buttonPA0) + {} + + } }