Gogo Board: Firmware USB – II

Encontramos neste outro artigo, uma forma de utilizar a comunicação USB, porém numa forma um pouco mais aprimorada, ou seja, além do envio e recebimento de informações, teremos um nível de interação de acordo com as teclas pressionadas no teclado do computador:

#include "bootloader.h"
#case
#include
#use i2c(MASTER,sda=PIN_B0,scl=PIN_B1,force_hw,slow)

void main(){
int msg;
BYTE i;
usb_init_cs();

do
{
usb_task();

if (usb_enumerated())
{
if (msg==0){
msg=1;
}
if (usb_cdc_kbhit())
{
i = toupper(usb_cdc_getc());

if (i == 'R')
{
printf(usb_cdc_putc, "Sending a R Back");
}

if (i == 'W')
{
printf(usb_cdc_putc, "Sending a W Back");
}
}
}
else {
if (msg==1){
msg=0;
}
}
} while (TRUE);
}

Assim como anteriormente, deveremos utilizar o HyperTerminal ou programa similar para verificar o resultado.

Anúncios