SDG+USBHost(Mouse) Sample

Dependencies:   Sound_Generator USBHost_custom

Fork of SDG_Mouse_Sample by GR-PEACH_producer_meeting

Information

Japanese version is available in lower part of this page.
このページの後半に日本語版が用意されています.

What is this?

This program is a demonstration that sounds the sound by mouse operation by using USBHost(Mouse) and Sound Generator.

Settings

Close JP3 of GR-PEACH.
/media/uploads/RyoheiHagimoto/sdg-mouse.jpg

Operation

operationeffect
Right clickSounds
Left clickReset to base tone (C)
Moves the mouse to the rightLower the sound
Moves the mouse to the leftHigher the sound
Center cursorAdjust the sensitivity.
Reset the reference value in the click.

Others

The default setting of serial communication (baud rate etc.) in mbed is shown the following link.
Please refer to the link and change the settings of your PC terminal software.
The default value of baud rate in mbed is 9600, and this application uses baud rate 9600.
https://developer.mbed.org/teams/Renesas/wiki/GR-PEACH-Getting-Started#install-the-usb-serial-communication


概要

このプログラムは、USBHost(Mouse) + Sound Generatorで、マウス操作による擬似笛デモです。

設定

GR-PEACHのJP3をショートする必要があります。
/media/uploads/RyoheiHagimoto/sdg-mouse.jpg

操作方法

操作内容
右クリック音出力開始
左クリック基準音(ド)にリセット
マウス右移動高音になります
マウス左移動低音になります
センターカーソル音高低の変化量調整(クリックで基準値にリセット)

Others

mbedのシリアル通信(ボーレート等)のデフォルト設定は以下のリンクに示しています。
リンクを参考に、お使いのPCターミナルソフトの設定を変更して下さい。
mbedでのボーレートのデフォルト値は9600で、このサンプルではボーレート9600を使います。
https://developer.mbed.org/teams/Renesas/wiki/GR-PEACH-Getting-Started#install-the-usb-serial-communication

