📄 fm1702spi.h
字号:
/* FM1702使用spi方式发送与接收*/
#ifndef _fm1702spi_INCLUDED_
#define _fm1702spi_INCLUDED_
#define MOSI PORTB.5
#define NSS PORTB.4
#define cs PORTB.4
#define RSTPT PORTB.1
#define SCK PORTB.7
#define PIN_MISO PINB.6
/*FM1715命令码
#define Transceive 0x1E //发送接收命令
#define Transmit 0x1a //发送命令
#define ReadE2 0x03 //读FM1715 EEPROM命令
#define WriteE2 0x01 //写FM1715 EEPROM命令
#define Authent1 0x0c //验证命令认证过程第1步
#define Authent2 0x14 //验证命令认证过程第2步
#define LoadKeyE2 0x0b //将密钥从EEPROM复制到KEY缓存
#define LoadKey 0x19 //将密钥从FIFO缓存复制到KEY缓存
#define RF_TimeOut 0xfff //发送命令延时时间
#define Req 0x01
#define Sel 0x02
//******************* FM1715地址定义********************
#define Page_Sel 0x00 //页写寄存器
#define Command 0x01 //命令寄存器
#define FIFO 0x02 //64字节FIFO缓冲的输入输出寄存器
#define PrimaryStatus 0x03 //发射器接收器及FIFO的状态寄存器1
#define FIFO_Length 0x04 //当前FIFO内字节数寄存器
#define SecondaryStatus 0x05 //各种状态寄存器2
#define InterruptEn 0x06 //中断使能/禁止寄存器
#define Int_Req 0x07 //中断请求标识寄存器
#define Control 0x09 //控制寄存器
#define ErrorFlag 0x0A //错误状态寄存器
#define CollPos 0x0B //冲突检测寄存器
#define TimerValue 0x0c //定时器当前值
#define Bit_Frame 0x0F //位帧调整寄存器
#define TxControl 0x11 //发送控制寄存器
#define CWConductance 0x12 //选择发射脚TX1和TX2发射天线的阻抗
#define ModConductance 0x13 //定义输出驱动阻抗
#define CoderControl 0x14 //定义编码模式和时钟频率
#define TypeBFraming 0x17 //定义ISO14443B帧格式
#define DecoderControl 0x1a //解码控制寄存器
#define Rxcontrol2 0x1e //解码控制及选择接收源
#define RxWait 0x21 //选择发射和接收之间的时间间隔
#define ChannelRedundancy 0x22 //RF通道检验模式设置寄存器
#define CRCPresetLSB 0x23
#define CRCPresetMSB 0x24
#define MFOUTSelect 0x26 //mf OUT 选择配置寄存器
#define TimerClock 0x2a //定时器周期设置寄存器
#define TimerControl 0x2b //定时器控制寄存器
#define TimerReload 0x2c //定时器初值寄存器
#define TypeSH 0x3 //上海标准选择寄存器
#define TestDigiSelect 0x3d //测试管脚配置寄存器*/
#include <delay.h>
void _nop();
unsigned char fm1702_uid();
unsigned char spi_1702_in(void);
unsigned char spi_1702_out(unsigned char temp_out) ;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -