資源簡介
si4432驅動程序包括 發(fā)送 接收 切換

代碼片段和文件信息
#include?“stm32f10x.h“
#include?“spi_rf.h“
#include?“spi.h“
#define??TX1_RX0 spi_write(0x0e|0x80?0x01) //?發(fā)射狀態(tài)的天線開關定義
#define??TX0_RX1 spi_write(0x0e|0x80?0x02) //?接收狀態(tài)的天線開關定義
#define??TX0_RX0 spi_write(0x0e|0x80?0x00)?????????//?非發(fā)射,接收狀態(tài)的天線開關定義
static?unsigned?char?tx_data[5]?=?{0x050x000x000x000x00};??
extern?unsigned?char???RF_Flag;?
unsigned?char?ReadBuffer[5]?=?{0x000x000x000x000x00};
unsigned?char?num?=?0;
unsigned?char?tmp;
unsigned?char?speed=0x15;
unsigned?char?vol?=?0x55;
void?Spi_Rf_Init(void)
{?
????TX0_RX0;
???
??????spi_write(0x030x00); //清掉現有的中斷標志
??????spi_write(0x040x00); //清掉現有的中斷標志
?
??????spi_write(0x06?0x00);??????//Interrupt?Enable?2
??????spi_write(0x07SI4432_PWRSTATE_READY);//?進入?Ready?模式
??????spi_write(0x09|0x80?0x7f);??//??負載電容=?12P
??????
??????spi_write(0x0a|0x80?0x05); //?關閉低頻輸出
??????spi_write(0x0b|0x80?0xea);?//?GPIO?0?當做普通輸出口
??????spi_write(0x0c|0x80?0xea);?//GPIO?1?當做普通輸出口
??????
??????spi_write(0x0d|0x80?0xf4);??//?/GPIO?2?輸出收到的數據
??????
??????
??????
??????spi_write(0x70|0x80?0x2c);??
??????spi_write(0x1d|0x80?0x40);??//?使能?afc
??????
??????//?1.2K?bps?setting
??????spi_write(0x1c|0x80?0x16); //?下面的設置根據Silabs?的Excel
??????
??????
??????spi_write(0x20|0x80?0x83);???
??????
??????spi_write(0x21|0x80?0xc0);?//
??????spi_write(0x22|0x80?0x13);//?
??????spi_write(0x23|0x80?0xa9);?//
??????spi_write(0x24|0x80?0x00);?//
??????spi_write(0x25|0x80?0x04);?//
??????
??????spi_write(0x2a|0x80?0x14);
??????spi_write(0x6e|0x80?0x09);
??????spi_write(0x6f|0x80?0xd5);
??????
??????//1.2K?bps?setting?end
??????
??????
??????spi_write(0x30|0x80?0x8c);???//?使能PH+?FIFO模式,高位在前面,使能CRC校驗
??????
??????
??????spi_write(0x32|0x80?0xff);??//?byte0?123?作為頭碼
??????
??????spi_write(0x33|0x80?0x42);//??byte?0123?是頭碼,同步字32?是同步字
??????
??????
??????
??????spi_write(0x34|0x80?16);??//?發(fā)射16個Nibble的Preamble
??????spi_write(0x35|0x80?0x20);??//?需要檢測4個nibble的Preamble
??????spi_write(0x36|0x80?0x2d);??//?同步字為?0x2dd4
??????spi_write(0x37|0x80?0xd4);
??????spi_write(0x38|0x80?0x00);
??????spi_write(0x39|0x80?0x00);
??????spi_write(0x3a|0x80?‘s‘);??//?發(fā)射的頭碼為:?“swwx“
??????spi_write(0x3b|0x80?‘w‘);
??????spi_write(0x3c|0x80?‘w‘);
??????spi_write(0x3d|0x80?‘x‘);
??????spi_write(0x3e|0x80?5);??//?總共發(fā)射10個字節(jié)的數據
??????spi_write(0x3f|0x80?‘s‘);?//?需要校驗的頭碼為:”swwx“
??????spi_write(0x40|0x80?‘w‘);
??????spi_write(0x41|0x80?‘w‘);
??????spi_write(0x42|0x80?‘x‘);
??????spi_write(0x43|0x80?0xff);??//?頭碼1234?的所有位都需要校驗
??????spi_write(0x44|0x80?0xff);??//?
??????spi_write(0x45|0x80?0xff);??//?
??????spi_write(0x46|0x80?0xff);??//?
??????spi_write(0x6d|0x80?0x07);??//?設置為最大功率發(fā)射
??????
??????spi_write(0x79|0x80?0x0);??//?不需要跳頻
??????spi_write(0x7a|0x80?0x0);??//?不需要跳頻
??????
??????
??????spi_write(0x71|0x80?0x22);?//?發(fā)射不需要?CLK,FiFo?,?FSK模式
??????
??????spi_write(0x72|0x80?0x30);??//?頻偏為?30KHz
????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????5768??2012-09-18?11:37??Spi_Rf\spi_rf.c
?????文件????????541??2012-05-16?15:22??Spi_Rf\spi_rf.h
?????目錄??????????0??2012-05-16?15:17??Spi_Rf
-----------?---------??----------?-----??----
?????????????????6309????????????????????3
- 上一篇:等保3級服務器安全配置規(guī)范.rar
- 下一篇:px4flow 驅動裝置
評論
共有 條評論