初级会员

- 积分
- 170
- 金钱
- 170
- 注册时间
- 2014-11-16
- 在线时间
- 32 小时
|
1金钱
[mw_shl_code=c,true]void SPI1_Init(void)
{
RCC->APB2ENR|=1<<2; //PORTA时钟使能
RCC->APB2ENR|=1<<12; //SPI1时钟使能
//
// //这里只针对SPI口初始化
GPIOA->CRL&=0X000FFFFF;
GPIOA->CRL|=0XBBB00000;//PA5.6.7复用
// GPIOA->ODR|=0X7<<5; //PA5.6.7上拉
GPIOA->ODR|=1<<5;
GPIOA->ODR|=1<<6;
// GPIOA->ODR|=1<<7;
SPI1->CR1|=0<<10;//全双工模式
SPI1->CR1|=1<<9; //软件nss管理
SPI1->CR1|=1<<8;
SPI1->CR1|=1<<2; //SPI主机
SPI1->CR1|=0<<11;//8bit数据格式
SPI1->CR1|=1<<1; //空闲模式下SCK为1 CPOL=1
SPI1->CR1|=1<<0; //数据采样从第二个时间边沿开始,CPHA=1
SPI1->CR1|=7<<3; //Fsck=Fcpu/256
SPI1->CR1|=0<<7; //MSBfirst
SPI1->CR1|=1<<6; //SPI设备使能
SPI1_ReadWriteByte(0xff);//启动传输
}[/mw_shl_code]
只要是pa7一开上拉,程序就跑飞了,全程序中没有其他地方用到pa7,这个是为什么啊,请指教
|
|