First Draft, serial print change based on distance

Committer:
liam94
Date:
Wed Jan 26 23:08:24 2022 +0000
Revision:
7:7464fbb0f3e1
Parent:
6:18a4dd77057e
Child:
8:7e48229d678c
added calibration screen that displays current sensor distance on LCD

Who changed what in which revision?

UserRevisionLine numberNew contents of line
liam94 5:98845ccaaacd 1
liam94 5:98845ccaaacd 2 #include "mbed.h"
liam94 5:98845ccaaacd 3 #include "N5110.h"
liam94 5:98845ccaaacd 4
liam94 5:98845ccaaacd 5 // added R and L buttons presses in so that the user has to press when they are ready to rotate object and in which direction
liam94 5:98845ccaaacd 6 InterruptIn L(PTB18);
liam94 5:98845ccaaacd 7 InterruptIn R(PTB3);
liam94 5:98845ccaaacd 8 InterruptIn Start(PTC5);
liam94 5:98845ccaaacd 9 InterruptIn Back(PTB19);
liam94 5:98845ccaaacd 10
liam94 5:98845ccaaacd 11 // LEDs on PCB to be connected (1 to 6) - active-low 0 = on and 1 = off
liam94 5:98845ccaaacd 12 BusOut output(PTA1,PTA2,PTC2,PTC3,PTC4,PTD3);
liam94 5:98845ccaaacd 13
liam94 5:98845ccaaacd 14 // VCC,SCE,RST,D/C,MOSI,SCLK,LED
liam94 5:98845ccaaacd 15 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); // K64F - pwr from 3V3
liam94 5:98845ccaaacd 16
liam94 5:98845ccaaacd 17 // y x button
liam94 5:98845ccaaacd 18 Joystick joystick(PTB10,PTB11,PTC16);
liam94 5:98845ccaaacd 19
liam94 5:98845ccaaacd 20 volatile int Start_flag, Back_flag; /*!< Button flags */
liam94 5:98845ccaaacd 21
liam94 5:98845ccaaacd 22 // array of states in the FSM, each element is the output of the counter
liam94 5:98845ccaaacd 23 // set the output in binary to make it easier, 0 is LED on, 1 is LED off
liam94 6:18a4dd77057e 24 int fsm[6] = {0b111110, 0b111101, 0b111011, 0b110111, 0b101111, 0b011111};
liam94 5:98845ccaaacd 25
liam94 5:98845ccaaacd 26 void init_display();
liam94 5:98845ccaaacd 27
liam94 5:98845ccaaacd 28 void main_menu();
liam94 5:98845ccaaacd 29
liam94 5:98845ccaaacd 30 void sense_object();
liam94 5:98845ccaaacd 31
liam94 5:98845ccaaacd 32 void Start_isr();
liam94 5:98845ccaaacd 33
liam94 5:98845ccaaacd 34 void Back_isr();
liam94 5:98845ccaaacd 35
liam94 6:18a4dd77057e 36 void calibrate_object();
liam94 6:18a4dd77057e 37
liam94 7:7464fbb0f3e1 38 void dist(int distance);
liam94 7:7464fbb0f3e1 39
liam94 5:98845ccaaacd 40 ultrasonic mu(PTD0, PTC12, .5, 1, &dist); //Set the trigger pin to PTD0 and the echo pin to PTC12
liam94 5:98845ccaaacd 41 //have updates every .5 seconds and a timeout after 1
liam94 5:98845ccaaacd 42 //second, and call dist when the distance changes