近日在摸索C51单片机的模拟串口功能:
SendData(unsigned char inch) 此函数功能已通过验证(由于需要使用3个模拟发送串口,为简化代码,想通过参数选择I/O口)
再试想通过类似SendData(unsigned char inch,sbit TX)但这里应该不正确,这里的TX要么只能为0或者为1,应该是指向地址的变量参数才对,但我不知道怎么搞.
我再换思想SendData(unsigned char inch,iunsigned char IO_NO )
{
if (IO_NO==17) TX=P1^7;
if (IO_NO==27) TX=P2^7;
.......
}
还是没有用,TX还是等于第一次定义的sbit P3^1,可有什么方法解决通过函数的参数供我选择批定的I/O口? |