First Draft, serial print change based on distance

Committer:
liam94
Date:
Sat Dec 04 17:15:09 2021 +0000
Revision:
0:506531d0531c
Child:
1:a1795335ef8c
1st Draft

Who changed what in which revision?

UserRevisionLine numberNew contents of line
liam94 0:506531d0531c 1 #include "mbed.h"
liam94 0:506531d0531c 2 #include "ultrasonic.h"
liam94 0:506531d0531c 3 #include "N5110.h"
liam94 0:506531d0531c 4
liam94 0:506531d0531c 5 // rows,cols
liam94 0:506531d0531c 6 int sprite[8][5] = {
liam94 0:506531d0531c 7 { 0,0,1,0,0 },
liam94 0:506531d0531c 8 { 0,1,1,1,0 },
liam94 0:506531d0531c 9 { 0,0,1,0,0 },
liam94 0:506531d0531c 10 { 0,1,1,1,0 },
liam94 0:506531d0531c 11 { 1,1,1,1,1 },
liam94 0:506531d0531c 12 { 1,1,1,1,1 },
liam94 0:506531d0531c 13 { 1,1,0,1,1 },
liam94 0:506531d0531c 14 { 1,1,0,1,1 },
liam94 0:506531d0531c 15 };
liam94 0:506531d0531c 16
liam94 0:506531d0531c 17 // VCC,SCE,RST,D/C,MOSI,SCLK,LED
liam94 0:506531d0531c 18 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); //Set LCD Pins
liam94 0:506531d0531c 19
liam94 0:506531d0531c 20 ultrasonic mu(PTA0, PTD0, .1, 1); //Set the trigger pin to PTA0 and the echo pin to PTD0
liam94 0:506531d0531c 21 //have updates every .1 seconds and a timeout after 1
liam94 0:506531d0531c 22 //second, and call dist when the distance changes
liam94 0:506531d0531c 23
liam94 0:506531d0531c 24 int main()
liam94 0:506531d0531c 25 {
liam94 0:506531d0531c 26 // initialise lcd
liam94 0:506531d0531c 27 lcd.init();
liam94 0:506531d0531c 28
liam94 0:506531d0531c 29 // set lcd contrast
liam94 0:506531d0531c 30 lcd.setContrast(0.4);
liam94 0:506531d0531c 31 lcd.clear();
liam94 0:506531d0531c 32
liam94 0:506531d0531c 33 mu.startUpdates();//start mesuring the distance
liam94 0:506531d0531c 34 while(1)
liam94 0:506531d0531c 35 {
liam94 0:506531d0531c 36 // x origin, y origin, rows, cols, sprite
liam94 0:506531d0531c 37 lcd.drawSprite(20,6,8,5,(int *)sprite);
liam94 0:506531d0531c 38 lcd.refresh();
liam94 0:506531d0531c 39 wait(5.0);
liam94 0:506531d0531c 40
liam94 0:506531d0531c 41 mu.checkDistance(); //call checkDistance() as much as possible, as this is where
liam94 0:506531d0531c 42 //the class checks if dist needs to be called.
liam94 0:506531d0531c 43
liam94 0:506531d0531c 44 if (distance > 1000){ // check if somebody is infront of the sensor <--- needs resolving
liam94 0:506531d0531c 45 lcd.clear(); // if nobody present then clear screen and turn backlight off
liam94 0:506531d0531c 46 lcd.setBrightness(0.0);
liam94 0:506531d0531c 47 printf("sleep"); // print sleep for debugging
liam94 0:506531d0531c 48 }
liam94 0:506531d0531c 49 }
liam94 0:506531d0531c 50 }