无线遥控系统.docx

上传人:b****8 文档编号:30635666 上传时间:2023-08-18 格式:DOCX 页数:15 大小:1.51MB
下载 相关 举报
无线遥控系统.docx_第1页
第1页 / 共15页
无线遥控系统.docx_第2页
第2页 / 共15页
无线遥控系统.docx_第3页
第3页 / 共15页
无线遥控系统.docx_第4页
第4页 / 共15页
无线遥控系统.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

无线遥控系统.docx

《无线遥控系统.docx》由会员分享,可在线阅读,更多相关《无线遥控系统.docx(15页珍藏版)》请在冰豆网上搜索。

无线遥控系统.docx

无线遥控系统

 

设计题目:

基于STM32与nRF24L01的遥控系统设计

 

学院:

电子工程学院

专业:

应用电子信息工程

学号:

200812601144

姓名:

唐宗欢

指导老师:

何富运

2012年4月20日

 

目录

【摘要】3

【关键词】3

1绪论4

1.1设计背景4

1.2设计意义4

2系统硬件设计4

2.1MCU部分4

2.2键盘模块5

2.3显示模块5

2.4NRF收发模块7

2.5串口模块………………………………………………………………………………….8

3系统软件设计9

3.1系统软件流程9

3.2:

按键部分10

3.3:

NRF24L01收发数据部分11

3.4上位机部分……………………………………………………………………...………11

4结论总结13

4.1结论13

4.2心得体会13

 

【摘要】本文设计一个无线遥控系统,其实现方式是在主控芯片STM32的控制下,实现两片nRF24L01之间的通信,无线数字传输芯片nRF24L01通过无线方式进行数据传输,一个模块进行数据的发送,经过主机数据处理后,另一个模块可以进行数据的接收。

本设计结构简单,实用性较强,在一定距离内传输数据准确而快速,在现实生活中运用也较为广泛,可以灵活运用到车辆控制、遥控、小型无线网络。

、无线抄表等各种实际操作中,所以,本设计在实用过程中有一定的使用价值。

【关键词】主控芯片STM32nRF24L01无线数据传输无线遥控

 

1绪论

1.1设计背景

随着现代科技、经济等产业的快速发展,无线遥控的运用也将广泛的运用到生活生产的实际当中。

在工业控制现场,常常需要采集大量的现场数据,如温度、湿度、气压等,得知相关信息后,可以通过遥控系统,将控制信号传输给现场执行模块进行各种操作。

可以看出,在数据采集和传输的过程中,最终能实现各个设备之间的数据传输,然后再实现对现场的控制,无线遥控控制就是一个很重要的环节。

无线遥控就是指利用无线电波作为数据传输的媒介,将本地计算机或者其他设备的数据信息调制到载波频率上发射,从而和远程终端之间实现控制的技术。

它涉及到计算机技术、信息技术、以及网络技术等多个学科领域。

1.2设计意义

目前,无线遥控技术大体可以有以下方式实现:

红外线遥控方式,无线电遥控方式,超声波遥控方式和声音遥控方式。

红外线遥控方式虽然成本低,响应速度快,但是在控制范围内容易受障碍物影响,容易受外界干扰;超声波频带窄,带信息量少;声音遥控不但信息量少,传播距离也短。

无线电作为新一代信息传输方式,采用特殊的编码解码技术,防止无线电波的干扰,不受角度的限制,传输的距离相对比较远。

近十几年来,随着移动通信技术的飞速发展,越来越多的数据采集和控制系统运用了无线数据传输技术,无线传输布线成本低、安全简便、便于移动的优点,使用在遥控遥测、门禁系统等领域,而且它在高科技领域的应用也正在迅猛发展,比如卫星、导弹、无人侦察机等地数据采集,遥控机器人等地控制,,以及一些监控设备等。

此外,在现代军事领域方面,无线遥控技术也有重要的战略地位,在未来的高科技中,无线遥控系统也将会运用得越来越灵活和广泛。

2系统硬件设计

2.1MCU部分

本设计选择正点原子的ALIENTEKMiniSTM32作为设计开发核心板,其选择的MCU为STM32F103RBT6;STM32F103的型号众多,选择这款的原因是其性价比,作为一款低端开发板,选择STM32F103RBT6是最佳的选择。

