![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
Coursework
Diff: main.cpp
- Revision:
- 5:9b2c976ca318
- Parent:
- 4:167ce930c9d5
- Child:
- 6:f7f30e0e3bed
diff -r 167ce930c9d5 -r 9b2c976ca318 main.cpp --- a/main.cpp Wed Jan 05 16:52:47 2022 +0000 +++ b/main.cpp Wed Jan 05 20:09:15 2022 +0000 @@ -3,12 +3,12 @@ #include "N5110.h" #include "hcsr04.h" #include "Piezo.h" -// y x button +// y x button Joystick joystick(PTB10,PTB11,PTC16); HCSR04 sensor(D14, D15); Piezo Buzzer(PTC10); -// rows,cols +//rows,cols int sprite[8][5] = { { 0,0,1,0,0 }, { 0,1,1,1,0 }, @@ -18,106 +18,89 @@ { 1,1,1,1,1 }, { 1,1,0,1,1 }, { 1,1,0,1,1 }, -}; + }; //Test Void after research C++ lanuage 05/01/22 int cube(int num){ int result; result = num*num; return result; - }; + }; -N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); +N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); + int main() { - //initialise Joystick - joystick.init(); - // first need to initialise display - lcd.init(); - - // change set contrast in range 0.0 to 1.0 - // 0.5 appears to be a good starting point - lcd.setContrast(0.5); - // Buzzer.period(10.0f); - //Buzzer.pulsewidth(1); +//initialise Joystic + joystick.init(); + +//first need to initialise display + lcd.init(); + +//change set contrast in range 0.0 to 1.0 +//0.5 appears to be a good starting point + lcd.setContrast(0.5); + +//Buzzer.period(10.0f); +//Buzzer.pulsewidth(1); while(1) { - // Tune(Buzzer,So6,8); - //Stop_tunes(Buzzer); - Buzzer.play(200,120); - wait_ms(5); - Buzzer.play(200,120); +//Tune(Buzzer,So6,8); +//Stop_tunes(Buzzer); + Buzzer.play(200,120); + wait_ms(5); + Buzzer.play(200,120); long distanced = sensor.distance(); if (distanced >= 400 || distanced <= 2) - { + { printf("Out of range"); - // calling dummy function 05/01/22 +//Calling dummy function 05/01/22 int answer = cube(2); - printf("%f\n",answer); - + printf("%f\n",answer); wait(1.0); + } + else + { + printf("Distance : %d cm",distanced); + wait(1.0); // 1 sec } - - else - - { - printf("Distance : %d cm",distanced); - wait(1.0); // 1 sec - } - lcd.drawCircle(WIDTH/2,HEIGHT/2,distanced,FILL_BLACK); - lcd.refresh(); - wait(5.0); - // these are default settings so not strictly needed + lcd.drawCircle(WIDTH/2,HEIGHT/2,distanced,FILL_BLACK); +//lcd.refresh must be used to update the lcd Display + lcd.refresh(); + wait(5.0); +//these are default settings so not strictly needed lcd.normalMode(); // normal colour mode - lcd.setBrightness(0.5); // put LED backlight on 50% - + lcd.setBrightness(0.5); // put LED backlight on 50% lcd.clear(); lcd.printString("Hello, World!",0,0); Vector2D coord = joystick.get_coord(); lcd.refresh(); - printf("Coord = %f,%f\n",coord.x,coord.y); char buffer[14]; Vector2D mapped_coord = joystick.get_mapped_coord(); printf("Mapped coord = %f,%f\n",mapped_coord.x,mapped_coord.y); - int length = sprintf(buffer,"T = %2f",coord.x); - // it is important the format specifier ensures the length will fit in the buffer + int length = sprintf(buffer,"T = %2f",coord.x); +//it is important the format specifier ensures the length will fit in the buffer if (length <= 14) // if string will fit on display (assuming printing at x=0) - lcd.printString(buffer,0,1); // display on screen + lcd.printString(buffer,0,1); // display on screen lcd.refresh(); - - - - lcd.clear(); - // times by 50 to try get the point moving across screen + lcd.clear(); +//times by 50 to try get the point moving across screen float x50 = mapped_coord.x*5; float y50 = mapped_coord.y*8; - // to see what the values are - printf(" *50 = %f,%f\n",x50,y50); - // - // example of how to draw circles +//to see what the values are + printf(" *50 = %f,%f\n",x50,y50); +//example of how to draw circles lcd.printChar('o',WIDTH/2,HEIGHT/2); - lcd.refresh(); - - + lcd.refresh(); float mag = joystick.get_mag(); float angle = joystick.get_angle(); printf("Mag = %f Angle = %f\n",mag,angle); - Direction d = joystick.get_direction(); printf("Direction = %i\n",d); - if (joystick.button_pressed() ) { printf("Button Pressed\n"); } - - - - } } - - - - - + \ No newline at end of file