Advertisement
NicoVape

Untitled

Dec 30th, 2018
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.31 KB | None | 0 0
  1.  
  2. class Menu_display
  3. {
  4.   //datas
  5.   public:
  6.    
  7.     int menuMode;
  8.     void select(int Clicks, long battVolt, int pwmRatio, long avgVolts, int PWM_OUT_PIN, unsigned char logo);
  9.      
  10.     void main_screen(long battVolt, int pwmRatio, long avgVolts, unsigned char logo);
  11.     void tune_screen(int pwmRatio);
  12.     void lock_screen(int PWM_OUT_PIN, unsigned char logo);
  13.     void long_screen(int PWM_OUT_PIN, unsigned char logo);
  14.   private:
  15.   //Free for now
  16. };
  17.  
  18. void Menu_display::select(int Clicks, long battVolt, int pwmRatio, long avgVolts, int PWM_OUT_PIN, unsigned char logo)
  19. {
  20.   switch(Clicks){
  21.     case 1:
  22.       Menu_display::main_screen(battVolt, pwmRatio, avgVolts, logo);
  23.       break;
  24.     case 3:
  25.       Menu_display::tune_screen(pwmRatio);
  26.       break;
  27.     case 5:
  28.       Menu_display::lock_screen(PWM_OUT_PIN, logo);
  29.       break;
  30.     case -1:
  31.       Menu_display::long_screen(PWM_OUT_PIN, logo);
  32.       break;
  33.     default:
  34.       Menu_display::main_screen(battVolt, pwmRatio, avgVolts, logo);
  35.       break;
  36.   };
  37. }
  38.  
  39. void Menu_display::main_screen(long battVolt, int pwmRatio, long avgVolts, unsigned char logo)
  40. {
  41.    
  42.     u8g.drawBitmapP( 5, 5, 3, 22, logo);
  43.     u8g.drawStr( 30, 4, "Batt :");
  44.     float level = 100 - (round(8.4-battVolt)/0.028);
  45.     u8g.drawFrame(65,3,100,7);
  46.     u8g.drawBox(65,3,level,7);
  47.     u8g.drawStr( 30, 13, "Duty cycle % :");
  48.     u8g.setPrintPos( 100, 13 );
  49.     u8g.print(pwmRatio);
  50.     u8g.drawStr( 30, 23, "Avg Volts :");
  51.     u8g.setPrintPos( 90, 23 );
  52.     avgVolts = ((battVolt * pwmRatio) / 100);
  53.     u8g.print(avgVolts);
  54. }
  55. void Menu_display::tune_screen(int pwmRatio)
  56. {
  57.     u8g.drawStr( 10, 4, "Reglage puissance");
  58.     u8g.drawStr( 10, 13, "Duty cycle :");
  59.     u8g.setPrintPos( 75, 13 );
  60.     u8g.print(pwmRatio);
  61.     u8g.drawStr( 10, 25, "- DR/ + GC / fire x3 exit");
  62. }
  63. void Menu_display::lock_screen(int PWM_OUT_PIN, unsigned char logo)
  64. {
  65.    analogWrite(PWM_OUT_PIN, 0);
  66.    u8g.drawBitmapP( 5, 5, 3, 22, logo);
  67.    u8g.drawStr( 30, 4, "Lock device !");
  68.    u8g.drawStr( 30, 13, "Click x5 twice to unlock");
  69. }
  70. void Menu_display::long_screen(int PWM_OUT_PIN, unsigned char logo)
  71. {
  72.    analogWrite(PWM_OUT_PIN, 0);
  73.    u8g.drawBitmapP( 5, 5, 3, 22, logo);
  74.    u8g.drawStr( 30, 4, "Long Fire detecte !");
  75.    u8g.drawStr( 30, 13, "Click x5 twice to unlock");
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement