久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
SI4438 Directional硬件SPI STM8S105單片機IAR代碼分享
[打印本頁]
作者:
345138275
時間:
2018-11-23 19:15
標(biāo)題:
SI4438 Directional硬件SPI STM8S105單片機IAR代碼分享
單片機源程序如下:
#include "stm8s.h"
#include "data_base.h"
#include "radio.h"
#include "si446x_cmd.h"
#include "gpio.h"
#include "delay.h"
#include "user.h"
uint8_t bRadio_Process();
U8 bMain_IT_Status;
uint8_t RFstate;
extern uint8_t tx_data[];
extern volatile uint16_t tick_timer;
#define EnableMaster 0
/*
Demo程序流程:Master EnableMaster=1,發(fā)送tx_data數(shù)據(jù)包后等待接收端ack數(shù)據(jù)包,若500ms后未接收到ack數(shù)據(jù)包超時處理,若接收到ack數(shù)據(jù)包LED閃爍指示
Slaver EnableMaster=0,接收到tx_data數(shù)據(jù)包后發(fā)送ack數(shù)據(jù)包,發(fā)送完成后LED燈閃爍指示
*/
void main(void)
{
vInitializeHW();// Initialize the Hardware and Radio
#if EnableMaster
RFstate=RFLR_STATE_TX_INIT;
#else
RFstate=RFLR_STATE_RX_INIT;
#endif
while(1)
{
bRadio_Process();
}
}
uint8_t bRadio_Process()
{
switch(RFstate)
{
case RFLR_STATE_RX_INIT://接收初始化
GPIO_WriteLow(SI4463_TX_PORT,SI4463_TX_IO);
GPIO_WriteHigh(SI4463_RX_PORT,SI4463_RX_IO);//開關(guān)切換到接收通路
vRadio_StartRX(pRadioConfiguration->Radio_ChannelNumber, 0);
tick_timer=0;
RFstate=RFLR_STATE_RX_RUNNING;
break;
case RFLR_STATE_RX_RUNNING://接收處理
bMain_IT_Status = bRadio_Check_Tx_RX();
if(bMain_IT_Status==SI446X_CMD_GET_INT_STATUS_REP_PH_PEND_PACKET_RX_PEND_BIT)
{
if(EnableMaster)
{
RFstate=RFLR_STATE_RX_ACK_DONE;
}
else
{
RFstate=RFLR_STATE_RX_DONE;
}
}
if(tick_timer>500)
{
RFstate=RFLR_STATE_RX_TIMEOUT;
}
break;
case RFLR_STATE_TX_INIT://發(fā)射客戶數(shù)據(jù)包初始化
GPIO_WriteHigh(SI4463_TX_PORT,SI4463_TX_IO);
GPIO_WriteLow(SI4463_RX_PORT,SI4463_RX_IO);//開關(guān)切換到發(fā)送通路
gSampleCode_SendVariablePacket();//打包發(fā)送客戶數(shù)據(jù)包
tick_timer=0;
RFstate=RFLR_STATE_TX_RUNNING;
break;
case RFLR_STATE_TX_ACK_INIT://發(fā)射ack數(shù)據(jù)包初始化
GPIO_WriteHigh(SI4463_TX_PORT,SI4463_TX_IO);
GPIO_WriteLow(SI4463_RX_PORT,SI4463_RX_IO);//開關(guān)切換到發(fā)送通路
vSampleCode_SendAcknowledge();//打包發(fā)送ACK數(shù)據(jù)包
tick_timer=0;
RFstate=RFLR_STATE_TX_RUNNING;
break;
case RFLR_STATE_TX_RUNNING://發(fā)射處理
bMain_IT_Status = bRadio_Check_Tx_RX();
if(bMain_IT_Status==SI446X_CMD_GET_INT_STATUS_REP_PH_PEND_PACKET_SENT_PEND_BIT)
{
if(EnableMaster)
{
RFstate=RFLR_STATE_TX_DONE;
}
else
{
RFstate=RFLR_STATE_TX_ACK_DONE;
}
}
if(tick_timer>500)
{
RFstate=RFLR_STATE_TX_TIMEOUT;
}
break;
case RFLR_STATE_RX_DONE://接收客戶數(shù)據(jù)包完成
if(gSampleCode_StringCompare(customRadioPacket, tx_data,20)==TRUE)
{
RFstate=RFLR_STATE_TX_ACK_INIT;//收到正確數(shù)據(jù)包后發(fā)射ack數(shù)據(jù)包
}
else
{
RFstate=RFLR_STATE_RX_INIT;
}
break;
case RFLR_STATE_RX_ACK_DONE://接收ack數(shù)據(jù)包完成
if(gSampleCode_StringCompare(customRadioPacket, "ACK",3)==TRUE)
{
GPIO_WriteLow(RF_LED1_PORT,RF_LED1_IO);//LED指示燈閃爍
m928_delay(20);
GPIO_WriteHigh(RF_LED1_PORT,RF_LED1_IO);
}
m928_delay(100);
RFstate=RFLR_STATE_TX_INIT;
break;
case RFLR_STATE_TX_DONE://發(fā)射完客戶數(shù)據(jù)包
RFstate=RFLR_STATE_RX_INIT;
break;
case RFLR_STATE_TX_ACK_DONE://發(fā)射完ack數(shù)據(jù)包
GPIO_WriteLow(RF_LED1_PORT,RF_LED1_IO);//LED燈閃爍
m928_delay(20);
GPIO_WriteHigh(RF_LED1_PORT,RF_LED1_IO);
RFstate=RFLR_STATE_RX_INIT;
break;
case RFLR_STATE_TX_TIMEOUT://發(fā)射超時
if(EnableMaster)
{
RFstate=RFLR_STATE_TX_INIT;
}
else
{
RFstate=RFLR_STATE_RX_INIT;
}
break;
case RFLR_STATE_RX_TIMEOUT://接收超時
if(EnableMaster)
{
RFstate=RFLR_STATE_TX_INIT;
}
else
{
RFstate=RFLR_STATE_RX_INIT;
}
break;
default:break;
}
return RFstate;
}
復(fù)制代碼
所有資料51hei提供下載:
SI4438 Directional 硬件spi STM8S105 IAR.rar
(10.74 MB, 下載次數(shù): 34)
2018-11-24 02:06 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
精品在线播放
|
天天色天天射天天干
|
久久久久久久国产
|
日韩在线电影
|
欧美福利
|
亚洲一区二区三区免费在线观看
|
国产精品永久免费观看
|
蜜桃av鲁一鲁一鲁一鲁
|
91亚洲国产成人精品一区二三
|
国产精品久久久久久久免费大片
|
亚洲精品久久久久国产
|
亚洲精品一区在线观看
|
狠狠干美女
|
国内精品久久久久久久影视简单
|
国产精品久久久久久影院8一贰佰
|
精品影院
|
欧美不卡
|
精品国产乱码久久久久久中文
|
在线观看中文字幕视频
|
久久69精品久久久久久国产越南
|
伊人91在线
|
天堂一区
|
91麻豆精品国产91久久久更新资源速度超快
|
亚洲天堂一区
|
亚洲二区视频
|
国产成年人小视频
|
亚洲成人午夜在线
|
午夜小电影
|
欧美日韩网站
|
av三级
|
深夜福利影院
|
精品av
|
亚洲精品久久嫩草网站秘色
|
九九热久久免费视频
|
黄色a视频
|
亚洲专区在线
|
国产在线一区观看
|
国产欧美精品在线观看
|
久久69精品久久久久久久电影好
|
欧美一级二级视频
|
国产一区二区三区日韩
|