资源简介
MSP430 和CC1101制作的无线温度传感系统。
代码片段和文件信息
//*****************************************
//以下为CC1101无线收发子程序集
//使用INT8U halRfReceivePacket(INT8U *rxBuffer INT8U *length) 进行数据接收
//使用void halRfSendPacket(INT8U *txBuffer INT8U size) 进行数据发送
//本程序针对MSP430F149和CC1101
//通讯速率和频道的更改需要参照smartRF软件进行修改
//******************************************
//******************************************
//使用自己的CC1101
//P2.0-SI
//P2.2-SCK
//P2.4-SO
//P2.6-GDO0
//P5.1-CSN
//*****************************************
//****************************************
//使用公司的cc1101
//1.5 - SCK
//1.6 -CSN
//1.7-- GDO
//1.3 - SO
//1.4 - SI
//*****************************
#include “msp430x14x.h“
#define INT8U unsigned char
#define INT16U unsigned int
#define WRITE_BURST 0x40 //连续写入配置寄存器
#define WRITE_SINGLE 0X00 //单个写入 ,写入指令选通脉冲
#define READ_SINGLE 0x80 //单个读取配置寄存器,
#define READ_BURST 0xC0 //连续读取配置寄存器。读取状态寄存器
#define BYTES_IN_RXFIFO 0x7F //接收缓冲区的有效字节数
#define CRC_OK 0x80
#define TX_FIFO_WRITE_SINGLE 0x3F //单则接存取RX FIFO
#define TX_FIFO_WRITE_BURST 0x7F //连续存取TX FIFO
#define RX_FIFO_READ_SINGLE 0xBF //单字节读取RX FIFO
#define RX_FIFO_READ_BURST 0xFF //连续读取RX FIFO
//CRC校验通过位标志
//*****************************************************************************
#define GDO0 P1IN & BIT7
#define SO P1IN & BIT3
#define SI1 P1OUT |= BIT4
#define SI0 P1OUT &= (~BIT4)
#define SCK1 P1OUT |= BIT5
#define SCK0 P1OUT &= (~BIT5)
#define CSN0 P1OUT &=(~BIT6)
#define CSN1 P1OUT |= BIT6
/*
//使用自己的CC1101
//#define GDO0 P2IN & BIT6
#define SO P2IN & BIT4
#define SI1 P2OUT |= BIT0
#define SI0 P2OUT &= (~BIT0)
#define SCK1 P2OUT |= BIT2
#define SCK0 P2OUT &= (~BIT2)
#define CSN0 P5OUT &=(~BIT1)
#define CSN1 P5OUT |= BIT1
*/
//*****************************************************************************************
//*****************************************************************************************
//INT8U PaTabel[8] = {0x60 0x60 0x60 0x60 0x60 0x60 0x60 0x60};
//INT8U PaTabel[8] = {0xc0 0xc0 0xc0 0xc0 0xc0 0xc0 0xc0 0xc0};//修改发射功率
//*****************************************************************************************
void SpiInit(void);
void CpuInit(void);
void RESET_CC1101(void);
void POWER_UP_RESET_CC1101(void);
void halSpiWriteReg(INT8U addr INT8U value);
void halSpiWriteBurstReg(INT8U addr INT8U *buffer INT8U count);
void halSpiStrobe(INT8U strobe);
INT8U halSpiReadReg(INT8U addr);
void halSpiReadBurstReg(INT8U addr INT8U *buffer INT8U count);
INT8U halSpiReadStatus(INT8U addr);
void halRfWriteRfSettings(void);
void halRfSendPacket(INT8U *txBuffer INT8U size);
INT8U halRfReceivePacket(INT8U *rxBuffer INT8U *length);
//*****************************************************************************************
// CC1101 STROBE CONTROL AND STATUS REGSITER
#define CC1101_IOCFG2 0x00 // GDO2 outp
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 35394 2010-10-22 14:25 AirTempHumi 1 Firmware\CC1101-f149.c
文件 3488 2010-10-12 10:42 AirTempHumi 1 Firmware\DHT11.c
文件 7105 2010-10-15 14:06 AirTempHumi 1 Firmware\LCD1602.c
文件 7560 2011-03-25 16:01 AirTempHumi 1 Firmware\main.c
文件 376 2010-10-27 11:49 AirTempHumi 1 Firmware\Timer.c
目录 0 2011-01-05 17:38 AirTempHumi 1 Firmware
----------- --------- ---------- ----- ----
53923 6
评论
共有 条评论