智能车制作
标题:
关于SPI
[打印本页]
作者:
六个柚子
时间:
2013-2-20 17:33
标题:
关于SPI
void SPI0_Init(void)
{
SIM_SCGC6|=SIM_SCGC6_DSPI0_MASK;//打开spi0时钟
PORTC_PCR4=PORT_PCR_MUX(2);//PC4,SPI0 PCS0
PORTC_PCR5=PORT_PCR_MUX(2);//PC5,SPI0 SCK
PORTC_PCR6=PORT_PCR_MUX(2);//PC6,SPI0 SOUT
SPI0_MCR|=SPI_MCR_MSTR_MASK;//主机模式
SPI0_MCR|=SPI_MCR_DCONF(0x0);//SPI
SPI0_MCR|=SPI_MCR_CONT_SCKE_MASK;//使能串行时钟 SCK连续运行
SPI0_MCR|=SPI_MCR_PCSIS(1);//PCS0低电平有效
SPI0_MCR&=~SPI_MCR_MDIS_MASK;//使能DSPI时钟
SPI0_MCR|=SPI_MCR_CLR_TXF_MASK; //清除发送队列FIFO计数器
SPI0_MCR|=SPI_MCR_CLR_RXF_MASK;//清除接收队列FIFO计数器
SPI0_MCR&=~SPI_MCR_HALT_MASK;//启动SPI模块
SPI0_CTAR0&=~SPI_CTAR_DBR_MASK;//原倍波特率
SPI0_CTAR0=SPI_CTAR_FMSZ(7);//帧大小为8bit
SPI0_CTAR0|=SPI_CTAR_PBR(2);//预分频12M
SPI0_CTAR0|=SPI_CTAR_BR(2);//最终分频2MHz
}
void SPI0_Wt(unsigned char cmd)
{
SPI0_PUSHR=cmd;
while((SPI0_SR&SPI_SR_TCF_MASK)==0);//等待传送完成
SPI0_SR|=SPI_SR_TCF_MASK;//清除标志
}
求教,写数了,sck却没有输出,是设置有问题吗?
作者:
六个柚子
时间:
2013-2-20 19:07
顶起来
作者:
信雪神话
时间:
2013-2-21 11:14
什么芯片的?
作者:
六个柚子
时间:
2013-2-21 11:32
信雪神话 发表于 2013-2-21 11:14
什么芯片的?
K60
作者:
dlyt03
时间:
2013-2-21 13:59
顶个,正好获得一块K60,学习下!!
作者:
传达666
时间:
2013-2-23 01:34
有源代码就好了
作者:
猎鹰2013
时间:
2013-6-21 18:02
请问怎么知道SPI模块初始化成功与否啊 最近在弄SPI 郁闷着 多谢多谢PI
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2