128KFLASH、20KSRAM、2个SPI、3个串口、1个USB、1个CAN、2个12位的ADC、RTC、51个可用IO脚…,这样的配置无论放到哪里都是很不错的了,价格便宜,足以与众多芯片媲美。

MCU部分原理图如下图1.1:

图1.1MCU部分原理图

2.2键盘模块

开发板上的按键KEY0是接在PA13上,KEY1是接在PA15上的,WK_UP(KEY2)接在PA0上。

按键原理图如下图1.2所示:

图1.2按键原理图

2.3显示模块

显示采用2.8寸TFT彩屏显示,清楚方便。

FT-LCD与无源TN-LCD、STN-LCD的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。

TFT-LCD也被叫做真彩液晶显示器。

模块有如下特点:

1,2.4’/2.8’两种大小的屏幕可选。

2,320×240的分辨率。

3,16位真彩显示。

4,自带触摸屏,可以用来作为控制输入。

该模块采用的是显尚光电的DST2001PHTFTLCD,DST2001PH的控制器为ILI9320,采用26万色的TFTLCD屏,分辨率为320×240,采用16位的80并口。

实物图如下图1.3、模块原理图如下图1.4:

图1.32.8TFT实物图

 

 

图1.4模块原理图

该接口同目前主流的几款STM32开发板的接口完全兼容,所以模块除了用在ALIENTEKMiniSTM32开发板上,也可以用在其他开发板上,当然你也可以使用其他接口一样的LCD模块放到我们的ALIENTEKMiniSTM32开发板上使用。

ALIENTEKTFTLCD模块采用80并口口方与外部链接,采用16位数据线(低了速度太慢,用彩色就没什么效果了)。

该模块的80并口有如下一些信号线:

CS:

TFTLCD片选信号。

WR:

向TFTLCD写入数据。

RD:

从TFTLCD读取数据。

D[15:

0]:

16位双向数据线。

RST:

硬复位TFTLCD。

RS:

命令/数据标志(0,读写命令;1,读写数据)。

2.4NRF收发模块

NRF24L01无线模块,采用的芯片是NRF24L01,其为2.4G模块接口,采用8脚插针方式与开发板连接,安装拆卸比较方便。

其主要特点如下:

(1)2.4Ghz全球开放ISM频段免许可证使用

(2)最高工作速率2Mbps,高效GFSK调制,抗干扰能力强,特别

适合工业控制场合

(3)126频道,满足多点通信和跳频通信需要

(4)内置硬件CRC检错和点对多点通信地址控制

(5)低功耗1.9-3.6V工作,待机模式下状态为22uA;掉电模

式下为900nA

(6)内置2.4Ghz天线,体积小巧15mmX29mm

(7)模块可软件设地址,只有收到本机地址时才会输出数据(提

供中断指示),可直接接各种单片机使用,软件编程非常方便

(8)内置专门稳压电路,使用各种电源包括DC/DC开关电源均有

很好的通信效果

(9)2.54MM间距接口,DIP封装

(10)工作于EnhancedShockBurst具有Automaticpacket

handling,Autopackettransactionhandling,具有可选的内置包

应答机制,极大的降低丢包率。

(11)与51系列单片机P0口连接时候,需要加10K的上

拉电阻,与其余口连接不需要。

(12)其他系列的单片机,如果是5V的,请参考该系列

单片机IO口输出电流大小,如果超过10mA,需要串联电阻分压,否则容易烧毁模块!

如果是3.3V的,可以

直接和RF24l01模块的IO口线连接。

比如AVR系列单片机

如果是5V的,一般串接2K的电阻。

模块硬件接口如下图1.5所示:

图1.5模块硬件接口

 

2.5串口模块

这里三个部分一起介绍,ALIENTEKMiniSTM32开发板板载了USB串口,并且由USB提供电源,使得我们只需要一根USB线就可以使用ALIENTEKMiniSTM32开发板了,包括下载、供电、调试3位一体。

 

图1.6USB串口、USB、电源部分原理图

3系统软件设计

3.1系统软件流程

