First Draft, serial print change based on distance

Committer:
liam94
Date:
Fri Feb 04 01:28:35 2022 +0000
Revision:
15:d8ff594535fc
Parent:
14:837945ccd8c0
Child:
16:af15244242c2
general tidy up, commented out "sense" integer and values that are no longer used and condensed the distance integers onto one line in the .h file

Who changed what in which revision?

UserRevisionLine numberNew contents of line
liam94 11:5a895d966a3e 1 #ifndef MAIN_H
liam94 11:5a895d966a3e 2 #define MAIN_H
liam94 5:98845ccaaacd 3
liam94 8:7e48229d678c 4 /***************************************************************************//**
liam94 8:7e48229d678c 5 *
liam94 8:7e48229d678c 6 * @author Liam Cox
liam94 8:7e48229d678c 7 * @date January 2022
liam94 8:7e48229d678c 8 *
liam94 8:7e48229d678c 9 * @brief This is the header section for my main code, it includes all the inputs,
liam94 8:7e48229d678c 10 * outputs and member functions that will be used in the main source code
liam94 8:7e48229d678c 11 * file
liam94 8:7e48229d678c 12 *
liam94 8:7e48229d678c 13 *******************************************************************************/
liam94 8:7e48229d678c 14
liam94 5:98845ccaaacd 15 #include "mbed.h"
liam94 5:98845ccaaacd 16 #include "N5110.h"
liam94 8:7e48229d678c 17 #include "Joystick.h"
liam94 8:7e48229d678c 18 #include "ultrasonic.h"
liam94 14:837945ccd8c0 19 #include "beep.h"
liam94 5:98845ccaaacd 20
liam94 8:7e48229d678c 21 /***************************************************************************//**
liam94 8:7e48229d678c 22 *
liam94 8:7e48229d678c 23 * below I have defined the inputs and outputs on the PCB, this includes all the
liam94 15:d8ff594535fc 24 * push buttons that have been defined as interrupts, the piezo buzzer defined as
liam94 15:d8ff594535fc 25 * a pwm output, the LEDs that have been defined in a Bus output for ease of use,
liam94 15:d8ff594535fc 26 * the LCD output pins VCC,SCE,RST,D/C, MOSI,SCLK,LED and the joystick
liam94 15:d8ff594535fc 27 * y-coordinate x-coordinate and button.
liam94 8:7e48229d678c 28 *
liam94 8:7e48229d678c 29 *******************************************************************************/
liam94 8:7e48229d678c 30
liam94 5:98845ccaaacd 31 InterruptIn L(PTB18);
liam94 5:98845ccaaacd 32 InterruptIn R(PTB3);
liam94 5:98845ccaaacd 33 InterruptIn Start(PTC5);
liam94 5:98845ccaaacd 34 InterruptIn Back(PTB19);
liam94 5:98845ccaaacd 35
liam94 14:837945ccd8c0 36 Beep buzzer(PTC10);
liam94 14:837945ccd8c0 37
liam94 13:cc99df342c7f 38 BusOut LEDS(PTA1,PTA2,PTC2,PTC3,PTC4,PTD3);
liam94 5:98845ccaaacd 39
liam94 8:7e48229d678c 40 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
liam94 5:98845ccaaacd 41
liam94 5:98845ccaaacd 42 Joystick joystick(PTB10,PTB11,PTC16);
liam94 5:98845ccaaacd 43
liam94 8:7e48229d678c 44 /***************************************************************************//**
liam94 8:7e48229d678c 45 *
liam94 8:7e48229d678c 46 * below is array of states for the LEDs in the FSM, states have been defined in
liam94 8:7e48229d678c 47 * binary for ease of use, 0 is LED on, 1 is LED off so only one LED is on in any
liam94 8:7e48229d678c 48 * state. the member functions that are to be used in the main source code file
liam94 8:7e48229d678c 49 * have also been defined and the ultrasonice sensor trigger and echo pin have
liam94 8:7e48229d678c 50 * been defined, it updates every .5 seconds and a timeout after 1 second and call
liam94 8:7e48229d678c 51 * the function dist when the distance changes.
liam94 8:7e48229d678c 52 *
liam94 8:7e48229d678c 53 *******************************************************************************/
liam94 5:98845ccaaacd 54
liam94 10:be53044119d1 55 int glass[] = {180,180,180,180,180,180}; //array for first object (pint glass)
liam94 9:ada61082bbaa 56
liam94 6:18a4dd77057e 57 int fsm[6] = {0b111110, 0b111101, 0b111011, 0b110111, 0b101111, 0b011111};
liam94 5:98845ccaaacd 58
liam94 15:d8ff594535fc 59 int Distance1, Distance2, Distance3, Distance4, Distance5, Distance6;
liam94 15:d8ff594535fc 60
liam94 15:d8ff594535fc 61 int Start_flag, Back_flag;
liam94 8:7e48229d678c 62
liam94 5:98845ccaaacd 63 void init_display();
liam94 5:98845ccaaacd 64
liam94 5:98845ccaaacd 65 void main_menu();
liam94 5:98845ccaaacd 66
liam94 5:98845ccaaacd 67 void sense_object();
liam94 5:98845ccaaacd 68
liam94 5:98845ccaaacd 69 void Start_isr();
liam94 5:98845ccaaacd 70
liam94 5:98845ccaaacd 71 void Back_isr();
liam94 5:98845ccaaacd 72
liam94 6:18a4dd77057e 73 void calibrate_object();
liam94 6:18a4dd77057e 74
liam94 7:7464fbb0f3e1 75 void dist(int distance);
liam94 7:7464fbb0f3e1 76
liam94 9:ada61082bbaa 77 void object_sense1();
liam94 9:ada61082bbaa 78
liam94 9:ada61082bbaa 79 void object_sense2();
liam94 9:ada61082bbaa 80
liam94 9:ada61082bbaa 81 void object_sense3();
liam94 9:ada61082bbaa 82
liam94 9:ada61082bbaa 83 void object_sense4();
liam94 9:ada61082bbaa 84
liam94 9:ada61082bbaa 85 void object_sense5();
liam94 9:ada61082bbaa 86
liam94 9:ada61082bbaa 87 void object_sense6();
liam94 9:ada61082bbaa 88
liam94 10:be53044119d1 89 void object_detection();
liam94 10:be53044119d1 90
liam94 8:7e48229d678c 91 ultrasonic mu(PTD0, PTC12, .5, 1, &dist);
liam94 8:7e48229d678c 92
liam94 15:d8ff594535fc 93 //int sense;
liam94 9:ada61082bbaa 94
liam94 11:5a895d966a3e 95
liam94 8:7e48229d678c 96 #endif