資源描述:
《無線HART發(fā)送與接收代碼》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、#include??#include??#defineucharunsignedchar??/***************************************************/??#defineTX_ADR_WIDTH??5??//5字節(jié)寬度的發(fā)送/接收地址??#defineTX_PLOAD_WIDTH4??//數(shù)據(jù)通道有效數(shù)據(jù)寬度??#defineLEDP1??ucharcodeTX_ADDRESS[TX_ADR_WIDTH]={0x34,0x43,0x1
2、0,0x10,0x01};??//定義一個靜態(tài)發(fā)送地址??ucharRX_BUF[TX_PLOAD_WIDTH];??ucharTX_BUF[TX_PLOAD_WIDTH];??ucharflag;??ucharDATA=0x01;??ucharbdatasta;??sbit??RX_DR??=sta^6;??sbit??TX_DS??=sta^5;??sbit??MAX_RT=sta^4;??sbitkey=P2^0;??sbitwela=P2^6;??sbitdula=P2^7;??/*************
3、*************************************/??/**************************************************?函數(shù):init_io()?描述:???初始化IO?/**************************************************/??voidinit_io(void)??????{????CE??=0;??????//待機????CSN=1;??????//?SPI禁止????SCK=0;??????//SP
4、I時鐘置低????IRQ=1;??????//中斷復位????LED=0xff;????//關(guān)閉指示燈??}??/**************************************************/??/**************************************************?函數(shù):delay_ms()?描述:???延遲x毫秒?/**************************************************/??voiddelay_ms(uchar
5、x)??{????uchari,j;????i=0;????for(i=0;i6、F24L01,同時從nRF24L01???讀出一字節(jié)?/**************************************************/??ucharSPI_RW(ucharbyte)??{????uchari;????for(i=0;i<8;i++)??????//循環(huán)8次????{????????MOSI=(byte&0x80);??//byte最高位輸出到MOSI????????byte<<=1;????????//低一位移位到最高位????????SCK=1;??//拉高SCK,nRF
7、24L01從MOSI讀入1位數(shù)據(jù),同時從MISO輸出1位數(shù)據(jù)????????byte
8、=MISO;????????//讀MISO到byte最低位????????SCK=0;??????????//SCK置低????}????return(byte);??????????//返回讀出的一字節(jié)??}??/**************************************************/??/**************************************************?函數(shù):S
9、PI_RW_Reg()?描述:???寫數(shù)據(jù)value到reg寄存器?/**************************************************/??ucharSPI_RW_Reg(ucharreg,ucharvalue)??{????ucharstatus;????CSN=0;????????????//CSN置低,開始傳輸數(shù)據(jù)?