|
DSP F28027 通过SPI用MAX6951驱动八段数码管 通信总是会出错???特贴3段代码,请指教。。。
void spi_init()
{
SpiaRegs.SPICCR.all =0x000F; // Reset on, rising edge, 16-bit char bits
SpiaRegs.SPICTL.all =0x0006; // Enable master mode, normal phase,不延迟
// enable talk, and SPI int disabled.
SpiaRegs.SPIBRR =0x007F;
SpiaRegs.SPICCR.all =0x008F; // Relinquish SPI from Reset
}
void spi_xmit(Uint16 a)
{
if(Spi_TxReady() == 1)
SpiaRegs.SPITXBUF=a;
while(Spi_TxReady()!=1) ;
}
void led_input(Uint16 i)
{
GpioDataRegs.GPACLEAR.bit.GPIO7 = 1;
DELAY_US(0.012);
spi_xmit(i);
DELAY_US(10); //最最主要的是这里怎么只能延时10us,一旦改动,就不会亮了,这个值是我凑出来的
GpioDataRegs.GPASET.bit.GPIO7 = 1;
DELAY_US(0.5);
} |
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|