📄 hardware.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 + -