⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hardware.h

📁 this the firmware provided freely for the trf7960
💻 H
字号:
//----------------------------------------------//
//Here are the processor specific functions.	//
//						//
//----------------------------------------------//
#include <MSP430x15x.h>     	//can't be greater than 256+13 	
#include <stdio.h>
#include "globals.h"


//========MCU constants===================================

#define TRFWrite 	P2OUT		//port2 is connected to the
#define TRFRead  	P2IN		//TRF796x IO port.
#define TRFDirIN	P2DIR = 0x00//P2DIR = 0x00
#define TRFDirOUT	P2DIR = 0xFF//P2DIR = 0xFF
#define TRFSerial	P2DIR = 0x9F//P2DIR = 0x9F
#define TRFFunc		P2SEL = 0x00//P2SEL = 0x00

#define EnableSet	P3DIR |= BIT2
#define	TRFEnable	P3OUT |= BIT2		//EN pin on the TRF796x
#define TRFDisable	P3OUT &= ~BIT2

//PIN operations---------------------------------------------
#define clkPINset 	P3DIR |= BIT7		//CLK on P2.7
#define clkON		P3OUT |= BIT7
#define clkOFF		P3OUT &= ~BIT7

#define irqPINset	P1DIR &= ~BIT5;
#define irqPIN		BIT5
#define irqPORT		P1IN
#define irqON		P1IE |= BIT5		//IRQ on P2.3
#define irqOFF		P1IE &= ~BIT5		//IRQ on P2.3
#define irqEDGEset	P1IES &= ~BIT5		//rising edge interrupt
#define irqCLR		P1IFG = 0x00
#define irqREQreg	P1IFG

#define LEDportSET	P4DIR |= 0x1F;
#define LEDallOFF	P4OUT = 0x00;
#define LEDallON	P4OUT = 0x1F;
#define LEDpowerON	P4OUT |= BIT0;
#define LEDpowerOFF	P4OUT &= ~BIT0;
#define LEDtypeAON	P4OUT |= BIT1;
#define LEDtypeAOFF	P4OUT &= ~BIT1;
#define LEDtypeBON	P4OUT |= BIT2;
#define LEDtypeBOFF	P4OUT &= ~BIT2;
#define LED15693ON	P4OUT |= BIT3;
#define LED15693OFF	P4OUT &= ~BIT3;
#define LEDtagitON	P4OUT |= BIT4;
#define LEDtagitOFF	P4OUT &= ~BIT4;


#define OOKdirIN	P3DIR &= ~BIT3;
#define OOKdirOUT	P3DIR |= BIT3
#define OOKoff		P3OUT &= ~BIT3
#define OOKon		P3OUT |= BIT3
//Counter-timer constants------------------------------------
#define countValue	TACCR0			//counter register
#define startCounter	TACTL |= MC0 + MC1	//start counter in up mode
#define stopCounter	TACTL &= ~(MC0 + MC1)	//stops the counter
#define count1ms	847


//=======TRF definitions=========================
//Reader addresses
#define ChipStateControl	0x00
#define ISOControl		0x01
#define ISO14443Boptions	0x02
#define ISO14443Aoptions	0x03
#define TXtimerEPChigh		0x04
#define TXtimerEPClow		0x05
#define TXPulseLenghtControl	0x06
#define RXNoResponseWaitTime	0x07
#define RXWaitTime		0x08
#define ModulatorControl	0x09
#define RXSpecialSettings	0x0A
#define RegulatorControl	0x0B
#define IRQStatus		0x0C
#define IRQMask			0x0D
#define	CollisionPosition	0x0E
#define RSSILevels		0x0F
#define RAMStartAddress		0x10	//RAM is 7 bytes long (0x10 - 0x16)
#define TestSetting1		0x1A
#define TestSetting2		0x1B
#define FIFOStatus		0x1C
#define TXLenghtByte1		0x1D
#define TXLenghtByte2		0x1E
#define FIFO			0x1F

//Reader commands-------------------------------------------
#define Idle			0x00
#define SoftInit		0x03
#define InitialRFCollision	0x04
#define ResponseRFCollisionN	0x05
#define ResponseRFCollision0	0x06
#define	Reset			0x0F
#define TransmitNoCRC		0x10
#define TransmitCRC		0x11
#define DelayTransmitNoCRC	0x12
#define DelayTransmitCRC	0x13
#define TransmitNextSlot	0x14
#define CloseSlotSequence	0x15
#define StopDecoders		0x16
#define RunDecoders		0x17
#define ChectInternalRF		0x18
#define CheckExternalRF		0x19
#define AdjustGain		0x1A
//==========================================================


void delay_ms(unsigned int n_ms);
void CounterSet(void);
void OSCsel(unsigned char mode);

#pragma vector=TIMERA0_VECTOR
__interrupt void TimerAhandler(void);

⌨️ 快捷键说明

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