如代码中IO数据入口也就是ser直接赋值0或1行不行,我看别人都是用位操作赋值,ser本身只接收高电平或低电平,直接等于0或1是不是可以?
我看其他寄存器可位寻址,中也是可以单个“”位"直接赋值的,比如定时器中,EA0=0; TX0=1,这跟SER=0是不是一个道理?
函数之前 已经声明了 sbit ser=P3^5 请教。结果LED点阵不亮
int main()
{
_1sck=P3^6;
_8rck=P3^4;
sbit ser=P3^5//定义ser为位操作地址
{
void _74HC595write()
{
ser=0;
_8sck=0;
_1rck=0;
ser=1;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
ser=0;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
ser=1;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
ser=0;//io口输入一位
_1rck=0;//上升沿1移位
_1rck=0;//复位
ser=1;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
ser=0;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
ser=0;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
ser=0;//io口输入一位
_1rck=1;//上升沿1移位
_1rck=0;//复位
_8sck=1;//移满8位触发并行输出
_1rck=0;
}
whle(1)
{
_74HC595write();
}
}