ccbv 发表于 2011-6-3 09:37:50

关于2812的串行通信的struct and union问题

struct angle_struct{
                      unsigned int a:8;
                      unsigned int b:8;
                      unsigned int c:8;
                      unsigned int d:8;
};
union angle_unon{
                      double all;
                                          struct angle_struct bit;
};
union angle_unon angle_main;
这是初始定义
angle_main.all=theta_raw;
       already_flag=0;

       while(!already_flag)
       {
             if((SciaTx_Ready()==1))
               {
                  switch(j)
                        {
                             case 0:{
                                         Sci_VarRx=angle_main.bit.a;
                                         SciaRegs.SCITXBUF=Sci_VarRx;
                                         j++;
                                         break;
                                       }
                             case 1:{
                                         Sci_VarRx=angle_main.bit.b;
                                         SciaRegs.SCITXBUF = Sci_VarRx;
                                         j++;
                                         break;
                                      }
                             case 2:{
                                         Sci_VarRx=angle_main.bit.c;
                                         SciaRegs.SCITXBUF = Sci_VarRx;
                                         j++;
                                         break;
                                       }
                             case 3:{
                                         Sci_VarRx=angle_main.bit.d;
                                         SciaRegs.SCITXBUF = Sci_VarRx;
                                         j++;
                                         break;
                                       }
                          }
                          if(j==4)
                          {
                              already_flag=1;
                                  j=0;
                          }
                        }
                }
                KickDog();
        }
要发送的数据是 theta_raw。请问,数据究竟发送出去了没有?那么Sci_VarRx里面究竟是什么?Sci_VarRx=angle_main.bit.d;
这句话的意思是什么?
在线等。
页: [1]
查看完整版本: 关于2812的串行通信的struct and union问题