本帖最后由 EDA3rd 于 2017-8-15 00:19 编辑
结构体怎么能执行呢?
static USB_ClassInfo_HID_Host_t Keyboard_HID_Interface = {
.Config = {
.DataINPipeNumber = 1,
.DataINPipeDoubleBank = false,
.DataOUTPipeNumber = 2,
.DataOUTPipeDoubleBank = false,
.HIDInterfaceProtocol = HID_CSCP_KeyboardBootProtocol,
.PortNumber = 0,
},
};
static inline void HID_Host_USBTask(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo) ATTR_NON_NULL_PTR_ARG(1);
static inline void HID_Host_USBTask(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo)
{
(void)HIDInterfaceInfo;
}
int main(void)
{
SetupHardware();
DEBUGOUT("Keyboard Host Demo running.
");
for (;; ) {
KeyboardHost_Task();
HID_Host_USBTask(&Keyboard_HID_Interface);
USB_USBTask(Keyboard_HID_Interface.Config.PortNumber, USB_MODE_Host);
}
}
注意 HID_Host_USBTask(&Keyboard_HID_Interface); 这句代码,传递参数是结构体指针,执行 HID_Host_USBTask 就等于执行 (void) &Keyboard_HID_Interface; 不会跑飞吗?事实上板子运行没出现什么问题
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>