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

📄 hpa449lib.h

📁 ADS1240转换程序
💻 H
字号:
#ifndef __HPA449LIB_H
#define __HPA449LIB_H
/*****************************************************************************
** [file] 
** hpa449lib.h
** [Puropse]
** definitions and prototypes for functions specific to the HPA449
*/

#ifndef __msp430x44x
#include <msp430x44x.h>
#endif

#define __BUFFERED_SERIAL

#define LED_1		0x20
#define LED_2		0x80
#define LED_OUT		P3OUT
#define LED_DIR		P3DIR

#define SWITCH_2_BIT 0x40

void WaitForSwitch2();

// msp430x44x.h forgot to define the interrupt vectors for USART1
#ifndef USART1TX_VECTOR
#define USART1TX_VECTOR 04
#endif
#ifndef USART1RX_VECTOR
#define USART1RX_VECTOR 06
#endif

// define site codes
#define SITE_A   0
#define SITE_B   1

//----------------------------------------------------------------------------
// UART routines
void UART1_Init(unsigned int BaudRateDivider, unsigned char Modulator);
#ifdef __BUFFERED_SERIAL
extern volatile unsigned char nTXItems;

int SendByte(unsigned char);
int SendBytes(unsigned char *, unsigned char);
int SendString(char *);

#endif

//----------------------------------------------------------------------------
// SPI routines
void SPI_Init(unsigned int BaudRateDivider);
void SPI_SendByte(unsigned char Byte2Send);
unsigned char SPI_ReadByte(void);
unsigned char SPI_ReadByteWait(void);
unsigned char SPI_ReceiveByte(void);
unsigned char SPI_TransferByte(unsigned char Byte2Send);

//----------------------------------------------------------------------------
// I2C routines
// site A
void I2C_A_Init(void);
void I2C_A_Wait(void);
void I2C_A_Start(void);
void I2C_A_Stop(void);
int I2C_A_SendByte(unsigned char byte);
unsigned char I2C_A_ReceiveByte(int fAck);

// site B
void I2C_B_Init(void);
void I2C_B_Wait(void);
void I2C_B_Start(void);
void I2C_B_Stop(void);
int I2C_B_SendByte(unsigned char byte);
unsigned char I2C_B_ReceiveByte(int fAck);

extern void (*I2C_StartFcn)();
extern void (*I2C_StopFcn)();
extern int (*I2C_SendByteFcn)(unsigned char);
extern unsigned char (*I2C_ReceiveByteFcn)(int);

int I2C_SetSite(int SiteCode);
void I2C_Init();
#define I2C_Wait() (*I2C_WaitFCN)();
#define I2C_Start() (*I2C_StartFcn)();
#define I2C_Stop() (*I2C_StopFcn)();
#define I2C_SendByte(byte) (*I2C_SendByteFcn)(byte);
#define I2C_ReceiveByte(fAck) (*I2C_ReceiveByteFcn)(fAck);

//----------------------------------------------------------------------------
// PCF8574A port extender
int WriteExpandedGPIO (int PortExtenderAddress, int Value);
int ReadExpandedGPIO (int PortExpanderAddress, unsigned char *Value);

//----------------------------------------------------------------------------
// utility functions
static void __inline__ Pause(register unsigned int n)
{
	__asm__ __volatile__ (	
	"1: \n"
	" dec	%[n] \n" 
	" jne	1b \n"
	: [n] "+r"(n));
}

#endif

⌨️ 快捷键说明

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