From caaf6db7adb003cdf83343a035ed52cad84693e7 Mon Sep 17 00:00:00 2001 From: "bernet.andre@gmail.com" Date: Wed, 13 Mar 2013 08:48:22 +0000 Subject: [PATCH] [X9D] Lighter grey on main views, USB icon working, power driver --- src/icons.lbm | 4 ++-- src/icons.png | Bin 765 -> 3181 bytes src/lcd.h | 2 +- src/main_views.cpp | 2 +- src/model_menus.cpp | 2 +- src/x9d/board_x9d.cpp | 6 ++++++ src/x9d/board_x9d.h | 1 + src/x9d/hal.h | 7 +++++++ src/x9d/pwr_driver.cpp | 6 ++++++ src/x9d/usbd_usr.c | 6 ++++-- 10 files changed, 29 insertions(+), 7 deletions(-) diff --git a/src/icons.lbm b/src/icons.lbm index 6f2afd395..f6b18fdce 100644 --- a/src/icons.lbm +++ b/src/icons.lbm @@ -1,2 +1,2 @@ -102,8, -0x1d,0xe3,0xe3,0x1c,0x1c,0xdd,0xdd,0x3e,0xea,0x23,0x6b,0xb6,0xa1,0x9f,0xbf,0xc0,0xf9,0xef,0xff,0xe8,0xa1,0x9f,0xbf,0xc0,0xea,0x23,0x6b,0xb6,0x1c,0xdd,0xdd,0x3e,0x1d,0xe3,0xe3,0x1c,0x38,0xff,0xff,0x38,0x7c,0xbb,0xbb,0x7c,0xfe,0x7d,0x7d,0xfe,0xfe,0xff,0xff,0xfe,0x00,0xff,0xff,0x00,0x50,0xff,0xff,0x50,0x20,0xff,0xff,0x20,0x50,0xff,0xff,0x50,0x38,0xff,0xff,0x38,0x7c,0xbb,0xbb,0x7c,0xfe,0x7d,0x7d,0xfe,0xfe,0xff,0xff,0xfe,0x00,0xff,0xff,0x00,0x40,0xff,0xff,0x40,0x40,0xff,0xff,0x40,0x40,0xff,0xff,0x40,0x38,0xff,0xff,0x38,0x7c,0xbb,0xbb,0x7c,0xfe,0x7d,0x7d,0xfe,0xfe,0xff,0xff,0xfe,0x00,0xff,0xff,0x00,0x50,0xff,0xff,0x50,0x50,0xff,0xff,0x50,0x50,0xff,0xff,0x50,0x38,0xff,0xff,0x38,0x7c,0xbb,0xbb,0x7c,0xfe,0x7d,0x7d,0xfe,0xfe,0xff,0xff,0xfe,0x00,0xff,0xff,0x00,0x54,0xff,0xff,0x54,0x54,0xff,0xff,0x54,0x54,0xff,0xff,0x54,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0xff,0xc1,0x41,0x41,0xff,0xfd,0x7d,0x7d,0xff,0xfd,0x7d,0x7d,0xff,0xfd,0x7d,0x7d,0xff,0xfd,0x7d,0x7d,0xfd,0xfb,0x7b,0x79,0xfb,0xc7,0x47,0x43,0xff,0xff,0x7f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xe3,0xff,0x77,0x63,0xdd,0xff,0x63,0x41,0xdd,0xff,0x41,0x41,0xdd,0xff,0x63,0x41,0xe3,0xff,0x77,0x63,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0xff,0xff,0xfd,0xff,0x43,0x41,0xff,0xff,0x7d,0x7d,0xff,0xff,0x73,0x73,0xff,0xff,0x7d,0x7d,0xdd,0xff,0x63,0x41,0xff,0xff,0x5f,0x5f,0xff,0xff,0x59,0x59,0xdd,0xff,0x63,0x41,0xff,0xff,0x79,0x79,0xff,0xff,0xff,0xff,0xff,0xff,0x79,0x79,0xdd,0xff,0x63,0x41,0xff,0xff,0x59,0x59,0xff,0xff,0x5f,0x5f,0xf5,0xff,0x5b,0x51,0xff,0xff,0x55,0x55,0xff,0xff,0x55,0x55,0xff,0xff,0x55,0x55,0xd7,0xff,0x6d,0x45,0xff,0xff,0xff,0xff,0xff,0xff,0x63,0x63,0xff,0xff,0x63,0x63,0xff,0xff,0x77,0x77,0xff,0xff,0x73,0x73,0xff,0xff,0x65,0x65,0xfd,0xff,0x57,0x55,0xff,0xff,0x77,0x77,0xff,0xff,0x63,0x63,0xeb,0xff,0x77,0x63,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x51,0x51,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0xff,0xff, +102,8, +0xff,0xff,0x00,0x00,0xff,0xff,0x1c,0x1c,0x6b,0xff,0xb6,0x22,0xbf,0xff,0xc0,0x80,0xff,0xff,0xe8,0xe8,0xbf,0xff,0xc0,0x80,0x6b,0xff,0xb6,0x22,0xff,0xff,0x1c,0x1c,0xff,0xff,0x00,0x00,0xff,0xff,0x38,0x38,0xbb,0xff,0x7c,0x38,0x7d,0xff,0xfe,0x7c,0xff,0xff,0xfe,0xfe,0xff,0xff,0x00,0x00,0xff,0xff,0x50,0x50,0xff,0xff,0x20,0x20,0xff,0xff,0x50,0x50,0xff,0xff,0x38,0x38,0xbb,0xff,0x7c,0x38,0x7d,0xff,0xfe,0x7c,0xff,0xff,0xfe,0xfe,0xff,0xff,0x00,0x00,0xff,0xff,0x40,0x40,0xff,0xff,0x40,0x40,0xff,0xff,0x40,0x40,0xff,0xff,0x38,0x38,0xbb,0xff,0x7c,0x38,0x7d,0xff,0xfe,0x7c,0xff,0xff,0xfe,0xfe,0xff,0xff,0x00,0x00,0xff,0xff,0x50,0x50,0xff,0xff,0x50,0x50,0xff,0xff,0x50,0x50,0xff,0xff,0x38,0x38,0xbb,0xff,0x7c,0x38,0x7d,0xff,0xfe,0x7c,0xff,0xff,0xfe,0xfe,0xff,0xff,0x00,0x00,0xff,0xff,0x54,0x54,0xff,0xff,0x54,0x54,0xff,0xff,0x54,0x54,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0xff,0xc1,0x41,0x41,0xff,0xfd,0x7d,0x7d,0xff,0xfd,0x7d,0x7d,0xff,0xfd,0x7d,0x7d,0xff,0xfd,0x7d,0x7d,0xfd,0xfb,0x7b,0x79,0xfb,0xc7,0x47,0x43,0xff,0xff,0x7f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xe3,0xff,0x77,0x63,0xdd,0xff,0x63,0x41,0xdd,0xff,0x41,0x41,0xdd,0xff,0x63,0x41,0xe3,0xff,0x77,0x63,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0xff,0xff,0xfd,0xff,0x43,0x41,0xff,0xff,0x7d,0x7d,0xff,0xff,0x73,0x73,0xff,0xff,0x7d,0x7d,0xdd,0xff,0x63,0x41,0xff,0xff,0x5f,0x5f,0xff,0xff,0x59,0x59,0xdd,0xff,0x63,0x41,0xff,0xff,0x79,0x79,0xff,0xff,0xff,0xff,0xff,0xff,0x79,0x79,0xdd,0xff,0x63,0x41,0xff,0xff,0x59,0x59,0xff,0xff,0x5f,0x5f,0xf5,0xff,0x5b,0x51,0xff,0xff,0x55,0x55,0xff,0xff,0x55,0x55,0xff,0xff,0x55,0x55,0xd7,0xff,0x6d,0x45,0xff,0xff,0xff,0xff,0xff,0xff,0x63,0x63,0xff,0xff,0x63,0x63,0xff,0xff,0x77,0x77,0xff,0xff,0x73,0x73,0xff,0xff,0x65,0x65,0xfd,0xff,0x57,0x55,0xff,0xff,0x77,0x77,0xff,0xff,0x63,0x63,0xeb,0xff,0x77,0x63,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x51,0x51,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0x7f,0x7f,0xff,0xff,0xff,0xff, diff --git a/src/icons.png b/src/icons.png index 1a225a37e112e796277aefb54929a38c1272a6e7..8b08f8a691beff81b66c6a1b804241f72b326ca4 100644 GIT binary patch delta 3159 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 delta 722 zcmV;@0xkXR82ts1Bpd;AQb$4nuFf3k00006VoOIv0RI600RN!9r<0K(7k>Z;bV*G` z2i*e;6fGRx(N&B9000?uMObu0Z*6U5Zgc=ca%Ew3Wn>_CX>@2HM@dakSAh-}00075 zNkl zbZHTnqHC>Sy?2V7F|j{<<$r~@4;**jd+xpo&vV~P676&32jU6-e)CtTOv>s(%5GMP+p9Os~@f0K_hD4Wgh#ILWf^m;w2)#{!prfD*t z&oNCC*LA5>DqFr(Dp4+%@qK^WtDFio4)(eCPRkp-|XfTZ6%XtE(#pgMR__dL7%g$>nm98v|2* zYR+dB5ycyZ5t%D$zEY{+x-OPw;d$Q9H5LW662c;et0c@t39MGyA@jr6-WHusM>>up z`~ALbHk%TV&1O^f`+ey+j_h!WxzK8F8|Eg^)Enx^si_{jbJ z{noIXn;Y`^JS&^cX72+X_qTB>zR_sJp4g~U`ai7u1E_%bX{@y@1poj507*qoM6N<$ Eg4EMsF8}}l diff --git a/src/lcd.h b/src/lcd.h index bd837c0a6..aab315602 100644 --- a/src/lcd.h +++ b/src/lcd.h @@ -129,7 +129,7 @@ #if defined(PCBX9D) #define GREY(x) ((x) * 0x1000) -#define GREY_DEFAULT GREY(8) +#define GREY_DEFAULT GREY(11) #define GREY_MASK(x) ((x) & 0xF000) #endif diff --git a/src/main_views.cpp b/src/main_views.cpp index 0c65cb6b1..29cd2d54f 100644 --- a/src/main_views.cpp +++ b/src/main_views.cpp @@ -247,7 +247,7 @@ void displayTopBar() x -= 12; } - if (1) { + if (usbPlugged()) { LCD_NOTIF_ICON(x, ICON_USB); x -= 12; } diff --git a/src/model_menus.cpp b/src/model_menus.cpp index 98529cf6c..39afd5e84 100644 --- a/src/model_menus.cpp +++ b/src/model_menus.cpp @@ -3493,7 +3493,7 @@ void menuModelCustomFunctions(uint8_t event) #if defined(GVARS) else if (CFN_FUNC(sd) >= FUNC_ADJUST_GV1 #if defined(DEBUG) - && CFN_FUNC(sd) <= FUNC_ADJUST_GV5 + && CFN_FUNC(sd) <= FUNC_ADJUST_GVLAST #endif ) { switch (CFN_GVAR_MODE(sd)) { diff --git a/src/x9d/board_x9d.cpp b/src/x9d/board_x9d.cpp index 38a119b65..09958bba9 100644 --- a/src/x9d/board_x9d.cpp +++ b/src/x9d/board_x9d.cpp @@ -43,6 +43,7 @@ extern "C" { uint8_t temperature = 0; // Raw temp reading uint8_t maxTemperature = 0 ; // Raw temp reading volatile uint32_t Tenms ; // TODO to remove everywhere / use a #define +uint8_t usb_connected = 0; #define PIN_MODE_MASK 0x0003 #define PIN_INPUT 0x0000 @@ -106,6 +107,11 @@ void configure_pins( uint32_t pins, uint16_t config ) } #endif +uint8_t usbPlugged(void) +{ + return usb_connected; +} + #if defined(DEBUG) void debugPutc(const char c) { diff --git a/src/x9d/board_x9d.h b/src/x9d/board_x9d.h index 37221facc..647549915 100644 --- a/src/x9d/board_x9d.h +++ b/src/x9d/board_x9d.h @@ -80,6 +80,7 @@ uint8_t getTemperature(); extern uint16_t sessionTimer; +uint8_t usbPlugged(void); #define BOOTLOADER_REQUEST() (0/*usbPlugged()*/) #define SLAVE_MODE() (0/*pwrCheck() == e_power_trainer*/) diff --git a/src/x9d/hal.h b/src/x9d/hal.h index 1c4a98545..3c6a823d5 100644 --- a/src/x9d/hal.h +++ b/src/x9d/hal.h @@ -156,6 +156,8 @@ #define RCC_AHB1Periph_GPIOPWR RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOD #define GPIOPWRLED GPIOC #define GPIOPWR GPIOD +#define GPIOTRNDET GPIOA +#define PIN_TRNDET GPIO_Pin_8 // Trainer Port #define PIN_TR_PPM_IN GPIO_Pin_8 //PC.08 @@ -255,6 +257,11 @@ #define I2C_EE_SDA GPIO_Pin_0 //PE0 #define I2C_EE_WP GPIO_Pin_9 //PB9 #else +#define RCC_APBPeriph_I2C_EE RCC_APB1Periph_I2C1 +#define I2C_EE I2C1 +#define GPIO_AF_I2C_EE GPIO_AF_I2C1 +#define GPIO_PinSource_I2C_EE_SCL GPIO_PinSource6 +#define GPIO_PinSource_I2C_EE_SDA GPIO_PinSource7 #define I2C_EE_GPIO GPIOB #define I2C_EE_WP_GPIO GPIOB #define I2C_EE_GPIO_CLK RCC_AHB1Periph_GPIOB diff --git a/src/x9d/pwr_driver.cpp b/src/x9d/pwr_driver.cpp index 09400c4d0..614a99a9e 100644 --- a/src/x9d/pwr_driver.cpp +++ b/src/x9d/pwr_driver.cpp @@ -48,6 +48,12 @@ uint32_t pwrCheck() #else if (GPIO_ReadInputDataBit(GPIOPWR, PIN_PWR_STATUS) == Bit_RESET) return e_power_on; +#if !defined(REV3) + else if (GPIO_ReadInputDataBit(GPIOTRNDET, PIN_TRNDET) == Bit_RESET) + return e_power_trainer; +#endif + else if (usbPlugged()) + return e_power_usb; else return e_power_off; #endif diff --git a/src/x9d/usbd_usr.c b/src/x9d/usbd_usr.c index 5df034e7d..9af985ab9 100644 --- a/src/x9d/usbd_usr.c +++ b/src/x9d/usbd_usr.c @@ -28,6 +28,8 @@ /* Includes ------------------------------------------------------------------*/ #include "usbd_usr.h" +extern uint8_t usb_connected; + /* Points to the DEVICE_PROP structure of current device */ /* The purpose of this register is to speed up the execution */ @@ -102,7 +104,7 @@ void USBD_USR_DeviceResumed(void) */ void USBD_USR_DeviceConnected (void) { - + usb_connected = 1; } @@ -114,7 +116,7 @@ void USBD_USR_DeviceConnected (void) */ void USBD_USR_DeviceDisconnected (void) { - + usb_connected = 0; }