瑞萨sk-s7g2之旅(2)

看了好几天的技术文档,我感觉快崩溃了,毕竟是第一次玩单片机,还好文档和一些例程足够有效,今天弄一个通过USB接口来在PC端打印简单的字母。效果如下图。



首先我们先配置一些选项。


其中我们需要更改


之后在src文件夹中的线程文件中添加如下代码:



#include "usb_thread0.h"
/*author yk */
/* USB Thread entry function */
extern ULONG num_lock_flag;
extern ULONG caps_lock_flag;
void usb_thread0_entry(void)
{
    /* TODO: add your own code here */

    UX_SLAVE_DEVICE*    device;
    UX_SLAVE_INTERFACE* interface;
    UX_SLAVE_CLASS_HID* hid;

    UX_SLAVE_CLASS_HID_EVENT hid_event;
    UCHAR                    keyborad;

    device=&_ux_system_slave->ux_system_slave_device;//获取设备
    keyborad=0x04;
   ux_utility_memory_set(&hid_event,0,sizeof(UX_SLAVE_CLASS_HID_EVENT));//
    while (1)
    {
        while(device->ux_slave_device_state!=UX_DEVICE_CONFIGURED)   //是否等于配置的端口
        {
        tx_thread_sleep (10);

        }
        while(device->ux_slave_device_state==UX_DEVICE_CONFIGURED)
        {

            interface =  device->ux_slave_device_first_interface;
            hid = interface->ux_slave_interface_class_instance;
            tx_thread_sleep(200);
            hid_event.ux_device_class_hid_event_length=8;//插入一个键
            hid_event.ux_device_class_hid_event_buffer[0] = 0;
            hid_event.ux_device_class_hid_event_buffer[1] = 0;
            hid_event.ux_device_class_hid_event_buffer[2] = keyborad;

            ux_device_class_hid_event_set(hid,&hid_event);//设置键盘事件
            hid_event.ux_device_class_hid_event_buffer[2] = 0;
             hid_event.ux_device_class_hid_event_length = 8;
             ux_device_class_hid_event_set(hid, &hid_event);
             if(keyborad!=(0x04+26))
             {
                 keyborad++;
             }
             else
             {
                 keyborad=0x04;
             }
        }
    }
}

然后我们将有回调功能的hid函数文件进行添加。

我打算截图,如果你看到这里,并想要尝试这个程序,你或许会诅咒我,但是没办法,就是这么皮。



欢迎吐槽,累了好久调皮一下。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值