Committer:
mbed_official
Date:
Wed Oct 16 14:15:18 2013 +0100
Revision:
17:c7b1b8451598
Child:
18:37c948cf0dbf
Synchronized with git revision d8c3822c4c4e995cd7eaff0ce99f2d3284dde9cd

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 17:c7b1b8451598 1 /* Copyright (c) 2010-2012 mbed.org, MIT License
mbed_official 17:c7b1b8451598 2 *
mbed_official 17:c7b1b8451598 3 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
mbed_official 17:c7b1b8451598 4 * and associated documentation files (the "Software"), to deal in the Software without
mbed_official 17:c7b1b8451598 5 * restriction, including without limitation the rights to use, copy, modify, merge, publish,
mbed_official 17:c7b1b8451598 6 * distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
mbed_official 17:c7b1b8451598 7 * Software is furnished to do so, subject to the following conditions:
mbed_official 17:c7b1b8451598 8 *
mbed_official 17:c7b1b8451598 9 * The above copyright notice and this permission notice shall be included in all copies or
mbed_official 17:c7b1b8451598 10 * substantial portions of the Software.
mbed_official 17:c7b1b8451598 11 *
mbed_official 17:c7b1b8451598 12 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
mbed_official 17:c7b1b8451598 13 * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
mbed_official 17:c7b1b8451598 14 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
mbed_official 17:c7b1b8451598 15 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
mbed_official 17:c7b1b8451598 16 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
mbed_official 17:c7b1b8451598 17 */
mbed_official 17:c7b1b8451598 18
mbed_official 17:c7b1b8451598 19 #ifndef WANDONGLEINITIALIZER_H
mbed_official 17:c7b1b8451598 20 #define WANDONGLEINITIALIZER_H
mbed_official 17:c7b1b8451598 21
mbed_official 17:c7b1b8451598 22 #include "USBHostConf.h"
mbed_official 17:c7b1b8451598 23
mbed_official 17:c7b1b8451598 24 #ifdef USBHOST_3GMODULE
mbed_official 17:c7b1b8451598 25
mbed_official 17:c7b1b8451598 26 #include <cstdint>
mbed_official 17:c7b1b8451598 27 using std::uint16_t;
mbed_official 17:c7b1b8451598 28 using std::uint32_t;
mbed_official 17:c7b1b8451598 29
mbed_official 17:c7b1b8451598 30 #include "USBHost.h"
mbed_official 17:c7b1b8451598 31 #include "IUSBEnumerator.h"
mbed_official 17:c7b1b8451598 32
mbed_official 17:c7b1b8451598 33 // [TODO] move these declarations to a proper place
mbed_official 17:c7b1b8451598 34 #define WANDONGLE_MAX_SERIAL_PORTS 2
mbed_official 17:c7b1b8451598 35 #define WANDONGLE_MAX_INITIALIZERS 6
mbed_official 17:c7b1b8451598 36
mbed_official 17:c7b1b8451598 37 #define WAN_DONGLE_TYPE_UNKNOWN (-1)
mbed_official 17:c7b1b8451598 38
mbed_official 17:c7b1b8451598 39 class WANDongleInitializer : public IUSBEnumerator
mbed_official 17:c7b1b8451598 40 {
mbed_official 17:c7b1b8451598 41 protected:
mbed_official 17:c7b1b8451598 42 WANDongleInitializer(USBHost* pHost) { m_pHost = pHost; }
mbed_official 17:c7b1b8451598 43 USBHost* m_pHost;
mbed_official 17:c7b1b8451598 44 uint8_t m_serialIntfMap[WANDONGLE_MAX_SERIAL_PORTS];
mbed_official 17:c7b1b8451598 45
mbed_official 17:c7b1b8451598 46 public:
mbed_official 17:c7b1b8451598 47 virtual uint16_t getMSDVid() = 0;
mbed_official 17:c7b1b8451598 48 virtual uint16_t getMSDPid() = 0;
mbed_official 17:c7b1b8451598 49
mbed_official 17:c7b1b8451598 50 virtual uint16_t getSerialVid() = 0;
mbed_official 17:c7b1b8451598 51 virtual uint16_t getSerialPid() = 0;
mbed_official 17:c7b1b8451598 52
mbed_official 17:c7b1b8451598 53 virtual bool switchMode(USBDeviceConnected* pDev) = 0;
mbed_official 17:c7b1b8451598 54
mbed_official 17:c7b1b8451598 55 virtual USBEndpoint* getEp(USBDeviceConnected* pDev, int serialPortNumber, bool tx) {
mbed_official 17:c7b1b8451598 56 return pDev->getEndpoint(m_serialIntfMap[serialPortNumber], BULK_ENDPOINT, tx ? OUT : IN, 0);
mbed_official 17:c7b1b8451598 57 }
mbed_official 17:c7b1b8451598 58
mbed_official 17:c7b1b8451598 59 virtual int getSerialPortCount() = 0;
mbed_official 17:c7b1b8451598 60
mbed_official 17:c7b1b8451598 61 virtual void setVidPid(uint16_t vid, uint16_t pid) = 0;
mbed_official 17:c7b1b8451598 62
mbed_official 17:c7b1b8451598 63 virtual bool parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol) = 0; //Must return true if the interface should be parsed
mbed_official 17:c7b1b8451598 64
mbed_official 17:c7b1b8451598 65 virtual bool useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir) = 0; //Must return true if the endpoint will be used
mbed_official 17:c7b1b8451598 66
mbed_official 17:c7b1b8451598 67 virtual int getType() = 0;
mbed_official 17:c7b1b8451598 68
mbed_official 17:c7b1b8451598 69 virtual uint8_t getSerialIntf(int index) { return m_serialIntfMap[index]; }
mbed_official 17:c7b1b8451598 70 };
mbed_official 17:c7b1b8451598 71
mbed_official 17:c7b1b8451598 72 #endif /* USBHOST_3GMODULE */
mbed_official 17:c7b1b8451598 73
mbed_official 17:c7b1b8451598 74 #endif