标题:
[求助]请教,MC9S08GT8A的SPI模块标志位应如何清零?
[打印本页]
作者:
BHLT123
时间:
2007-10-15 10:47
标题:
[求助]请教,MC9S08GT8A的SPI模块标志位应如何清零?
不知道什么原因,SPIS_SPTEF一直是1,按照英文数据书上的方法无法实现将其清0.
初始化程序如下:
void SPI_Init(void)
{
unsigned char SPItmp;
SPIC1 = 0x54; //禁止SPI中断;
//使能SPI功能;
//作为主机;
SPIC2 = 0x00;
SPIBR = 0x00; //波特率 10M/1/2=5M
while(SPIS_SPTEF == 0)
{
}
SPID = 0;
PTEDD_PTEDD2 = 1; //释放SPI模块的SS脚,并作为SPI器件的片选脚;
PTED_PTED2 = 0; //SS脚先置高电平
}
作者:
strongchen
时间:
2007-10-15 11:14
你是如何将SPTEF清零的?
作者:
BHLT123
时间:
2007-10-15 13:27
没办法清0,我用你在另外一个帖子上的程序http://bbs.eccn.com/dispbbs.asp?boardID=3&RootID=121156&ID=121156试了一下,也不行
作者:
strongchen
时间:
2007-10-15 15:11
我还是要重复在那个帖子里的一句话:
实际上SPTEF并不是发送完成标志,而是发送缓冲空标志。如果没有数据正在发送,数据从缓冲转移到发送移位寄存器的速度是非常快的。所以有可能在调试过程中看不到SPTEF变为0的状态。
作者:
BHLT123
时间:
2007-10-15 15:26
谢谢,问题已解决~
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0