IHM for Industrial Inspection platform Developed for PIMS project / Institut d'Optique Graduate School / LEnsE
Dependents: PIMS_VisionIndus_IHM
Vision_Indus_IHM.h@1:a7281be87607, 2021-11-19 (annotated)
- Committer:
- villemejane
- Date:
- Fri Nov 19 11:21:40 2021 +0000
- Revision:
- 1:a7281be87607
- Parent:
- 0:d70b8a6bed22
Vision Industrielle / Carte d'interfacage LEnsE / Institut d'Optique
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
villemejane | 0:d70b8a6bed22 | 1 | /****************************************************************************/ |
villemejane | 0:d70b8a6bed22 | 2 | /* Vision Industrielle IHM */ |
villemejane | 0:d70b8a6bed22 | 3 | /****************************************************************************/ |
villemejane | 0:d70b8a6bed22 | 4 | /* LEnsE / Julien VILLEMEJANE / Institut d'Optique Graduate School */ |
villemejane | 0:d70b8a6bed22 | 5 | /****************************************************************************/ |
villemejane | 0:d70b8a6bed22 | 6 | /* Library - Vision_Indus_IHM.h file */ |
villemejane | 0:d70b8a6bed22 | 7 | /****************************************************************************/ |
villemejane | 0:d70b8a6bed22 | 8 | /* Tested on DISCO-F746 / 14th nov 2021 */ |
villemejane | 0:d70b8a6bed22 | 9 | /****************************************************************************/ |
villemejane | 0:d70b8a6bed22 | 10 | |
villemejane | 0:d70b8a6bed22 | 11 | #include "F746_GUI.hpp" |
villemejane | 0:d70b8a6bed22 | 12 | #include "mbed.h" |
villemejane | 0:d70b8a6bed22 | 13 | |
villemejane | 0:d70b8a6bed22 | 14 | // Color ARGB (8-8-8-8) |
villemejane | 0:d70b8a6bed22 | 15 | #define COLOR_OFF 0xFF666666 |
villemejane | 0:d70b8a6bed22 | 16 | #define CONV_PER_MIN_US 2000 |
villemejane | 0:d70b8a6bed22 | 17 | #define CONV_DIR_FW 1 |
villemejane | 0:d70b8a6bed22 | 18 | #define CONV_DIR_RV 0 |
villemejane | 0:d70b8a6bed22 | 19 | |
villemejane | 0:d70b8a6bed22 | 20 | |
villemejane | 0:d70b8a6bed22 | 21 | /* Inputs and Outputs */ |
villemejane | 0:d70b8a6bed22 | 22 | // Flex |
villemejane | 0:d70b8a6bed22 | 23 | extern DigitalOut flex1_out; |
villemejane | 0:d70b8a6bed22 | 24 | extern DigitalOut flex2_out; |
villemejane | 0:d70b8a6bed22 | 25 | // Dome |
villemejane | 0:d70b8a6bed22 | 26 | extern DigitalOut dome_out; |
villemejane | 0:d70b8a6bed22 | 27 | // Rasant |
villemejane | 0:d70b8a6bed22 | 28 | extern DigitalOut rasant_out; |
villemejane | 0:d70b8a6bed22 | 29 | // Effi-RGB |
villemejane | 0:d70b8a6bed22 | 30 | extern DigitalOut ringRGB_R_out; |
villemejane | 0:d70b8a6bed22 | 31 | extern DigitalOut ringRGB_G_out; |
villemejane | 0:d70b8a6bed22 | 32 | extern DigitalOut ringRGB_B_out; |
villemejane | 0:d70b8a6bed22 | 33 | // Conveyor |
villemejane | 0:d70b8a6bed22 | 34 | |
villemejane | 0:d70b8a6bed22 | 35 | /* Graphical objects */ |
villemejane | 0:d70b8a6bed22 | 36 | extern Label title; |
villemejane | 0:d70b8a6bed22 | 37 | extern Label subtitle; |
villemejane | 0:d70b8a6bed22 | 38 | // All On-Off |
villemejane | 0:d70b8a6bed22 | 39 | extern Button light_on; |
villemejane | 0:d70b8a6bed22 | 40 | extern Button light_off; |
villemejane | 0:d70b8a6bed22 | 41 | extern uint8_t all_on_active; |
villemejane | 0:d70b8a6bed22 | 42 | // EFFI-Ring |
villemejane | 0:d70b8a6bed22 | 43 | extern Label roundRGB; |
villemejane | 0:d70b8a6bed22 | 44 | extern Button roundRGB_R; |
villemejane | 0:d70b8a6bed22 | 45 | extern Button roundRGB_G; |
villemejane | 0:d70b8a6bed22 | 46 | extern Button roundRGB_B; |
villemejane | 0:d70b8a6bed22 | 47 | extern uint8_t roundRGB_R_active; |
villemejane | 0:d70b8a6bed22 | 48 | extern uint8_t roundRGB_G_active; |
villemejane | 0:d70b8a6bed22 | 49 | extern uint8_t roundRGB_B_active; |
villemejane | 0:d70b8a6bed22 | 50 | // EFFI-Dome |
villemejane | 0:d70b8a6bed22 | 51 | extern Label dome; |
villemejane | 0:d70b8a6bed22 | 52 | extern Button dome_W; |
villemejane | 0:d70b8a6bed22 | 53 | extern uint8_t dome_active; |
villemejane | 0:d70b8a6bed22 | 54 | // EFFI-Dome |
villemejane | 0:d70b8a6bed22 | 55 | extern Label rasant; |
villemejane | 0:d70b8a6bed22 | 56 | extern Button rasant_R; |
villemejane | 0:d70b8a6bed22 | 57 | extern uint8_t rasant_active; |
villemejane | 0:d70b8a6bed22 | 58 | // EFFI-Flex |
villemejane | 0:d70b8a6bed22 | 59 | extern Label flex1; |
villemejane | 0:d70b8a6bed22 | 60 | extern Button flex1_W; |
villemejane | 0:d70b8a6bed22 | 61 | extern uint8_t flex1_active; |
villemejane | 0:d70b8a6bed22 | 62 | extern Button flex2_W; |
villemejane | 0:d70b8a6bed22 | 63 | extern uint8_t flex2_active; |
villemejane | 0:d70b8a6bed22 | 64 | // Conveyor |
villemejane | 0:d70b8a6bed22 | 65 | extern Label conveyor; |
villemejane | 0:d70b8a6bed22 | 66 | extern NumericLabel<int> conv_speed_lab; |
villemejane | 0:d70b8a6bed22 | 67 | extern SeekBar conv_speed; |
villemejane | 0:d70b8a6bed22 | 68 | |
villemejane | 0:d70b8a6bed22 | 69 | |
villemejane | 0:d70b8a6bed22 | 70 | /* Functions */ |
villemejane | 0:d70b8a6bed22 | 71 | /* initIHM */ |
villemejane | 0:d70b8a6bed22 | 72 | void initIHM(void); |
villemejane | 0:d70b8a6bed22 | 73 | /* updateIHM */ |
villemejane | 0:d70b8a6bed22 | 74 | void updateIHM(void); |
villemejane | 0:d70b8a6bed22 | 75 | /* updateIHM */ |
villemejane | 0:d70b8a6bed22 | 76 | void moveConveyor(char dir, int speed_us); |
villemejane | 0:d70b8a6bed22 | 77 | /* updateIHM */ |
villemejane | 0:d70b8a6bed22 | 78 | void stopConveyor(void); |