基于stc89c52单片机驱动nrf905中文资料模块无线程序 麻烦能给我一下吗?有点急用。谢了。邮箱492786073@qq.com

基于单片机的无线射频收发系统_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
基于单片机的无线射频收发系统
上传于||文档简介
&&用​n​R​F4​L1​实​现​双​向​数​据​传​输​并​数​码​管​显​示
阅读已结束,如果下载本文需要使用3下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩36页未读,继续阅读
你可能喜欢STC89C52单片机驱动CC1101无线模块的发送C语言程序
10:56:10&&&来源:51hei &&
#define INT8U unsigned char
#define INT16 Uunsigned int
#define WRITE_BURST
0x40//连续写入
#define READ_SINGLE
#define READ_BURST
0xC0//连续读
#define BYTES_IN_RXFIFO
//接收缓冲区的有效字节数
#define CRC_OK
0x80 //CRC校验通过位标志
//**************CC1100接口*********
sbit GDO0=P3^3;
sbit GDO2=P1^4;
sbit MISO=P1^2;
sbit MOSI=P1^1;
sbit SCK=P3^2;
sbit CSN=P1^3;
//***********按键****************
//***************数码管位选****************
sbitled3=P2^0;
sbitled2=P2^1;
sbitled1=P2^2;
sbitled0=P2^3;
//***************蜂鸣器***********************
sbit BELL=P3^4;
//***************温度传感器*****************
//********************************************
INT8U seg[10]={0xC0,0xCF,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
//0~~9段码
INT8U seg1[10]={0x40,0x4F,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};
INT8U data temp_data[2]={0x00,0x00};
INT8U dispaly[8];
//更多功率参数设置可详细参考DATACC1100英文文档中第48-49页的参数表
INT8U PaTabel[8] = {0x60 ,0x60 ,0x60 ,0x60 ,0x60 ,0x60 ,0x60 ,0x60};
void SpiInit(void);
void CpuInit(void);
void RESET_CC1100(void);
void POWER_UP_RESET_CC1100(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);
//****************
void delay1(INT16U i);
void ds_reset(void);
void write_byte(INT8U value);
INT8U read_byte(void);
void read_temp();
void work_temp();
//********************
// CC1100 STROBE, CONTROL AND STATUS REGSITER
#define CCxxx0_IOCFG2
// GDO2 output pin configuration
#define CCxxx0_IOCFG1
// GDO1 output pin configuration
#define CCxxx0_IOCFG0
// GDO0 output pin configuration
#define CCxxx0_FIFOTHR
// RX FIFO and TX FIFO thresholds
#define CCxxx0_SYNC1
// Sync word, high INT8U
#define CCxxx0_SYNC0
// Sync word, low INT8U
#define CCxxx0_PKTLEN
// Packet length
#define CCxxx0_PKTCTRL1
// Packet automation control
#define CCxxx0_PKTCTRL0
// Packet automation control
#define CCxxx0_ADDR
// Device address
#define CCxxx0_CHANNR
// Channel number
#define CCxxx0_FSCTRL1
// Frequency synthesizer control
#define CCxxx0_FSCTRL0
// Frequency synthesizer control
#define CCxxx0_FREQ2
// Frequency control word, high INT8U
#define CCxxx0_FREQ1
// Frequency control word, middle INT8U
#define CCxxx0_FREQ0
// Frequency control word, low INT8U
#define CCxxx0_MDMCFG4
// Modem configuration
#define CCxxx0_MDMCFG3
// Modem configuration
#define CCxxx0_MDMCFG2
// Modem configuration
#define CCxxx0_MDMCFG1
// Modem configuration
#define CCxxx0_MDMCFG0
// Modem configuration
#define CCxxx0_DEVIATN
// Modem deviation setting
#define CCxxx0_MCSM2
// Main Radio Control State Machine configuration
#define CCxxx0_MCSM1
// Main Radio Control State Machine configuration
#define CCxxx0_MCSM0
// Main Radio Control State Machine configuration
#define CCxxx0_FOCCFG
// Frequency Offset Compensation configuration
#define CCxxx0_BSCFG
// Bit Synchronization configuration
#define CCxxx0_AGCCTRL2
// AGC control
#define CCxxx0_AGCCTRL1
// AGC control
#define CCxxx0_AGCCTRL0
// AGC control
#define CCxxx0_WOREVT1
// High INT8U Event 0 timeout
#define CCxxx0_WOREVT0
// Low INT8U Event 0 timeout
#define CCxxx0_WORCTRL
// Wake On Radio control
#define CCxxx0_FREND1
// Front end RX configuration
#define CCxxx0_FREND0
// Front end TX configuration
#define CCxxx0_FSCAL3
// Frequency synthesizer calibration
#define CCxxx0_FSCAL2
// Frequency synthesizer calibration
#define CCxxx0_FSCAL1
// Frequency synthesizer calibration
#define CCxxx0_FSCAL0
// Frequency synthesizer calibration
#define CCxxx0_RCCTRL1
// RC oscillator configuration
#define CCxxx0_RCCTRL0
// RC oscillator configuration
#define CCxxx0_FSTEST
// Frequency synthesizer calibration control
#define CCxxx0_PTEST
// Production test
#define CCxxx0_AGCTEST
// AGC test
#define CCxxx0_TEST2
// Various test settings
#define CCxxx0_TEST1
// Various test settings
#define CCxxx0_TEST0
// Various test settings
// Strobe commands
#define CCxxx0_SRES
// Reset chip.
#define CCxxx0_SFSTXON
// Enable and calibrate frequency synthesizer (if MCSM0.FS_AUTOCAL=1).
// If in RX/TX: Go to a wait state where only the synthesizer is
// running (for quick RX / TX turnaround).
#define CCxxx0_SXOFF
// Turn off crystal oscillator.
#define CCxxx0_SCAL
// Calibrate frequency synthesizer and turn it off
// (enables quick start).
#define CCxxx0_SRX
// Enable RX. Perform calibration first if coming from IDLE and
// MCSM0.FS_AUTOCAL=1.
#define CCxxx0_STX
// In IDLE state: Enable TX. Perform calibration first if
// MCSM0.FS_AUTOCAL=1. If in RX state and CCA is enabled:
// Only go to TX if channel is clear.
#define CCxxx0_SIDLE
// Exit RX / TX, turn off frequency synthesizer and exit
// Wake-On-Radio mode if applicable.
#define CCxxx0_SAFC
// Perform AFC adjustment of the frequency synthesizer
#define CCxxx0_SWOR
// Start automatic RX polling sequence (Wake-on-Radio)
#define CCxxx0_SPWD
// Enter power down mode when CSn goes high.
#define CCxxx0_SFRX
// Flush the RX FIFO buffer.
#define CCxxx0_SFTX
// Flush the TX FIFO buffer.
#define CCxxx0_SWORRST
// Reset real time clock.
#define CCxxx0_SNOP
// No operation. May be used to pad strobe commands to two
// INT8Us for simpler software.
#define CCxxx0_PARTNUM
#define CCxxx0_VERSION
#define CCxxx0_FREQEST
#define CCxxx0_LQI
#define CCxxx0_RSSI
#define CCxxx0_MARCSTATE
#define CCxxx0_WORTIME1
#define CCxxx0_WORTIME0
#define CCxxx0_PKTSTATUS
#define CCxxx0_VCO_VC_DAC
#define CCxxx0_TXBYTES
#define CCxxx0_RXBYTES
#define CCxxx0_PATABLE
#define CCxxx0_TXFIFO
#define CCxxx0_RXFIFO
// RF_SETTINGS is a data structure which contains all relevant CCxxx0 registers
typedef struct S_RF_SETTINGS
INT8U FSCTRL2;//
INT8U FSCTRL1;
// Frequency synthesizer control.
INT8U FSCTRL0;
// Frequency synthesizer control.
INT8U FREQ2;
// Frequency control word, high INT8U.
INT8U FREQ1;
// Frequency control word, middle INT8U.
INT8U FREQ0;
// Frequency control word, low INT8U.
INT8U MDMCFG4;
// Modem configuration.
INT8U MDMCFG3;
// Modem configuration.
INT8U MDMCFG2;
// Modem configuration.
INT8U MDMCFG1;
// Modem configuration.
INT8U MDMCFG0;
// Modem configuration.
INT8U CHANNR;
// Channel number.
INT8U DEVIATN;
// Modem deviation setting (when FSK modulation is enabled).
INT8U FREND1;
// Front end RX configuration.
INT8U FREND0;
// Front end RX configuration.
INT8U MCSM0;
// Main Radio Control State Machine configuration.
INT8U FOCCFG;
// Frequency Offset Compensation Configuration.
INT8U BSCFG;
// Bit synchronization Configuration.
INT8U AGCCTRL2;
// AGC control.
INT8U AGCCTRL1;
// AGC control.
INT8U AGCCTRL0;
// AGC control.
INT8U FSCAL3;
// Frequency synthesizer calibration.
INT8U FSCAL2;
// Frequency synthesizer calibration.
INT8U FSCAL1;
// Frequency synthesizer calibration.
INT8U FSCAL0;
// Frequency synthesizer calibration.
INT8U FSTEST;
// Frequency synthesizer calibration control
INT8U TEST2;
// Various test settings.
INT8U TEST1;
// Various test settings.
INT8U TEST0;
// Various test settings.
INT8U IOCFG2;
// GDO2 output pin configuration
INT8U IOCFG0;
// GDO0 output pin configuration
INT8U PKTCTRL1;
// Packet automation control.
INT8U PKTCTRL0;
// Packet automation control.
INT8U ADDR;
// Device address.
INT8U PKTLEN;
// Packet length.
} RF_SETTINGS;
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
STC89C52相关资源
单片机驱动相关资源
CC1101相关资源
无线模块相关资源
编辑:什么鱼
本文引用地址:
本周热门资源推荐
EEWORLD独家基于stc89c52单片机驱动nrf905模块无线测温程序 麻烦能给我一下吗?我找的905程序段好像不对。。谢了_百度知道
基于stc89c52单片机驱动nrf905模块无线测温程序 麻烦能给我一下吗?我找的905程序段好像不对。。谢了
提问者采纳
敢不敢留下邮箱?
您好,那个已经收到。。我想问如果是测温的话,我测得的温度直接存到单片机里面,这个还用像你的那个读取按键信息设一个变量来控制吗?比如你的那个tf变量。。那我是不是可以不设变量,直接通过控制温度传输(一直监测)的时间,和发射读取的时间来控制。。就这个测温发射的完整程序您有吗(ds18b20和89c52以及905)?如果没有的话,麻烦帮我解决下上面问题吧。。谢谢您啦
初始化905之后,从18b20获得一次温度,然后发送出去……按键检测什么的……不要的……
恩,懂了。。。是不是我直接把 ds18b20 那个读温度的程序给编进去,两个和在一起就行了?
提问者评价
来自:求助得到的回答
其他类似问题
为您推荐:
无线测温的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
毕业论文-基于STC89C52单片机的无线公交报站系统的设计
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口

我要回帖

更多关于 nrf905无线模块 的文章

 

随机推荐