From 068cf4a0d696112542d5d8838aea142dd659b5c5 Mon Sep 17 00:00:00 2001 From: schneider Date: Sun, 10 Jul 2011 15:32:20 +0200 Subject: [PATCH] msc: made msc optional --- firmware/applications/executor.c | 2 ++ firmware/applications/fs.c | 4 ++++ firmware/basic/reinvoke_isp.c | 2 ++ firmware/core/projectconfig.h | 13 ++++++++++++- firmware/lcd/display.c | 4 ++++ firmware/usb/usbmsc.c | 2 +- 6 files changed, 25 insertions(+), 2 deletions(-) diff --git a/firmware/applications/executor.c b/firmware/applications/executor.c index 24d186f..c495ec2 100644 --- a/firmware/applications/executor.c +++ b/firmware/applications/executor.c @@ -140,7 +140,9 @@ void main_executor(void) { }; if(key==BTN_UP){ +#if CFG_USBMSC usbMSCInit(); +#endif }; // Display nickname diff --git a/firmware/applications/fs.c b/firmware/applications/fs.c index 16f8ff1..a376b40 100644 --- a/firmware/applications/fs.c +++ b/firmware/applications/fs.c @@ -34,8 +34,10 @@ const struct MENU_DEF menu_list = {"FS List", &fs_list}; const struct MENU_DEF menu_create = {"FS Create", &fs_create}; const struct MENU_DEF menu_format = {"FS format", &fs_format}; const struct MENU_DEF menu_read = {"FS read", &fs_read}; +#if CFG_USBMSC const struct MENU_DEF menu_usb = {"USB mount", &usbMSCInit}; const struct MENU_DEF menu_usboff = {"USB unmount", &usbMSCOff}; +#endif const struct MENU_DEF menu_nop = {"---", NULL}; static menuentry menu[] = { @@ -47,8 +49,10 @@ static menuentry menu[] = { &menu_nop, &menu_format, &menu_nop, +#if CFG_USBMSC &menu_usb, &menu_usboff, +#endif &menu_nop, &menu_ISP, &menu_incBL, diff --git a/firmware/basic/reinvoke_isp.c b/firmware/basic/reinvoke_isp.c index a3d5888..84f05b4 100644 --- a/firmware/basic/reinvoke_isp.c +++ b/firmware/basic/reinvoke_isp.c @@ -75,10 +75,12 @@ void EnableWatchdog(uint32_t ms){ }; void ISPandReset(int delay){ +#if CFG_USBMSC if(usbMSCenabled){ usbMSCOff(); delayms(500); }; +#endif EnableWatchdog(1000*delay); ReinvokeISP(); }; diff --git a/firmware/core/projectconfig.h b/firmware/core/projectconfig.h index 32d7a78..7d58144 100644 --- a/firmware/core/projectconfig.h +++ b/firmware/core/projectconfig.h @@ -70,4 +70,15 @@ #define CFG_HAVE_SDCARD (0) /*=========================================================================*/ - #define CFG_USBMSC (1) + #define CFG_USBMSC (1) + + #define CFG_USB_VID (0x239A) + #define CFG_USB_PID (0x1002) + + + #define CFG_USBCDC (0) + #define CFG_USBCDC_BAUDRATE (115200) + #define CFG_USBCDC_INITTIMEOUT (5000) + #define CFG_USBCDC_BUFFERSIZE (256) + + diff --git a/firmware/lcd/display.c b/firmware/lcd/display.c index ad5f798..b6a3c83 100644 --- a/firmware/lcd/display.c +++ b/firmware/lcd/display.c @@ -18,10 +18,12 @@ uint32_t intstatus; #define TYPE_DATA 1 static void select() { +#if CFG_USBMSC if(usbMSCenabled){ intstatus=USB_DEVINTEN; USB_DEVINTEN=0; }; +#endif /* the LCD requires 9-Bit frames */ uint32_t configReg = ( SSP_SSP0CR0_DSS_9BIT // Data size = 9-bit | SSP_SSP0CR0_FRF_SPI // Frame format = SPI @@ -37,9 +39,11 @@ static void deselect() { | SSP_SSP0CR0_FRF_SPI // Frame format = SPI | SSP_SSP0CR0_SCR_8); // Serial clock rate = 8 SSP_SSP0CR0 = configReg; +#if CFG_USBMSC if(usbMSCenabled){ USB_DEVINTEN=intstatus; }; +#endif } static void lcdWrite(uint8_t cd, uint8_t data) { diff --git a/firmware/usb/usbmsc.c b/firmware/usb/usbmsc.c index 20172d1..e75d310 100644 --- a/firmware/usb/usbmsc.c +++ b/firmware/usb/usbmsc.c @@ -88,7 +88,7 @@ void usbMSCInit(void) { usbMSCenabled=1; } -#ifdef CFG_USBMSC +#if CFG_USBMSC void USB_IRQHandler() { (*rom)->pUSBD->isr(); }