Minor code cleanups for clarity.
[pub/USBasp.git] / Demos / Host / ClassDriver / StillImageHost / StillImageHost.c
index d60db09..2959af5 100644 (file)
@@ -45,13 +45,18 @@ USB_ClassInfo_SI_Host_t DigitalCamera_SI_Interface =
                .Config =\r
                        {\r
                                .DataINPipeNumber       = 1,\r
+                               .DataINPipeDoubleBank   = false,\r
+                               \r
                                .DataOUTPipeNumber      = 2,\r
+                               .DataOUTPipeDoubleBank  = false,\r
+                               \r
                                .EventsPipeNumber       = 3,\r
+                               .EventsPipeDoubleBank   = false,\r
                        },\r
        };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
- *  starts the scheduler to run the application tasks.\r
+ *  enters a loop to run the application tasks in sequence.\r
  */\r
 int main(void)\r
 {\r
@@ -110,6 +115,18 @@ int main(void)
                                        break;\r
                                }\r
 \r
+                               printf("Turning off Device...\r\n");\r
+\r
+                               SImage_Host_SendCommand(&DigitalCamera_SI_Interface, 0x1013, 0, NULL);\r
+                               if (SImage_Host_ReceiveResponse(&DigitalCamera_SI_Interface))\r
+                               {\r
+                                       printf("Could not turn off device.\r\n");\r
+                                       USB_HostState = HOST_STATE_WaitForDeviceRemoval;\r
+                                       break;                                  \r
+                               }\r
+\r
+                               printf("Device Off.\r\n");\r
+\r
                                printf("Closing Session...\r\n");\r
 \r
                                if (SImage_Host_CloseSession(&DigitalCamera_SI_Interface) != PIPE_RWSTREAM_NoError)\r
@@ -119,8 +136,6 @@ int main(void)
                                        break;\r
                                }\r
                                \r
-                               printf("Device Idle.\r\n");\r
-                       \r
                                LEDs_SetAllLEDs(LEDMASK_USB_READY);\r
                                USB_HostState = HOST_STATE_WaitForDeviceRemoval;\r
                                break;\r