TI 8位DA TLC5620的驱动程序
sbit SPI_CLK=P3^3;sbit SPI_DATA=P3^4;
sbit CS_DA=P1^2;
void da5620(uchar da)
{
uchar i;
ACC=B0010_0000;
CS_DA=1;
for (i=3;i>0;i--)
{
ACC+=ACC; //CY=ACC。7
SPI_DATA=CY;
SPI_CLK=1;
/*根据晶体加_nop()_*/
SPI_CLK=0;
}
ACC=da;
for (i=8;i>0;i--)
{
ACC+=ACC; //CY=ACC。7
SPI_DATA=CY;
SPI_CLK=1;
/*根据晶体加_nop()_*/
SPI_CLK=0;
}
CS_DA=0;
_nop_();_nop_();
CS_DA=1;
}
**注意,i一定要用减量,这样汇编才能升成DJNZ Rx,XXX类的代码
全部都是寄存器操作。
页:
[1]