Proteus仿真74hc595无输出

2019-07-15 20:33发布

不论我怎么给,串行输入,输出就老是低电平。实在找不出问题在哪了。程序如下。
#include <REG52.h>
#include <intrins.h>
#define uchar unsigned char
sbit sh_cp=P1^0;
sbit    ds=P1^1;
sbit st_cp=P1        ^2;
/*delay*/
void delay(uchar t)
{
while(--t);
}

/*send data*/
void s_d()
{
uchar i;
for(i=0;i<8;i++)
{
  
  sh_cp=0;
  _nop_();
  ds=1;//让输入全是1
  sh_cp=1;
  _nop_();

}

}
void s_d_s()
{
st_cp=0;
_nop_();
st_cp=1;
_nop_();

}

/*main*/
void main()
{
sh_cp=0;
st_cp=0;
s_d();
s_d_s();
delay(200);
s_d();
s_d_s();
while(1);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。