📄 test_spi.c
字号:
#include "AT91RM9200.h"
#include "lib_AT91RM9200.h"
#include "def.h"
#include "console.h"
#include "SPI.h"
static void InitSpiPio( void )
{
// Enable PIOA clock for input
AT91F_PMC_EnablePeriphClock( AT91C_BASE_PMC , ( ( unsigned int ) 1 << AT91C_ID_PIOA ) );
// Enable PIOB clock for input
AT91F_PMC_EnablePeriphClock( AT91C_BASE_PMC , ( ( unsigned int ) 1 << AT91C_ID_PIOB ) );
// Enable PIOB clock for input
AT91F_PMC_EnablePeriphClock( AT91C_BASE_PMC , ( ( unsigned int ) 1 << AT91C_ID_PIOC ) );
//MISO
AT91F_PIO_CfgInput( AT91C_BASE_PIOA , AT91C_PIO_PA0 );
//MOSI, SPCK, nPCS0, nPCS1
AT91F_PIO_CfgOutput( AT91C_BASE_PIOA , AT91C_PIO_PA1 | AT91C_PIO_PA2 | AT91C_PIO_PA3 | AT91C_PIO_PA4 );
AT91F_PIO_SetOutput( AT91C_BASE_PIOA , AT91C_PIO_PA1 | AT91C_PIO_PA2 | AT91C_PIO_PA3 | AT91C_PIO_PA4 );
SPCS0_H() ;
SPCS1_DS() ;
}
/**************************************************************/
void SPI_ADS7843_Init( void )
{
InitSpiPio() ;
//BUSY, nPENIRQ input with pull-up
AT91F_PIO_CfgInput( AT91C_BASE_PIOB , AT91C_PIO_PB10 | AT91C_PIO_PB11 );
AT91F_PIO_CfgPullup( AT91C_BASE_PIOB , AT91C_PIO_PB10 | AT91C_PIO_PB11 );
}
void SPI_MCP2510_Init( void )
{
InitSpiPio() ;
//nINT input with pull-up
AT91F_PIO_CfgInput( AT91C_BASE_PIOC , AT91C_PIO_PC0 );
AT91F_PIO_CfgPullup( AT91C_BASE_PIOC , AT91C_PIO_PC0 );
}
/**************************************************************/
void Test_SPI( void )
{
printf( "SPI device test\n" );
/*
InitSpiPio();
SPCS0_DS();
SPCS1_DS();
DOUT_H();
SPCK_H();
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -