你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1699|回复: 0

【连载】【ALIENTEK 战舰STM32开发板】STM32开发指南--第三十七章 无线通信实验

[复制链接]

50

主题

7

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2013-3-26 22:57:35 | 显示全部楼层 |阅读模式
 
<a name="_Toc342394300">37.1 NRF24L01无线模块简介
NRF24L01无线模块,采用的芯片是NRF24L01,该芯片的主要特点如下:
1)2.4G全球开放的ISM频段,免许可证使用。
2)最高工作速率2Mbps,高校的GFSK调制,抗干扰能力强。
3)125个可选的频道,满足多点通信和调频通信的需要。
4)内置CRC检错和点对多点的通信地址控制。
5)低工作电压(1.9~3.6V)。
6)可设置自动应答,确保数据可靠传输。
该芯片通过SPI与外部MCU通信,最大的SPI速度可以达到10Mhz。本章我们用到的模块是深圳云佳科技生产的NRF24L01,该模块已经被很多公司大量使用,成熟度和稳定性都是相当不错的。该模块的外形和引脚图如图37.1.1所示:
 

图37.1.1 NRF24L01无线模块外观引脚图

模块VCC脚的电压范围为1.9~3.6V,建议不要超过3.6V,否则可能烧坏模块,一般用3.3V电压比较合适。除了VCC和GND脚,其他引脚都可以和5V单片机的IO口直连,正是因为其兼容5V单片机的IO,故使用上具有很大优势。
关于NRF24L01的详细介绍,请参考NRF24L01的技术手册。
<a name="_Toc342394302">37.3 软件设计
打开上一章的工程,首先在HARDWARE文件夹下新建一个NRF24L01的文件夹。然后新建一个24l01.c和24l01.h的文件保存在NRF24L01文件夹下,并将这个文件夹加入头文件包含路径。
       打开24l01.c文件,输入如下代码:
#include "24l01.h"
#include "lcd.h"
#include "delay.h"
#include "spi.h"
const u8 TX_ADDRESS[TX_ADR_WIDTH]={0x34,0x43,0x10,0x10,0x01}; //发送地址
const u8 RX_ADDRESS[RX_ADR_WIDTH]={0x34,0x43,0x10,0x10,0x01}; //发送地址
//初始化24L01的IO口
void NRF24L01_Init(void)
{
    RCC->APB2ENR|=1ODR|=1CRL|=0X33000000; //PG6 7 推挽        
    GPIOG->CRH&=0XFFFFFFF0;
    GPIOG->CRH|=0X00000008; //PG8 输入     
    GPIOG->ODR|=7

《STM32开发指南》第三十七章 无线通信实验.rar

下载

681.43 KB, 下载次数: 18, 下载积分: ST金币 -1

实验32 无线通信实验.rar

下载

157.58 KB, 下载次数: 12, 下载积分: ST金币 -1

回复

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版