lib_spi.h

来自「ARM9200开发板的ROM boot程序源码1.0」· C头文件 代码 · 共 78 行

H
78
字号
//*---------------------------------------------------------------------------
//*      ATMEL Microcontroller Software Support  -  ROUSSET  -
//*---------------------------------------------------------------------------
//* The software is delivered "AS IS" without warranty or condition of any
//* kind, either express, implied or statutory. This includes without
//* limitation any warranty or condition with respect to merchantability or
//* fitness for any particular purpose, or against the infringements of
//* intellectual property rights of others.
//*-----------------------------------------------------------------------------
//* File Name           : lib_spi.h
//* Object              : Serial Peripheral Interface Library Header.
//*
//* 1.0 21/01/02 HI    : Creation
//*---------------------------------------------------------------------------

#ifndef lib_spi_h
#define lib_spi_h

#include    "periph/spi/spi.h"

typedef struct _AT91S_SPIDesc
{
    AT91PS_SPI         		spi_base ;
    const AT91PS_PIO        pio_base ;
    u_char             		periph_id ;
    u_char                  pin_spck ;
    u_char                  pin_miso ;
    u_char                  pin_mosi ;
    u_char                  pin_npcs[4] ;
} AT91S_SPIDesc, *AT91PS_SPIDesc ;


__inline void AT91F_SpiSetCr(AT91PS_SPI  pSPI, int cr)
{
	pSPI->SP_CR = cr;
}

__inline void AT91F_SpiSetMr (AT91PS_SPI pSPI, int mode )
{
	pSPI->SP_MR = mode  ;
}

__inline int AT91F_SpiGetMr (const AT91PS_SPI pSPI)
{
	return(pSPI->SP_MR);
}

__inline int AT91F_SpiGetChar (const AT91PS_SPI pSPI)
{
    return((pSPI->SP_RDR) & 0xFFFF);
}

__inline void AT91F_SpiSendChar (AT91PS_SPI pSPI, int character )
{
    pSPI->SP_TDR = (character & 0xFFFF);
}


__inline int AT91F_SpiGetStatus (const AT91PS_SPI pSPI)
{
    return(pSPI->SP_SR);
}


__inline int AT91F_SpiSetIer(const AT91PS_SPI pSPI, int its)
{
    pSPI->SP_IER = its;
}


extern void AT91F_SpiOpen  ( const AT91PS_APMC , const AT91PS_SPIDesc , u_int  );
extern void AT91F_SpiClose ( const AT91PS_APMC , const AT91PS_SPIDesc );


#endif /* lib_spi_h */


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?