[MSP430]

用430置AS5048零点的问题

[复制链接]
661|0
手机看帖
扫描二维码
随时随地手机跟帖
kolokolo|  楼主 | 2020-1-6 09:12 | 显示全部楼层 |阅读模式
本帖最后由 kolokolo 于 2020-1-6 09:13 编辑

用msp430f149读角度编码器AS5048,io模拟SPI。现在能读取数据,但是设置零点的时候始终不行。是操作顺序错了吗?

  if(mstate == SETZERO)//设置当前角度为0°
     {  
       mstate = 0;
       zerodata = readreg(CMD_ANGLE);//读取当前角度值

       hdata = zerodata & 0x3fc0;//高8位   
       hdata >>= 6;
       ldata = zerodata & 0x003f;//低6位

       unsigned int eventemp = parity_even(hdata);//偶校验操作
       hdata |= eventemp;

       eventemp = parity_even(ldata);
       ldata |= eventemp;

       writereg(CMD_ProgramControl,0x0001);//编程位enable
       delay(10);

       whres1 = writereg(CMD_OTPHigh,hdata);//写入高位
       delay(10);

       whres2 = writereg(CMD_OTPLow,hdata);//写入低位
       delay(100);
    }




使用特权

评论回复

相关帖子

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

本版积分规则

27

主题

74

帖子

0

粉丝