projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix broken doxygen reference in last commit.
[pub/USBasp.git]
/
Demos
/
Device
/
MIDI
/
MIDI.c
diff --git
a/Demos/Device/MIDI/MIDI.c
b/Demos/Device/MIDI/MIDI.c
index
c0e4f9d
..
b6b43df
100644
(file)
--- a/
Demos/Device/MIDI/MIDI.c
+++ b/
Demos/Device/MIDI/MIDI.c
@@
-36,17
+36,11
@@
\r
#include "MIDI.h"
\r
\r
\r
#include "MIDI.h"
\r
\r
-/* Project Tags, for reading out using the ButtLoad project */
\r
-BUTTLOADTAG(ProjName, "LUFA MIDI App");
\r
-BUTTLOADTAG(BuildTime, __TIME__);
\r
-BUTTLOADTAG(BuildDate, __DATE__);
\r
-BUTTLOADTAG(LUFAVersion, "LUFA V" LUFA_VERSION_STRING);
\r
-
\r
/* Scheduler Task List */
\r
TASK_LIST
\r
{
\r
/* Scheduler Task List */
\r
TASK_LIST
\r
{
\r
- {
Task: USB_USBTask , TaskStatus:
TASK_STOP },
\r
- {
Task: USB_MIDI_Task , TaskStatus:
TASK_STOP },
\r
+ {
.Task = USB_USBTask , .TaskStatus =
TASK_STOP },
\r
+ {
.Task = USB_MIDI_Task , .TaskStatus =
TASK_STOP },
\r
};
\r
\r
/** Main program entry point. This routine configures the hardware required by the application, then
\r
};
\r
\r
/** Main program entry point. This routine configures the hardware required by the application, then
\r
@@
-64,7
+58,7
@@
int main(void)
/* Hardware Initialization */
\r
Joystick_Init();
\r
LEDs_Init();
\r
/* Hardware Initialization */
\r
Joystick_Init();
\r
LEDs_Init();
\r
-
HWB
_Init();
\r
+
Buttons
_Init();
\r
\r
/* Indicate USB not ready */
\r
UpdateStatus(Status_USBNotReady);
\r
\r
/* Indicate USB not ready */
\r
UpdateStatus(Status_USBNotReady);
\r
@@
-80,7
+74,7
@@
int main(void)
}
\r
\r
/** Event handler for the USB_Connect event. This indicates that the device is enumerating via the status LEDs. */
\r
}
\r
\r
/** Event handler for the USB_Connect event. This indicates that the device is enumerating via the status LEDs. */
\r
-
EVENT_HANDLER(USB_Connect
)
\r
+
void EVENT_USB_Connect(void
)
\r
{
\r
/* Start USB management task */
\r
Scheduler_SetTaskMode(USB_USBTask, TASK_RUN);
\r
{
\r
/* Start USB management task */
\r
Scheduler_SetTaskMode(USB_USBTask, TASK_RUN);
\r
@@
-92,7
+86,7
@@
EVENT_HANDLER(USB_Connect)
/** Event handler for the USB_Disconnect event. This indicates that the device is no longer connected to a host via
\r
* the status LEDs, disables the sample update and PWM output timers and stops the USB and MIDI management tasks.
\r
*/
\r
/** Event handler for the USB_Disconnect event. This indicates that the device is no longer connected to a host via
\r
* the status LEDs, disables the sample update and PWM output timers and stops the USB and MIDI management tasks.
\r
*/
\r
-
EVENT_HANDLER(USB_Disconnect
)
\r
+
void EVENT_USB_Disconnect(void
)
\r
{
\r
/* Stop running audio and USB management tasks */
\r
Scheduler_SetTaskMode(USB_MIDI_Task, TASK_STOP);
\r
{
\r
/* Stop running audio and USB management tasks */
\r
Scheduler_SetTaskMode(USB_MIDI_Task, TASK_STOP);
\r
@@
-105,7
+99,7
@@
EVENT_HANDLER(USB_Disconnect)
/** Event handler for the USB_ConfigurationChanged event. This is fired when the host set the current configuration
\r
* of the USB device after enumeration - the device endpoints are configured and the MIDI management task started.
\r
*/
\r
/** Event handler for the USB_ConfigurationChanged event. This is fired when the host set the current configuration
\r
* of the USB device after enumeration - the device endpoints are configured and the MIDI management task started.
\r
*/
\r
-
EVENT_HANDLER(USB_ConfigurationChange
d)
\r
+
void EVENT_USB_ConfigurationChanged(voi
d)
\r
{
\r
/* Setup MIDI stream endpoints */
\r
Endpoint_ConfigureEndpoint(MIDI_STREAM_OUT_EPNUM, EP_TYPE_BULK,
\r
{
\r
/* Setup MIDI stream endpoints */
\r
Endpoint_ConfigureEndpoint(MIDI_STREAM_OUT_EPNUM, EP_TYPE_BULK,
\r
@@
-134,14
+128,14
@@
TASK(USB_MIDI_Task)
Endpoint_SelectEndpoint(MIDI_STREAM_IN_EPNUM);
\r
\r
/* Check if endpoint is ready to be written to */
\r
Endpoint_SelectEndpoint(MIDI_STREAM_IN_EPNUM);
\r
\r
/* Check if endpoint is ready to be written to */
\r
- if (Endpoint_
ReadWriteAllowed
())
\r
+ if (Endpoint_
IsINReady
())
\r
{
\r
/* Get current joystick mask, XOR with previous to detect joystick changes */
\r
uint8_t JoystickStatus = Joystick_GetStatus();
\r
uint8_t JoystickChanges = (JoystickStatus ^ PrevJoystickStatus);
\r
\r
{
\r
/* Get current joystick mask, XOR with previous to detect joystick changes */
\r
uint8_t JoystickStatus = Joystick_GetStatus();
\r
uint8_t JoystickChanges = (JoystickStatus ^ PrevJoystickStatus);
\r
\r
- /* Get
HWB status - if set
use channel 10 (percussion), otherwise use channel 1 */
\r
- uint8_t Channel = ((
HWB_GetStatus()
) ? MIDI_CHANNEL(10) : MIDI_CHANNEL(1));
\r
+ /* Get
board button status - if pressed
use channel 10 (percussion), otherwise use channel 1 */
\r
+ uint8_t Channel = ((
Buttons_GetStatus() & BUTTONS_BUTTON1
) ? MIDI_CHANNEL(10) : MIDI_CHANNEL(1));
\r
\r
if (JoystickChanges & JOY_LEFT)
\r
SendMIDINoteChange(0x3C, (JoystickStatus & JOY_LEFT), 0, Channel);
\r
\r
if (JoystickChanges & JOY_LEFT)
\r
SendMIDINoteChange(0x3C, (JoystickStatus & JOY_LEFT), 0, Channel);
\r
@@
-166,8
+160,8
@@
TASK(USB_MIDI_Task)
Endpoint_SelectEndpoint(MIDI_STREAM_OUT_EPNUM);
\r
\r
/* Check if endpoint is ready to be read from, if so discard its (unused) data */
\r
Endpoint_SelectEndpoint(MIDI_STREAM_OUT_EPNUM);
\r
\r
/* Check if endpoint is ready to be read from, if so discard its (unused) data */
\r
- if (Endpoint_
ReadWriteAllow
ed())
\r
- Endpoint_Clear
CurrentBank
();
\r
+ if (Endpoint_
IsOUTReceiv
ed())
\r
+ Endpoint_Clear
OUT
();
\r
}
\r
\r
/** Function to manage status updates to the user. This is done via LEDs on the given board, if available, but may be changed to
\r
}
\r
\r
/** Function to manage status updates to the user. This is done via LEDs on the given board, if available, but may be changed to
\r
@@
-207,7
+201,7
@@
void UpdateStatus(uint8_t CurrentStatus)
void SendMIDINoteChange(const uint8_t Pitch, const bool OnOff, const uint8_t CableID, const uint8_t Channel)
\r
{
\r
/* Wait until endpoint ready for more data */
\r
void SendMIDINoteChange(const uint8_t Pitch, const bool OnOff, const uint8_t CableID, const uint8_t Channel)
\r
{
\r
/* Wait until endpoint ready for more data */
\r
- while (!(Endpoint_ReadWriteAllowed()));
\r
+ while (!(Endpoint_
Is
ReadWriteAllowed()));
\r
\r
/* Check if the message should be a Note On or Note Off command */
\r
uint8_t Command = ((OnOff)? MIDI_COMMAND_NOTE_ON : MIDI_COMMAND_NOTE_OFF);
\r
\r
/* Check if the message should be a Note On or Note Off command */
\r
uint8_t Command = ((OnOff)? MIDI_COMMAND_NOTE_ON : MIDI_COMMAND_NOTE_OFF);
\r
@@
-221,5
+215,5
@@
void SendMIDINoteChange(const uint8_t Pitch, const bool OnOff, const uint8_t Cab
Endpoint_Write_Byte(MIDI_STANDARD_VELOCITY);
\r
\r
/* Send the data in the endpoint to the host */
\r
Endpoint_Write_Byte(MIDI_STANDARD_VELOCITY);
\r
\r
/* Send the data in the endpoint to the host */
\r
- Endpoint_Clear
CurrentBank
();
\r
+ Endpoint_Clear
IN
();
\r
}
\r
}
\r