spi_lib.h
来自「ix2-lib-spi-1_2_0.zip源码」· C头文件 代码 · 共 83 行
H
83 行
/*H**************************************************************************
* NAME: spi_lib.h
*----------------------------------------------------------------------------
* Copyright (c) 2002 Atmel.
*----------------------------------------------------------------------------
* RELEASE: ix2-lib-spi-1_2_0
* REVISION: 1.3
*----------------------------------------------------------------------------
* PURPOSE:
* SPI lib header file
*****************************************************************************/
#ifndef _SPI_LIB_H_
#define _SPI_LIB_H_
/*_____ I N C L U D E S ____________________________________________________*/
#include "config.h"
/*_____ D E F I N I T I O N ________________________________________________*/
#define IRQ_SPI 9
#define SPI_RATIO_2 0x00
#define SPI_RATIO_4 0x01
#define SPI_RATIO_8 0x02
#define SPI_RATIO_16 0x03
#define SPI_RATIO_32 0x80
#define SPI_RATIO_64 0x81
#define SPI_RATIO_128 0x82
#define SPI_RATIO_INVALID 0x83
#define MSK_SPI_SPEN 0x40
#define MSK_SPI_DISABLE 0xBF
#define MSK_CLEAR_CRX 0x7C
#define MSK_SPI_SSDIS 0x20
#define MSK_SPI_MSTR 0x10
#define MSK_SPI_CPOL 0x08
#define MSK_SPI_CPHA 0x04
#define MSK_SPI_SPR2 0x80
#define MSK_SPI_SPR1 0x02
#define MSK_SPI_SPR0 0x01
#define MSK_SPI_SPIF 0x80
#define MSK_SPI_MODF 0x10
#define MSK_SPI_WCOL 0x40
/*_____ M A C R O S ________________________________________________________*/
#define SPI_MODE_MASTER { SPCON |= MSK_SPI_MSTR; }
#define SPI_MODE_SLAVE { SPCON &= ~MSK_SPI_MSTR; }
#define SPI_SET_CPOL { SPCON |= MSK_SPI_CPOL; }
#define SPI_CLR_CPOL { SPCON &= ~MSK_SPI_CPOL; }
#define SPI_SET_CPHA { SPCON |= MSK_SPI_CPOL; }
#define SPI_CLR_CPHA { SPCON &= ~MSK_SPI_CPHA; }
#define SPI_SET_SSDIS { SPCON |= MSK_SPI_SSDIS;}
#define SPI_CLR_SSDIS { SPCON &= ~MSK_SPI_SSDIS;}
#define SPI_ENABLE { SPCON |= MSK_SPI_SPEN; }
#define SPI_DISABLE { SPCON &= ~MSK_SPI_SPEN; }
/*_____ D E C L A R A T I O N ______________________________________________*/
extern volatile bit b_SPI_overrun;
extern volatile bit b_SPI_error;
extern volatile bit b_SPI_transmit_completed;
extern volatile bit b_SPI_busy;
extern volatile unsigned char *SPI_string_ptr;
extern volatile unsigned char SPI_data_nb;
extern volatile unsigned char SPI_data;
bit SPI_set_speed( unsigned char ratio );
unsigned char SPI_transmit_byte(unsigned char to_transmit);
unsigned char SPI_get_data();
void SPI_put_data( unsigned char to_transmit);
void SPI_transmit_burst_polling( unsigned char *ptr_buf, unsigned char nb_data);
bit SPI_transmit_burst_it (Uchar *string_ptr, Uchar data_nb);
#endif /* _SPI_H_ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?