MSP430驱动74HC595

2019-03-24 09:32发布

用MSP430驱动74HC595,下面是主程序,P2.0是串行数据输入,P2.1是RCK,P2.2是SCK,假设的串行输入为01010101,为什么在HC595的并行输出几个脚上测不到电压呢,是串行数据没进去还是并行数据没出来呢?
void main()
{
  WDTCTL=WDTPW+WDTHOLD;
  Clock_Init();
  unsigned int i = 8;
  P2SEL &= ~ (BIT0+BIT1+BIT2);
  P2DIR |= BIT0+BIT1+BIT2;
  P2OUT &= ~(BIT1+BIT2);
  for (i=0;i<8;i++)
  {

    P2OUT &= ~BIT2;
    if((DATA & BIT0) == BIT0)
      P2OUT |= BIT0;
    else
      P2OUT &= ~BIT0;
    DATA >>= 1;
    P2OUT |= BIT2; // 移位寄存器上升沿脉冲

  }
  P2OUT &= ~ BIT1;     //存储上升沿脉冲
  _NOP();
  P2OUT |=   BIT1;
}
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
wy75612457
2019-03-24 19:19
考虑下电路有没有问题

一周热门 更多>

相关问题

    相关文章