资源简介
STC15W4-nRF24L01 项目,完整的 nRF24L01 1 对 6示例,具体查看本人博客文章.
代码片段和文件信息
#include “Constant.h“
#include “nRF24L01.h“
#include “sys.h“
char str[16]=“Hello World 0\r\n“;
void nRF24L01_Process()
{
#if(NRF24L01_RF_MODE == NRF24L01_TX_MODE)
unsigned char n;
if(Sys_Flag_A.nRF24L01_Send_Data_Flag) // 这是一个标志 放在 UpdateClock() 中 每 1 秒会更新一次
{
Sys_Flag_A.nRF24L01_Send_Data_Flag = 0;
SendString_1(“RF24L01 Send Data \r\n“);
n = nRF24L01_Tx_Packet(str 16);
if(n == TX_OK) // 发射是否成功
SendString_1(“RF24L01 Send OK \r\n“); // 成功
else if(n == MAX_TX)
SendString_1(“RF24L01 Send MAX_TX \r\n“); // 超时
else
SendString_1(“RF24L01 Send Fail \r\n“); // 发射失败
str[12]++;
if(str[12] > ‘9‘)
str[12] = ‘0‘;
RED_LED = 1;
}
#else
RED_LED = ~RED_LED;
nRF24L01_Buf_Size = nRF24L01_Rx_Packet(RxPayload);
// 是否接收到数据
if(nRF24L01_Buf_Size)
{
Send_Data_Buf_1(RxPayload nRF24L01_Buf_Size); // 发送接收到的数据到 串口 1
nRF24L01_Buf_Size = 0;
}
#endif
}
void Sys_Init(void)
{
/*
P0M1 P0M0
0 ------ 0 准双向口
0 ------ 1 推挽输出(强上拉输出,可达 20mA要加限流电阻)
1 ------ 0 高阻输入(电流既不能流入,也不能流出)
1 ------ 1 开漏,内部上拉电阻断开,开漏模式即可读外部状态,也可对外输出(高电平、低电平),需外部加上拉电阻
*/
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
P6M0 = 0x00;
P6M1 = 0x00;
P7M0 = 0x00;
P7M1 = 0x00;
CLK_DIV &= 0xF8; // 主时钟频率/1 不分频
_nop_();
_nop_();
/*
0x00 主时钟频率/1 不分频
0x01 主时钟频率/2
0x02 主时钟频率/4
0x03 主时钟频率/8
0x04 主时钟频率/16
0x05 主时钟频率/32
0x06 主时钟频率/64
0x07 主时钟频率/128
如果改变 系统时钟 则串口波特率会变
*/
CLK_DIV |= 0x00; // 主时钟频率/1
_nop_();
_nop_();
_nop_();
_nop_();
Clock_Init();
SPI_Init();
Uart_1_Init();
nRF24L01_Init();
Time0_Init();
}
void main()
{
Sys_Init();
while(1)
{
UpdateClock(); // 时钟更新
nRF24L01_Process(); // nRF24L01 数据收发处理
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 610 2018-05-11 10:56 Constant.h
文件 88088 2018-05-11 16:08 Demo.uvgui.Administrator
文件 6328 2018-05-11 14:06 Demo.uvopt
文件 14561 2018-05-11 11:37 Demo.uvproj
目录 0 2018-05-11 16:13 Listings\
文件 56747 2018-05-11 16:13 Listings\Demo.m51
文件 5983 2018-05-11 16:13 Listings\main.lst
文件 34797 2018-05-11 16:13 Listings\nRF24L01.lst
文件 14146 2018-05-11 16:13 Listings\STARTUP.lst
文件 15473 2018-05-11 16:13 Listings\sys.lst
文件 958 2018-05-11 16:13 Listings\Variable.lst
文件 2354 2018-05-11 16:00 main.c
文件 16505 2018-05-11 16:06 nRF24L01.c
文件 9356 2018-05-11 16:08 nRF24L01.h
目录 0 2018-05-11 16:13 ob
文件 90226 2018-05-11 16:13 ob
文件 2769 2018-05-11 16:13 ob
文件 10009 2018-05-11 16:13 ob
文件 191 2018-05-11 16:13 ob
文件 22950 2018-05-11 16:13 ob
文件 45774 2018-05-11 16:13 ob
文件 819 2018-05-11 16:13 ob
文件 24629 2018-05-11 16:13 ob
文件 5924 2018-05-11 16:13 ob
文件 6376 2013-06-24 10:27 STARTUP.A51
文件 7075 2018-05-11 16:08 sys.c
文件 2681 2018-05-11 11:03 sys.h
文件 59 2018-05-11 10:55 Variable.c
- 上一篇:开发板原理图
- 下一篇:STC15 万年历程序
相关资源
- 基于两块430单片机及nrf24l01无线数据传
- 2.4G无线通信模块(接收端代码+发射端
- 51单片机nrf24L01遥控小车
- 基于nRF24L01和STM32的无线文件收发系统
- nRF24L01详细中文资料+51程序
- 基于arduino的无线温湿度传输系统
- nrf24L01无线模块+温度测量
- 51单片机+DS18B20+NRF24L01+LCD1602=无线温度
- sht10+bh1750+nrf24l01数据传输
- NRF24L01全双工调试程序
- 基于51单片机的NRF24L01双向通信
- stm32f103 nrf24l01+实现双机通信
- NRF24L01程序
- 无线收发模块nRF24L01 (含电路图、
- nrf24l01无线接收verilog HDL代码
- NRF24L01 通信 51单片机 点亮LED灯
- NRF24L01PCB天线完整GERBER文件
- STC89C52单片机+NRF24L01按键收发测试
评论
共有 条评论