中级会员
 
- 积分
- 217
- 金钱
- 217
- 注册时间
- 2012-11-12
- 在线时间
- 0 小时
|

楼主 |
发表于 2013-3-21 11:18:21
|
显示全部楼层
回复【2楼】正点原子:
---------------------------------
还有 用keil编程 device选f103的话下面的程序是可以运行的,系统时钟就是72MHZ
while(1)
{
if(Tx_Idx=BufferSize)
{
GPIO_SetBits(GPIOB, GPIO_Pin_12);
Tx_Idx=0;
}
if(Rx_Idx=BufferSize)
Rx_Idx=0;
while(Tx_Idx<BufferSize)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_12);
/* 等待 SPI2 发送缓冲空 */
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET);
/* SPI2 发送数据 */
SPI_I2S_SendData(SPI2, SPI2_Buffer_Tx[Tx_Idx]);
SPI_I2S_ClearFlag(SPI2,SPI_I2S_FLAG_TXE) ;
/* 等待 SPI2 接收数据完毕 */
while(SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET);
/* 读出 SPI2 接收的数据 */
if (SPI_I2S_ReceiveData(SPI2)!=0xFF)
SPI2_Buffer_Rx[Rx_Idx] = SPI_I2S_ReceiveData(SPI2);
SPI_I2S_ClearFlag(SPI2,SPI_I2S_FLAG_RXNE) ;> |
|