主程序对系统函数进行初始化,GPIO口配置,系统时钟,初始化外设。

通过按键扫描,选择收发模式后,再次通过按键扫描,准确的将数据传到另一MCU,以液晶的形式显示出来,清晰明了。

软件整体流程图如图3.1

 

图3.1整体流程图

3.2按键部分

按键扫描部分分为两个部分,第一部分是通过KEY动作产生的键值来判断NRF24L01的收发模式(KEY0为接收模式,KEY1为发送模式),一旦确定模式后,MCU将执行相应的操作;第二部分是通过第一部分的KEY动作后,选择为TX_Mode后执行的,KEY0则为传送累加字符(“a~z”),KEY1则为传送字符串“Helloteacher!

”;最后送到液晶显示。

程序流程图如图3.2所示

 

图3.2程序流程图

 

3.3NRF24L01收发数据部分

NRF24L01读写数据均是通过SPI对芯片的读写实现的,首先置CSN为低,使能芯片,配置芯片各个参数。

配置参数在PowerDown状态中完成。

如果是Tx模式,填充TxFIFO。

配置完成以后,通过CE与CONFIG中的PWR_UP与PRIM_RX参数确定24L01要切换到的状态。

TxMode:

PWR_UP=1;PRIM_RX=0;CE=1(保持超过10us就可以);RxMode:

PWR_UP=1;PRIM_RX=1;CE=1;

IRQ引脚会在以下三种情况变低:

TxFIFO发完并且收到ACK(使能ACK情况下)

RxFIFO收到数据

达到最大重发次数

将IRQ接到外部中断输入引脚,通过中断程序进行处理。

Tx模式初始化过程:

1)写Tx节点的地址TX_ADDR

2)写Rx节点的地址(主要是为了使能AutoAck)RX_ADDR_P0

3)使能AUTOACKEN_AA

4)使能PIPE0EN_RXADDR

5)配置自动重发次数SETUP_RETR

6)选择通信频率RF_CH

7)配置发射参数(低噪放大器增益、发射功率、无线速率)RF_SETUP

8)选择通道0有效数据宽度Rx_Pw_P0

9)配置24L01的基本参数以及切换工作模式CONFIG。

Rx模式初始化过程:

初始化步骤24L01相关寄存器

1)写Rx节点的地址RX_ADDR_P0

2)使能AUTOACKEN_AA

3)使能PIPE0EN_RXADDR

4)选择通信频率RF_CH

5)选择通道0有效数据宽度Rx_Pw_P0

6)配置发射参数(低噪放大器增益、发射功率、无线速率)RF_SETUP

7)配置24L01的基本参数以及切换工作模式CONFIG。

3.4上位机部分

主要实现上位机键盘扫描,通过串口发送到MCU,再通过MCU控制nRF24L01发送键盘数据。

如图3.4所示。

 

图3.4上位机软件部分

软件截图如图3.5

图3.5软件截图

4结论总结

4.1结论

本次设计能打到我们预期的效果,传输速率可达2M,方圆100米内均可以无线发送接收数据,且能将数据准确无误的传输到终端接收设备上,所需要的时间短,传输速率快。

而且设备简便,适合用于移动设备中,在实际的应用中,给用户带来了更方便快捷的无线传输系统。

4.2心得体会

本次设计的完成,让我学会了自主设计所要明白的以写知识和道理,在整个设计过程中,一个人的知识和思维水平是有限的,在遇到问题的时候,一个人思考所花的时间很多,但是,只要勇于请教别的同学和老师,大家一起来解决所出现的问题,这样的话,解决问题所花费的时间将会大大减少,从而也提高了我们的工作效率;我想,在以后的工作中,将会有很多机会是团队一起合作的,我会尽自己最大的努力去做好事情,要勤奋的去学习,这样,在团队合作过程中,才会提高整个团队的工作效率。

在这里,也得谢谢老师和同学们得帮助,有他们的指导,我才能在此次的设计中学到知识。

参考文献

[1]例说STM32刘军编著

[2]C程序设计(第三版)谭浩强著,清华大学出版社。

[3]康华光主编.电子技术基础数字部分(第五版)[M].北京:

高等教育出版社。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1