打印

求助! PIC18 USB例程编译错误

[复制链接]
1545|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
aixiaofan1314|  楼主 | 2013-3-13 09:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 aixiaofan1314 于 2013-3-14 08:30 编辑

编译器版本信息:MAPLAB 8.88     PICC-18_V9.80_mcc18.exe
器件选择PIC18F4550

使用PIC usb例程,编译时出现错误。错误信息如下:
pic18 usb.c: USBCtrlTrfSetupHandler()
   365:        wCount._word = 0;
                     ^ (196) struct/union required



错误位置代码:
//------------------------------------字定义类型
typedef union _WORD
{
    word _word;
    struct
    {
        byte byte0;
        byte byte1;
    };
    struct
    {
        BYTE Byte0;
        BYTE Byte1;
    };
    struct
    {
        BYTE LowB;
        BYTE HighB;
    };
    struct
    {
        byte v[2];
    };
} WORD;
#define LSB(a)      ((a).v[0])  //定义低字节(如果是WORD型的可以直接用这个替代高低字节)
#define MSB(a)      ((a).v[1])  //定义高字节

WORD wCount;                   // Data counter  数据字节计数器

/*******************************
* USB控制传输设置处理函数
********************************/
void USBCtrlTrfSetupHandler()
{
   ctrl_trf_state = WAIT_SETUP;  // USB控制传输状态为等待
   ctrl_trf_session_owner = MUID_NULL; //此时USB EP0端点数据不归任何类所有
   wCount._word = 0;  //字节计数器清0,用于记录传送数据的大小 <----此行错误
   USBCheckStdRequest();  //检测USB的标准请求

   if(ctrl_trf_session_owner == MUID_NULL)  // 如果上边没有请求,或请求不存在,检测HID请求
   {
     USBCheckHIDRequest();  // USB HID请求检测
   }//end if
   
   USBCtrlEPServiceComplete();  // 控制传输完成
}//end USBCtrlTrfSetupHandler()


小弟新手上路,请各位大侠不吝指教~~~~~~~~~~~~~~~~~~~~~~~~~~
谢谢!



沙发
yewuyi| | 2013-3-14 09:13 | 只看该作者
从来没见过编译器这么提示错误的:

使用PIC usb例程,编译时出现错误。错误信息如下:
pic18 usb.c: USBCtrlTrfSetupHandler()
   365:        wCount._word = 0;
                     ^ (196) struct/union required

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