/**
******************************************************************************
* @file readme.txt
* @author MCD Application Team
* @version V4.0.0
* @date 21-January-2013
* @brief Description of the USB Custom_HID Demo.
******************************************************************************
* @attention
*
*
© COPYRIGHT 2013 STMicroelectronics
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
Example description
===================
This Demo provides a description of how to use the USB-FS-Device on the STM32F10xxx,
STM32F37xxx, STM32F30xxx and STM32L15xxx devices.
The STM32 device is enumerated as HID compliant device, that uses the native PC
Host USB-FS-Device HID driver.
To test the example, you need to:
1)- Start the "USB HID Demonstrator" PC applet and connect STM32 USB to PC
2)- The device should be detected and shown in the USB HID target box
3)- Press Graphic View button
4)- You can Select "use SET_FEATURE" or "use SET_REPORT" in order to use SET_REPORT request to send HID Report
for LED control
5)- Make sure that following report ID are configured: LED1 ID (0x1) , LED2 ID(0x2),
LED3 ID(0x3), LED4 ID(0x4), and BUTTON1_ID(0x5)
6)- Select Leds to switch on/off on the EVAL board => a SET_REPORT request will be sent
More details about this Demo implementation is given in the User manual
"UM0424 STM32F10xxx USB development kit", available for download from the ST
microcontrollers website: www.st.com/stm32
Directory contents
==================
+ \inc: contains the Demo firmware header files
+ \EWARM: contains preconfigured projects for EWARM toolchain
+ \RIDE: contains preconfigured projects for RIDE toolchain
+ \MDK-ARM: contains preconfigured projects for MDK-ARM toolchain
+ \TASKING: contains preconfigured projects for TASKING toolchain
+ \TrueSTUDIO: contains preconfigured projects for TrueSTUDIO toolchain
+ \src: contains the Demo firmware source files
Hardware environment
====================
This example runs these STMicroelectronics evaluation boards and can be easily tailored to any other hardware:
- STM3210B-EVAL
- STM3210E-EVAL
- STM32L152-EVAL
- STM32F373C_EVAL
- STM32F303C_EVAL
- STM32L152D-EVAL
To select the STMicroelectronics evaluation board used to run the example, uncomment
the corresponding line in platform_config.h file.
- STM3210B-EVAL Set-up
- Jumper JP1 (USB disconnect) should be connected in position 2-3.
- STM3210E-EVAL Set-up
- Jumper JP14 (USB disconnect) should be connected in position 2-3.
- STM32L152-EVAL Set-up
- Jumpers JP18 and JP19 should be connected.
- Jumper JP17 should be connected in position 5-6 (PB12 connector)
- Note that JoySitck Right and Left buttons are used for this Demo.
- STM32L152D-EVAL Set-up
- LCD Glass should be mounted On IO position for Potentiometer usage.
- JP13 should be connected to ADC input.
- STM32F373C_EVAL Set-up
- None.
- STM32F303C_EVAL Set-up
- None.
How to use it
=============
+ EWARM
- Open the Custom_HID.eww workspace.
- In the workspace toolbar select the project config:
- STM3210B-EVAL: to configure the project for STM32 Medium-density devices
- STM3210E-EVAL: to configure the project for STM32 High-density devices
- STM3210E-EVAL_XL: to configure the project for STM32 XL-density devices
- STM32L152-EVAL: to configure the project for STM32 Medium-Density Low-Power devices
- STM32L152D-EVAL: to configure the project for STM32 High-Density Low-Power devices
- STM32373C-EVAL: to configure the project for STM32F37xxx devices
- STM32303C-EVAL: to configure the project for STM32F30xxx devices
- Rebuild all files: Project->Rebuild all
- Load project image: Project->Debug
- Run program: Debug->Go(F5)
+ MDK-ARM
- Open the Custom_HID.Uv2 project
- In the build toolbar select the project config:
- STM3210B-EVAL: to configure the project for STM32 Medium-density devices
- STM3210E-EVAL: to configure the project for STM32 High-density devices
- STM3210E-EVAL_XL: to configure the project for STM32 XL-density devices
- STM32L152-EVAL: to configure the project for STM32 Medium-Density Low-Power devices
- STM32L152D-EVAL: to configure the project for STM32 High-Density Low-Power devices
- STM32373C-EVAL: to configure the project for STM32F37xxx devices
- STM32303C-EVAL: to configure the project for STM32F30xxx devices
- Rebuild all files: Project->Rebuild all target files
- Load project image: Debug->Start/Stop Debug Session
- Run program: Debug->Run (F5)
+ RIDE
- Open the Custom_HID.rprj project.
- In the configuration toolbar(Project->properties) select the project config:
- STM3210B-EVAL: to configure the project for STM32 Medium-density devices
- STM3210E-EVAL: to configure the project for STM32 High-density devices
- STM3210E-EVAL_XL: to configure the project for STM32 XL-density devices
- STM32L152-EVAL: to configure the project for STM32 Medium-Density Low-Power devices
- STM32L152D-EVAL: to configure the project for STM32 High-Density Low-Power devices
- STM32373C-EVAL: to configure the project for STM32F37xxx devices
- STM32303C-EVAL: to configure the project for STM32F30xxx devices
- Rebuild all files: Project->build project
- Load project image: Debug->start(ctrl+D)
- Run program: Debug->Run(ctrl+F9)
+ TASKING
- Open TASKING toolchain.
- Click on File->Import, select General->'Existing Projects into Workspace'
and then click "Next".
- Browse to TASKING workspace directory and select the project:
- STM3210B-EVAL: to configure the project for STM32 Medium-density devices
- STM3210E-EVAL: to configure the project for STM32 High-density devices
- STM3210E-EVAL_XL: to configure the project for STM32 XL-density devices
- STM32L152-EVAL: to configure the project for STM32 Medium-Density Low-Power devices
- STM32L152D-EVAL: to configure the project for STM32 High-Density Low-Power devices
- STM32373C-EVAL: to configure the project for STM32F37xxx devices
- STM32303C-EVAL: to configure the project for STM32F30xxx devices
- Rebuild all project files: Select the project in the "Project explorer"
window then click on Project->build project menu.
- Run program: Select the project in the "Project explorer" window then click
Run->Debug (F11)
+ TrueSTUDIO
- Open the TrueSTUDIO toolchain.
- Click on File->Switch Workspace->Other and browse to TrueSTUDIO workspace
directory.
- Click on File->Import, select General->'Existing Projects into Workspace'
and then click "Next".
- Browse to the TrueSTUDIO workspace directory and select the project:
- STM3210B-EVAL: to load the project for STM32 Medium-density devices
- STM3210E-EVAL: to load the project for STM32 High-density devices
- STM3210E_EVAL_XL: to load the project for STM32 XL-density devices
- STM32L152_EVAL: to load the project for STM32 Medium-Density Low-Power devices
- STM32L152D-EVAL: to configure the project for STM32 High-Density Low-Power devices
- STM32373C-EVAL: to configure the project for STM32F37xxx devices
- STM32303C-EVAL: to configure the project for STM32F30xxx devices
- Rebuild all project files: Select the project in the "Project explorer"
window then click on Project->build project menu.
- Run program: Select the project in the "Project explorer" window then click
Run->Debug (F11)
************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE******