📄 a.c
字号:
#include<ioCC2430.h>
#include<hal.h>
char FCFH; char FCFL; char SEN;
char OSHORTADDRH; char OSHORTADDRL;
int i;
//系统初始化
SET_MAIN_CLOCK()
{
SLEEP&=~0x04;
while(!(SLEEP&0x40));
CLKCON&=~0x47;
SLEEP|=0x04;
}
//写发送寄存器
void WRITE_TO_TXFIFO(char data)
{
RFD=data;
}
//设置PAN网号和短地址
void SET_PAN_SHORT_ADD(char a,char b,char c,char d)
{
PANIDH=a;
PANIDL=b;
SHORTADDRH=c;
SHORTADDRH=d;
}
void WRITE_ONE_FRAME()
{
WRITE_TO_TXFIFO(0X0F);
WRITE_TO_TXFIFO(FCFL);
WRITE_TO_TXFIFO(FCFH);
WRITE_TO_TXFIFO(SEN);
//PAN网ID
WRITE_TO_TXFIFO(PANIDL);
WRITE_TO_TXFIFO(PANIDH);
//目标短地址
WRITE_TO_TXFIFO(OSHORTADDRL);
WRITE_TO_TXFIFO(OSHORTADDRH);
//源短地址
WRITE_TO_TXFIFO(SHORTADDRL);
WRITE_TO_TXFIFO(SHORTADDRH);
WRITE_TO_TXFIFO(0X01);
WRITE_TO_TXFIFO(0X02);
WRITE_TO_TXFIFO(0X03);
WRITE_TO_TXFIFO(0X04);
}
void main(void)
{
SET_MAIN_CLOCK();
P1SEL=0X00;
P1DIR=0X01;
P1_0=0;
MDMCTRL1L&=0XF0; //设置发送模式
RFPWR|=0X04; //关稳压器
RFPWR&=0XF7; //开稳压器
while ((RFIF&0X80)==0); //等待稳压器开启
SLEEP&=0XFB;
CLKCON&=~0X80; //开32M晶振
SET_PAN_SHORT_ADD(0X00,0X01,0X00,0X01);
FCFH=0X88;
FCFL=0X41;
SEN=0X01;
OSHORTADDRH=0X00;
OSHORTADDRL=0X02;
while(1)
{
SFLUSHTX;
SFLUSHTX; //清空发送缓冲器
WRITE_ONE_FRAME();
//中断使能
EA=1;
IEN2|=0X01;
RFIF&=0X00;
S1CON&=0X00;
RFIM=0X40;
STXON;
}
}
#pragma vector=RF_VECTOR
__interrupt void tx(void)
{
P1_0=1;
for(i=0;i<=50000;i++)
;
for(i=0;i<=50000;i++)
;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -