Sensor_Project
Dependencies: N5110 SRF02 mbed
main.h@0:fdd8c55c50e9, 2016-05-05 (annotated)
- Committer:
- xinxinwc
- Date:
- Thu May 05 11:01:46 2016 +0000
- Revision:
- 0:fdd8c55c50e9
1.0
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
xinxinwc | 0:fdd8c55c50e9 | 1 | /** |
xinxinwc | 0:fdd8c55c50e9 | 2 | @file main.h |
xinxinwc | 0:fdd8c55c50e9 | 3 | @brief Header file containing functions prototypes, defines and global variables. |
xinxinwc | 0:fdd8c55c50e9 | 4 | @brief Shows examples of creating Doxygen documentation. |
xinxinwc | 0:fdd8c55c50e9 | 5 | @brief Revision 1.0. |
xinxinwc | 0:fdd8c55c50e9 | 6 | @author XIN ZHANG |
xinxinwc | 0:fdd8c55c50e9 | 7 | @date May 2016 |
xinxinwc | 0:fdd8c55c50e9 | 8 | */ |
xinxinwc | 0:fdd8c55c50e9 | 9 | |
xinxinwc | 0:fdd8c55c50e9 | 10 | #ifndef MAIN_H |
xinxinwc | 0:fdd8c55c50e9 | 11 | #define MAIN_H |
xinxinwc | 0:fdd8c55c50e9 | 12 | |
xinxinwc | 0:fdd8c55c50e9 | 13 | |
xinxinwc | 0:fdd8c55c50e9 | 14 | #include "mbed.h" |
xinxinwc | 0:fdd8c55c50e9 | 15 | #include "N5110.h" |
xinxinwc | 0:fdd8c55c50e9 | 16 | #include "SRF02.h" |
xinxinwc | 0:fdd8c55c50e9 | 17 | |
xinxinwc | 0:fdd8c55c50e9 | 18 | /** |
xinxinwc | 0:fdd8c55c50e9 | 19 | @namespace lcd |
xinxinwc | 0:fdd8c55c50e9 | 20 | @brief lcd connections |
xinxinwc | 0:fdd8c55c50e9 | 21 | */ |
xinxinwc | 0:fdd8c55c50e9 | 22 | N5110 lcd (PTE26 , PTA0 , PTC4 , PTD0 , PTD2 , PTD1 , PTC3); |
xinxinwc | 0:fdd8c55c50e9 | 23 | /**namespace sensor |
xinxinwc | 0:fdd8c55c50e9 | 24 | @brief sensor connections |
xinxinwc | 0:fdd8c55c50e9 | 25 | */ |
xinxinwc | 0:fdd8c55c50e9 | 26 | SRF02 sensor(PTE25,PTE24); |
xinxinwc | 0:fdd8c55c50e9 | 27 | Serial serial(USBTX, USBRX); |
xinxinwc | 0:fdd8c55c50e9 | 28 | /** |
xinxinwc | 0:fdd8c55c50e9 | 29 | @namespace r_led1 |
xinxinwc | 0:fdd8c55c50e9 | 30 | @brief r_led1 connections |
xinxinwc | 0:fdd8c55c50e9 | 31 | */ |
xinxinwc | 0:fdd8c55c50e9 | 32 | PwmOut r_led1(PTC2); |
xinxinwc | 0:fdd8c55c50e9 | 33 | /** |
xinxinwc | 0:fdd8c55c50e9 | 34 | @namespace r_led2 |
xinxinwc | 0:fdd8c55c50e9 | 35 | @brief r_led2 connections |
xinxinwc | 0:fdd8c55c50e9 | 36 | */ |
xinxinwc | 0:fdd8c55c50e9 | 37 | PwmOut r_led2(PTA1); |
xinxinwc | 0:fdd8c55c50e9 | 38 | /** |
xinxinwc | 0:fdd8c55c50e9 | 39 | @namespace buzzer |
xinxinwc | 0:fdd8c55c50e9 | 40 | @brief buzzer connections |
xinxinwc | 0:fdd8c55c50e9 | 41 | */ |
xinxinwc | 0:fdd8c55c50e9 | 42 | PwmOut buzzer(PTA2); |
xinxinwc | 0:fdd8c55c50e9 | 43 | /** |
xinxinwc | 0:fdd8c55c50e9 | 44 | @namespace ticker |
xinxinwc | 0:fdd8c55c50e9 | 45 | @brief make led flashes at 2HZ |
xinxinwc | 0:fdd8c55c50e9 | 46 | */ |
xinxinwc | 0:fdd8c55c50e9 | 47 | Ticker ticker; |
xinxinwc | 0:fdd8c55c50e9 | 48 | /** |
xinxinwc | 0:fdd8c55c50e9 | 49 | @namespace detect |
xinxinwc | 0:fdd8c55c50e9 | 50 | @brief make sensor detect at 2HZ |
xinxinwc | 0:fdd8c55c50e9 | 51 | */ |
xinxinwc | 0:fdd8c55c50e9 | 52 | Ticker detect; |
xinxinwc | 0:fdd8c55c50e9 | 53 | |
xinxinwc | 0:fdd8c55c50e9 | 54 | volatile int g_timer_flag = 0; /*!<Flag in timer_isr */ |
xinxinwc | 0:fdd8c55c50e9 | 55 | |
xinxinwc | 0:fdd8c55c50e9 | 56 | volatile int g_detect_timer_flag = 0; /*!<Flag in detect-timer-isr */ |
xinxinwc | 0:fdd8c55c50e9 | 57 | |
xinxinwc | 0:fdd8c55c50e9 | 58 | /** |
xinxinwc | 0:fdd8c55c50e9 | 59 | Setting LED flahses at 2 HZ |
xinxinwc | 0:fdd8c55c50e9 | 60 | */ |
xinxinwc | 0:fdd8c55c50e9 | 61 | void timer_isr(); |
xinxinwc | 0:fdd8c55c50e9 | 62 | |
xinxinwc | 0:fdd8c55c50e9 | 63 | /** |
xinxinwc | 0:fdd8c55c50e9 | 64 | Setting sensor detect at 2 HZ |
xinxinwc | 0:fdd8c55c50e9 | 65 | */ |
xinxinwc | 0:fdd8c55c50e9 | 66 | void detect_isr(); |
xinxinwc | 0:fdd8c55c50e9 | 67 | |
xinxinwc | 0:fdd8c55c50e9 | 68 | /** |
xinxinwc | 0:fdd8c55c50e9 | 69 | Drawing car at positon x and y |
xinxinwc | 0:fdd8c55c50e9 | 70 | @param x - draw the car at positon x |
xinxinwc | 0:fdd8c55c50e9 | 71 | @param y - draw the car at positon y |
xinxinwc | 0:fdd8c55c50e9 | 72 | */ |
xinxinwc | 0:fdd8c55c50e9 | 73 | void drawCar(int x,int y); |
xinxinwc | 0:fdd8c55c50e9 | 74 | |
xinxinwc | 0:fdd8c55c50e9 | 75 | /** |
xinxinwc | 0:fdd8c55c50e9 | 76 | Clear car at positon x and y |
xinxinwc | 0:fdd8c55c50e9 | 77 | @param x - clear the car at positon x |
xinxinwc | 0:fdd8c55c50e9 | 78 | @param y - clear the car at positon y |
xinxinwc | 0:fdd8c55c50e9 | 79 | */ |
xinxinwc | 0:fdd8c55c50e9 | 80 | void clearCar(int x,int y); |
xinxinwc | 0:fdd8c55c50e9 | 81 | |
xinxinwc | 0:fdd8c55c50e9 | 82 | |
xinxinwc | 0:fdd8c55c50e9 | 83 | int xOld=0; /*! < Save car previous position */ |
xinxinwc | 0:fdd8c55c50e9 | 84 | int distanceArray[10]; /*!< Detect 10 times and add total distance in order to get mean vlaue */ |
xinxinwc | 0:fdd8c55c50e9 | 85 | |
xinxinwc | 0:fdd8c55c50e9 | 86 | #endif |