基于51单片机的无线通信
基于51单片机的无线数据收发系统设计(带电路图和代码)

1 引言伴随着短距离、低功率无线数据传输技术的成熟,无线数据传输被越来越多地应用到新的领域。
与有线通信方式相比,无线通信以其不需铺设明线,使用便捷等一系列优点,在现代通信领域占重要地位。
但以往的无线产品存在范围和方向上的局限。
例如,一些无线产品在使用时,无法将信息反馈给控制者;还有一些无线产品不能很好地显示参数或状态信息,如果能在系统中增加一块小型液晶显示电路,产品不仅能向用户显示其状态或状态的改变,而且可以大大降低成本。
正如人们所发现的,只要建立双向无线通信-双工通信并且选择成本低的收发芯片,就会出现许多新应用。
本次设计主要是利用无线收发电路,加上单片机控制与液晶显示制成一套完整的数据收发系统。
考虑到目前市场上的一些需求,设计的主要要求是方案成本低,体积小,低功耗,集成度高,尽量无需调外部元件,传输时间短,接口简单。
nRF401是国外最新推出的单片无线收发一体芯片,它在一个20脚的芯片中包括了高频发射、高频接收、PLL合成、FSK调制、多频道切换等功能,并且外围元件少,便于设计生产,功耗极低,集成度高,是目前集成度较高的无线数传产品,它为低速率低成本的无线技术提出了解决方案。
2 无线数据收发系统2.1 系统组成无线数据传输系统有点对点,点对多点和多点对多点三种。
本系统由于实际应用的需要,接收器和数据终端之间的数据传输通过nRF401进行,构成点对点无线数据传输系统。
整个系统中,两数据终端之间的无线通信采用433MHz的频段作为载波频率,收发通过串口通信。
无线数据收发系统可以分为无线收发控制电路、单片机控制电路、显示电路和按键电路四部分组成,系统原理如图2-1所示:图2-1 无线数据收发系统原理图2.2 实现过程当我们需要发送数据时,使用按键来输入所需发送的信息。
按键与单片机AT89S52的P3.2-P3.5口相接,单片机的 P1.0口控制信息的发送与接收,并且TXD 端与收发器输入端相连,通过TXD将数据传入收发器,收发器接收到数据后,通过FSK调制,将信号发送出去;接收端的收发器通过解调,将载波信号转换为数字信号,完成信息传输过程;收发器的输出端通过RXD端将数字信号输入到单片机;单片机将数据传送到显示器,这样就完成了一次数据发送与接收并显示的过程。
基于 51 单片机的无线数据收发系统设计

基于 51 单片机的无线数据收发系统设计摘要:系统使用 51 单片机通过NRF24L01 模块远程传输数据,接收端通过NRF24L01 模块接收无线数据。
处理后由液晶进行数据显示,可根据需要设置声音提示。
系统接收与发送端模块均单片机、无线发送模块/ 接收、显示、声音提示模块。
关键词:51 单片机;NRF24L01;液晶显示;无线通讯1硬件设计1.1系统组成该系统将数据经过控制器由无线发送模块进行远距离发送,再通过接收端进行无线数据接收。
接收的数据经控制器处理后由液晶显示器显示,并根据需要可以实现一定的声音提示。
1.2无线收发模块本设计使用无线通讯技术实现数据的传送,能够实现此功能的硬件电路模块总类较多。
为符合设计需求,采用以NRF24L01 为核心的无线通讯模块。
该方案可以使系统具有低成本,低功耗,体积小等特点。
NRF24L01 无线模块出至 NORDIC 公司。
其工作频段在 2.4G— 5GHz,该模块正常工作电压为 1.9V—3.6V,内部具有 FSK 调制功能,集成了 NORDIC 公司自创的增强短脉冲协议。
该模块最多可实现 1 对 6 的数据发送与接收。
其每秒最高可传输两兆比特,能够实现地址检验及循环冗余检验。
若使用 SPI 接口,其每秒最高可传输八兆比特,多达 128 个可选工作频道,将该芯片的最小系统集成后,构成NRF24L01 无线通信模块。
1、引脚功能此模块有 6 个数据传输和控制引脚,采用 SPI 传输方式,实现全双工串口通讯,其中 CE脚为芯片模式控制线,工作情况下,CE 端协配合寄存器来决定模块的工作状态。
当4 脚电平为低时,模块开始工作。
数据写入的控制时钟由第 5 脚输入,数据写入与输出分别为 6、7 脚,中断信号放在了第 8 脚。
2、电器特性NRF24L01 采用全球广泛使用的 2.4Ghz 频率,传输速率可达 2Mbps,一次数据传输宽度可达 32 字节,其传输距离空旷地带可达2000M 此模块增强版空旷地带传输距离可达 5000M—6000M, 因内部具有 6 个数据通道,可实现 1 对 6 数据发送,还可实现 6 对 1 数据接收,其工作电压为 1.9V-3.6V,当没有数据传输时可进入低功耗模式运行,微控制器对其控制时可对数据控制引脚输入 5V 电平信号,可实现 GFSK 调制。
基于单片机的无线通信系统的设计

基于单片机的无线通信系统的设计无线通信系统是指通过无线电波或光纤等方式进行通信的系统。
本文将基于单片机来设计一个无线通信系统。
一、系统概述本系统基于单片机,通过无线通信模块实现数据的收发功能。
系统主要包括硬件部分和软件部分两个方面。
硬件部分包括单片机、无线通信模块、外围电路和电源等。
单片机主控系统整体工作,通过外围电路与无线通信模块和其他外部设备进行连接。
无线通信模块实现与外部设备之间的数据传输。
电源负责为系统提供工作电压。
软件部分包括单片机内部的主程序和通信协议等。
主程序负责系统的整体控制和数据处理,通过通信协议实现与外部设备的数据交互。
二、系统设计1.硬件设计单片机选择常见的51系列芯片,具有较强的处理能力和丰富的外设接口。
无线通信模块选择常见的Wi-Fi模块或蓝牙模块,具有较远的通信距离和较高的数据传输速度。
外围电路包括键盘、LCD显示屏、电路保护和电源等。
2.软件设计主程序采用C语言编写,通过调用单片机的相关函数实现系统的各项功能。
主程序需要完成以下几个主要的功能:(1)系统初始化:包括单片机和无线通信模块的初始化,外围设备的初始化等。
(2)数据传输:通过调用无线通信模块的发送和接收函数,实现与外部设备的数据传输。
(3)数据处理:对接收到的数据进行处理,通过LCD显示屏输出或者通过外围设备进行控制。
(4)系统控制:根据外部设备的输入,控制系统的各项功能。
三、系统实现1.硬件连接将单片机与无线通信模块、外围设备和电源等进行连接,确保信号的传输畅通稳定。
2.主程序编写3.调试测试将系统进行调试和测试,检查系统是否能够正常工作。
主要包括单片机与无线通信模块的通信是否正常,数据的传输是否准确,外围设备是否能够正常控制等。
四、系统应用无线通信系统可以应用于各种领域,如智能家居、远程监控、无线传感器网络等。
通过无线通信系统,可以实现远程控制和数据传输,方便用户进行操作和监测。
五、总结本文基于单片机设计了一个无线通信系统,通过无线通信模块实现数据的收发功能。
基于51单片机及蓝牙模块通信的动态密码锁设计

基于51单片机及蓝牙模块通信的动态密码锁设计在当今信息安全日益受到重视的社会背景下,动态密码锁成为了一种备受青睐的安全设备。
本文将探讨。
一、引言随着信息技术的不断发展和普及,人们对于信息安全的重视程度越来越高。
在日常生活中,密码锁被广泛应用于各种安全领域,从手机解锁到电子银行密码,密码锁无处不在。
然而,传统的固定密码方式存在着易被猜解、被盗用的风险。
为了提高信息安全性,动态密码锁技术应运而生。
基于51单片机及蓝牙模块通信的动态密码锁设计就是其中一种应用。
二、动态密码锁的发展历程动态密码锁起源于传统密码锁的不足之处。
传统密码锁存在密码易被盗用、无法实现远程授权等问题,这些问题催生了动态密码锁技术的发展。
最早的动态密码锁是基于时间同步算法生成密码,用户需要在规定的时间内输入密码才能解锁。
随着技术的发展,越来越多的动态密码锁采用了基于51单片机及蓝牙模块通信的设计,实现了更加安全、便捷的密码动态生成和验证。
三、基于51单片机及蓝牙模块通信的动态密码锁设计原理基于51单片机及蓝牙模块通信的动态密码锁设计主要包括硬件和软件两个方面。
在硬件方面,动态密码锁需要使用51单片机作为控制核心,通过蓝牙模块实现与手机的通信。
在软件方面,需要编写相应的密码生成算法和验证算法,实现密码的动态生成和验证。
四、51单片机在动态密码锁设计中的应用51单片机作为一种常用的嵌入式开发平台,被广泛应用于动态密码锁设计中。
其低成本、易编程、稳定性好等特点使其成为动态密码锁设计的理想选择。
在动态密码锁设计中,51单片机负责控制密码生成和验证的整个流程,保障密码的安全性和可靠性。
五、蓝牙模块在动态密码锁设计中的作用蓝牙模块作为无线通信模块,在动态密码锁设计中起到了至关重要的作用。
通过蓝牙模块,动态密码锁可以与手机进行通信,实现远程授权、密码传输等功能。
同时,蓝牙模块还可以提供数据加密传输的功能,保障密码在传输过程中的安全性。
六、动态密码生成算法的设计动态密码生成算法是动态密码锁设计中的核心部分。
基于单片机Wifi无线通信方案

添加标题
节能环保:通过Wifi无线通信方案,用户可以实时监测家中的能耗情况,如电能、水能 等,并根据需要调整家电设备的使用情况,实现节能环保。
添加标题
智能语音控制:通过Wifi无线通信方案,用户可以实现智能语音控制,如语音控制家电 设备、语音查询天气等。
在物联网领域的应用
智能家居:通过Wifi无线通信,实现家居设备的远程控制和智能管理 智能医疗:通过Wifi无线通信,实现医疗设备的远程监控和远程诊断 智能交通:通过Wifi无线通信,实现交通设备的远程监控和智能调度 智能农业:通过Wifi无线通信,实现农业设备的远程监控和智能管理 智能物流:通过Wifi无线通信,实现物流设备的远程监控和智能调度 智能安防:通过Wifi无线通信,实现安防设备的远程监控和智能管理
单片机Wifi无线通信方案的设 计
单片机选择与配置
单片机型号:根据项目需求选择合 适的单片机型号,如STM32、 Arduino等
单片机编程:编写单片机的程序, 实现Wifi无线通信功能
添加标题
添加标题
添加标题
添加标题
单片机配置:根据项目需求配置单 片机的引脚、时钟、中断等参数
单片机调试:调试单片机的程序, 确保Wifi无线通信功能正常工作
Wifi模块的选择与配置
模块类型:选择合适的Wifi模块,如ESP8266、ESP32等 模块参数:根据实际需求选择模块的参数,如传输速率、传输距离等 模块配置:配置Wifi模块的SSID、密码、信道等参数 模块接口:选择合适的接口,如UART、SPI等,并配置相应的通信协议
通信协议的设计与实现
程序设计:根据需 求设计程序结构, 包括主程序、初始 化程序、无线通信 程序等
调试方法:使用串 口调试工具、逻辑 分析仪等工具进行 调试,确保程序运 行正常
51单片机无线遥控小车设计

51单片机无线遥控小车设计一、引言无线遥控小车是一种基于51单片机的智能小车系统,它利用无线通信技术实现了对小车的遥控。
通过无线遥控,我们可以随时控制小车的方向,实现室内或者室外的移动。
本设计将详细介绍51单片机无线遥控小车的整体设计框架、电路连接和关键模块设计。
二、整体设计框架整个系统分为遥控器端和小车端两个部分。
遥控器端通过按键或者摇杆输入控制指令,经过编码和解码处理后,通过无线传输模块将指令发送给小车端。
小车端接收到指令后,通过解码和控制模块来控制小车的运动。
三、电路连接遥控器端由单片机、按键(或者摇杆)、编码芯片和无线传输模块组成。
按键用于输入控制指令,编码芯片用于将按键输入的模拟信号转换为数字信号,单片机将数字信号进行编码后发送给无线传输模块,最终通过无线通信将指令传输给小车端。
小车端由单片机、解码芯片、电机驱动、电机和无线接收模块组成。
无线接收模块用于接收遥控器端发送过来的指令,解码芯片将数字信号转换为控制信号,单片机根据控制信号来控制电机驱动,从而实现小车的运动。
四、关键模块设计1.编码和解码模块设计编码和解码模块是整个系统中的关键部分,它负责将模拟信号转换为数字信号,并将数字信号转换为控制信号。
2.无线传输模块选择无线传输模块是实现遥控通信的关键组件,我们可以选择使用蓝牙模块、无线射频模块等。
选择合适的无线传输模块需要考虑通信距离、通信速率、功耗等因素。
3.电机驱动模块设计电机驱动模块负责将控制信号转换为电机运动控制信号,驱动电机完成小车的移动。
在设计电机驱动模块时,需要考虑电机的类型和电机驱动电路的选型。
五、总结本设计详细介绍了51单片机无线遥控小车的整体设计框架,电路连接和关键模块设计。
通过对整个设计的理解和实现,我们可以实现对小车的远程遥控,从而实现室内或者室外的自动移动。
这种无线遥控小车系统在娱乐、智能家居、无人巡检等领域都有广泛的应用前景。
基于51单片机315MHz无线收发模块调试程序

315Mhz 无线通信程序原理:第一块单片机p1.0 口输出脉冲方波提供给无线发射模块,无线发射模块将信号以电磁波的形式传到无线接收模块。
无线接收模块会根据这个电磁波还原出脉冲方波提供给第二块单片机,第二块单片机进行进一步的解算处理。
通信协议:根据这个原理和315模块的特性。
我决定以900us 高电平和2000us 底电平表示1;450us 高电平和2000us 低电平表示0。
而8个1或0组成一个字节。
为了防止误码,所以在每个字节的前面加一个2ms 高电平和2ms 低电平的起始码。
每个5S 发送一个字符,一个字符发送20 遍*******************************//****************************315Mhz 无线通信程序发送程序11.0592M 晶振 1 机器周期=1.0851us定时器产生2MS 定时TH0=0XF8;TL0=0XCD;900us 定时TH0=0XFC;TL0=0XC3;450us 定时TH0=0XFE;TL0=0X61;*******************************/#include<reg52.h>#include "intrins.h"#define uint unsigned int#define uchar unsigned charsbit WXSEND=P1^0;uchar timedata[8]={0xfe,0x61,0xfc,0xc3,0xf8,0xcd,0xea,0x66};// 450us, 900us,2MS,6ms/*************************************11.0592MHZ 下500 毫秒延时,还准***************************************/void delay500ms(uint i)uint j;uchar k;while(i--){for(j=0;j<750;j++)for(k=0;k<200;k++);}}void time0init(){TMOD=0x01;//}void sendset(uchar senddata);// 发送数据程序void sendstartbit();// 数据发送起始信号2ms 高电平和2ms 低电平的起始码void sendlowbit();// 发送低电平void sendhighbit();// 发送高电平void main(){uchar senddata,i;time0init();// 定时器初始化senddata=0x55;while(1) {for(i=0;i<20;i++){sendset(senddata);// 发送数据程序}delay500ms(10);senddata++;}}// 发送数据程序void sendset(uchar senddata){uchar i,sendbit;sendstartbit();// 发送开始信号for(i=0;i<8;i++){sendbit=senddata&0x80;if(sendbit==0)sendlowbit(); // 发送低电平else sendhighbit();// 发送高电平senddata=senddata<<1;}// 数据发送起始信号6ms 高电平和2ms 低电平的起始码void sendstartbit(){WXSEND=1;TH0=timedata[4];TL0=timedata[5];TR0=1;while(TF0==0);TR0=0;TF0=0;TH0=timedata[4];TL0=timedata[5];WXSEND=0;TR0=1;while(TF0==0);TR0=0;TF0=0;}void sendlowbit() // 发送低电平{WXSEND=1;TH0=timedata[0];TL0=timedata[1];TR0=1;while(TF0==0);TR0=0;TF0=0;TH0=timedata[4];TL0=timedata[5];WXSEND=0;TR0=1;while(TF0==0);TR0=0;TF0=0;}void发送高电平sendhighbit()//{WXSEND=1;TH0=timedata[2];TL0=timedata[3];TR0=1;while(TF0==0);TR0=0;TF0=0;TH0=timedata[4];TL0=timedata[5];WXSEND=0;TR0=1;while(TF0==0);TR0=0;TF0=0;}/****************************315Mhz 无线通信程序接收程序11.0592M 晶振 1 机器周期=1.0851us用中断0 边沿触发中断,开启接收程序由于接收模块平时大部分时间是低电平,有信号时是高电平,而中断以,0 是负边沿触发,所硬件电路中接收模块的信号输出端经过非门后接到单片机P3.2接收到数据,用串口传到上位机的串口调试软件显示*******************************/#include<reg52.h>#include "intrins.h" #define uint unsigned int#define uchar unsigned char sbit WXrecep=P3^2;//uchar code timedata[6]={0xfe,0x61,0xfc,0xc3,0xf8,0xcd};// 450us,900us,2MS uchar wxrecepda;void time0init(){TMOD=0x21;// 定时器0TH0=0;TL0=0;//TMOD=0x20;/*TMOD:timer1,mode2,8-bitreload*/TH1=0xFD;/*TH1 11.0592MHz*/TL1=0XFD;EA=1;EX0=1;ET0=1;IE0=0;}void uartinit(){SCON=0x50;/*SCON: 模式1,8-bitUART, 使能接收*/ TR1=1;/*TR1:timer1run*/void receivewx();// 接收子程序void main(){time0init();// 定时器初始化uartinit();while(1) ;}void receivewx()// 接收子程序{uint i;uchar j,recedata;while(WXrecep==0);TR0=0;i=TH0*256+TL0;TH0=0;TL0=0;if((i>=1800)&&(i<=1890)){ recedata=0;for(j=0;j<8;j++){while(WXrecep==1);TR0=1;while(WXrecep==0);TR0=0;i=TH0*256+TL0;if((i>=390)&&(i<=450)) recedata=recedata&0xfe;else if((i>=800)&&(i<=860)) recedata=recedata|0x01;recedata=recedata<<1;TH0=0;TL0=0;}wxrecepda=recedata>>1 ;SBUF=wxrecepda;while(TI==0);TI=0;}}void wxrecint() interrupt 0{TH0=0;TL0=0;TR0=1;EX0=0;receivewx();EX0=1;}。
nrf24l01无线通信模块与51单片机工作原理

nrf24l01无线通信模块与51单片机工作原理无线通信技术在现代社会中扮演着重要的角色,其中nrf24l01无线通信模块与51单片机也成为了无线通信的重要组成部分。
本文将探讨nrf24l01无线通信模块与51单片机的工作原理,以及它们之间的配合关系。
一、nrf24l01无线通信模块nrf24l01无线通信模块是一种低功耗的2.4GHz无线收发模块,广泛应用于物联网、无线传感器网络等领域。
其工作原理基于射频通信技术,通过无线信道进行数据的传输。
nrf24l01模块由无线收发器和嵌入式射频微控制器组成,具备高速率、长距离传输和多通道选择等特性。
1. 发射端工作原理nrf24l01发射端主要由收发器、天线和控制电路组成。
当51单片机通过SPI总线与nrf24l01通信时,可将要发送的数据通过控制电路和收发器转换成射频信号,并通过天线发送出去。
发送端的工作原理可简述为以下几个步骤:a. 初始化设置:通过配置寄存器进行初始化设置,包括工作频率、数据传输速率、天线增益等参数。
b. 数据准备与发送:将待发送的数据加载到发送缓冲区中,并通过发送指令启动数据的发送。
c. 发送前导码:在发送数据之前,发射端会先发送一段前导码作为同步信号,以确保接收端正确接收数据。
d. 数据传输与重发机制:发送端将数据以数据包的形式传输,接收端在接收到数据后会进行确认应答,发送端根据应答情况决定是否进行重发。
2. 接收端工作原理nrf24l01接收端与发送端相似,主要由收发器、天线和控制电路组成。
当发送端通过射频信号将数据发送过来时,接收端的工作原理如下:a. 初始化设置:与发送端类似,接收端也需要通过配置寄存器进行初始化设置,以匹配发送端的参数。
b. 接收与解码:接收端在接收到射频信号后,对信号进行解码,并将解码后的数据加载到接收缓冲区。
c. 数据处理与应答:通过与51单片机的交互,将接收到的数据进行处理,并向发送端发送确认应答,确保数据的可靠性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖北民族学院信息工程学院课程设计报告书题目: 基于51单片机的无线通信课程:数字通信系统课程设计专业:电子班级: 0314411学号: 031441119学生姓名:田紫龙指导教师:黄双林2017年 06月 18日摘要本文设计了一种以AT89S52单片机为控制核心的无线通信控制模块,详细说明了该系统的基本原理、主要电路、硬件框架以及软件框架。
整个系统采用模块化设计,主要包括单片机与下位机之间的无线通信控制电路,以及无线通信模块与51单片机之间通信接口电路。
该通信控制系统通过51单片机和nrf2401的spi通信,从而通过无线通信控制模块形成与下位机的联系,控制下位机运动控制器,并且将通信接收的数据保存到扩展的存储器内。
本模块的通信方法简便,除了可以进行远程实时控制外,还可广泛的应用于工业监控和数据采集系统。
本系统具有性能可靠、抗干扰能力强、功耗低、性价比高等优点,在无线通信领域具有重要的应用价值和良好的发展前景。
关键字:无线通信控制;AT89S52;nRF2401;串行通信目录1 绪论 (1)2 总体设计 (2)3 各个模块简介 (3)1.单片机STC89C52和nRF2401的接口电路 (3)3.1NRF24L01 无线模块简介 (4)3.2 1602简介 (4)4 各个模块设计 (10)4.1硬件电路板的设计 (10)4.2软件程序设计 (11)4.2.1主程序模块 (11)4.3 结果与分析 (13)总结 (14)参考文献 (15)1 绪论伴随着短距离低功率无线数据传输技术的成熟,无线数据传输被越来越多地应用到新的领域。
与有线通信方式相比,无线通信以其不需铺设明线,使用便捷等一系列优点,在现代通信领域占重要地位。
以往的无线产品存在范围和方向上的局限,例如,一些无线产品在使用时,无法将信息反馈给控制者;还有一些无线产品不能很好地显示参数或状态信息,如果能在系统中增加一块小型液晶显示电路,产品不仅能向用户显示其状态或状态的改变,而且可以大大降低成本。
正如人们所发现的,只要建立双向无线通信-双工通信并且选无线数据传输模块基于微功耗单片射频收发器NRF24L01设计,采用89C52单片机完成数据的处理和控制择成本低的收发芯片,就会出现许多新应用。
本次设计主要是利用无线收发电路,加上单片机控制与液晶显示制成一套完整的点对点数据收发系统。
考虑到目前市场上的一些需求,设计的主要要求是方案成本低,体积小,低功耗,集成度高,尽量无需调外部元件,传输时间短,接口简单。
2 总体设计本设计使用M3单片机和51单片机通过nRF24L01模块进行通信实现51单片机发送字符到M3单片机上显示。
系统原理框如图2.1所示.图 2.1系统原理框图当51单片机通过spi对2401进行数据读写完毕后,2401将储存的字符通过射频技术发送给等待的2401,这时M3对2401接受到的数据进行读写,然后再TFT屏上显示接收到的内容。
3 各个模块简介1.单片机STC89C52和nRF2401的接口电路STC89C52有UART和SPI接口,而nRF2401用的是DRI、CLK和DATA三线传输。
考虑到速率的因数, STC89C52和nRF2401的连接准备用SPI接口实现。
SPI(Serial PeriPheral Interface,串行外设接口)接口是一种同步串行外设接口,它可以使MCU和各种外围设备进行通信以交换信息。
外围设备包括Flash RAM,网络控制器,LCD显示驱动器,A/D转换器和MUC等。
图4说明了一个典型的SPI主从式总线结构。
它使用3根线连接了所有的设̅̅̅脚来选择从设备。
备。
主设备通过并行的4个管脚来控制各个从设备的SS图2典型的SPI主从式总线结构1、MOSI (Master Output Slave Input):这个1bit的信号直接连接主设备和从设备。
信号通过MOSI线从主设备串行传输到从设备。
因此,对主设备而言,MOSI是信号输出端口,对从设备而言,则是信号输入端口。
在这条线上,一个Byte的信号通过高位(MSB)到低位(LSB)的传输。
2、MISO (Master Input Slave Output):通过这个1bit的信号线,信号由从设备传输到主设备,因此它是主设备的信号输入端口,从设备的信号输出端口。
信号同样是从MBS到LBS的传输。
3、SCK (SPI Serial Clock):这个信号来同步所有设备的进出MOSI和MISO的数据。
它通过主设备的8个时钟周期来驱动,允许交换串行线上的1个Byte的信号。
̅̅̅ (Slave Select)4、SS̅̅̅管脚保持低电平来选择该从设备。
显然只有主设备通过使某个从设备的SS̅̅̅管脚保持高电平)才能驱动这个系统。
主设备通过软件,利用端口来选择(它的SS从设备。
通过阻止MISO线上的冲突,来保证主设备每次传输只选择一个从设̅̅̅管脚可以和SPI的状态寄存器SPSTA中的MODF一起工备。
在设置主设备时, SS作来阻止多个主设备一起驱动MOSI和SCK。
3.1NRF24L01 无线模块简介NRF24L01 无线模块,采用的芯片是 NRF24L01,该芯片的主要特点如下:1) 2.4G 全球开放的 ISM 频段,免许可证使用。
2)最高工作速率 2Mbps,高校的 GFSK 调制,抗干扰能力强。
3) 125 个可选的频道,满足多点通信和调频通信的需要。
4)内置 CRC 检错和点对多点的通信地址控制。
5)低工作电压(1.9~3.6V)。
6)可设置自动应答,确保数据可靠传输。
该芯片通过 SPI 与外部 MCU 通信,最大的 SPI 速度可以达到 10Mhz。
本章我们用到的模块是深圳云佳科技生产的 NRF24L01,该模块成熟度和稳定性都是相当不错的。
该模块的外形和引脚图如图 3.1 所示:图 3.1 NRF24L01 无线模块外形和引脚图模块 VCC 脚的电压范围为 1.9~3.6V,建议不要超过 3.6V,否则可能烧坏模块,一般用 3.3V电压比较合适。
除了 VCC 和 GND 脚,其他引脚都可以和 5V 单片机的IO 口直连,正是因为其兼容 5V 单片机的 IO,故使用上具有很大优势。
3.2 1602简介1.1602字符液晶显示模块,可显示数字和字母。
与数码管相比显示内容更丰富,而且编程简单。
它能够显示系统的当前工作时间、时间以及温度传感器检测到的温度。
为使用者观察提供了方便。
LCD1602的接口信号说明如表3表3 LCD1602的接口信号编号引脚符号功能说明编号引脚符号功能说明1 VSS 电源地9 D2 DATA I/O2 VDD 电源正极10 D3 DATA I/O3 VL 液晶显示偏压信号11 D4 DATA I/O12 D5 DATA I/O4 RS 数据/命令选择端(H/L)5 R/W 读/写选择端(H/L)13 D6 DATA I/O6 E 使能信号14 D7 DATA I/O7 D0 DATA I/O 15 BLA 背光正极8 D1 DATA I/O 16 BLK 背光负极2.基本操作时序如下:1)读状态:RS=L,RW=H,E=H2)写指令:RS=L,RW=L,D0~D7=指令码,E=高脉冲3)读数据:RS=H,RW=H,E=H4)写数据:RS=H,RW=L,D0~D7=数据,E=高脉冲3.初始化设置1)显示模式设置如表5表4 显示模式设置指令码功能0 0 1 1 1 0 0 0 设置16*2显示,5*7点阵,8位数据接口2)显示开/关及光标设置如表6:表7 显示开/关及光标设置指令码功能0 0 0 0 1 D C B D=1开显示;D=0关显示C=1显示光标;C=0不显示光标B=1光标闪烁;B=0光标不显示0 0 0 0 0 1 N S N=1当读或写一个字符后地址指针加一,且光标加一N=0当读或写一个字符后地址指针减一,且光标减一S=1当写一个字符,整屏显示左移(N=1)LCD1602与MCU的接口电路LCD的D0~D7分别接单片机的的P0口,作为数据线,因为P0口内部没有上拉电阻,所以外部另外加上4.7K的上拉电阻;P2.5—P2.7分别接LCD的RS、RW、E三个控制管脚;RV1用来调节LCD的显示灰度;BLK、BLA为背光的阴极和阳极,接上相应电平即点亮背光灯。
如图4图4 1602显示电路其中1602的第3脚接10K与1.5K的串联电阻起到分压作用,能够调节第一行与第二行亮度对比。
第16接个三极管的作用放大,是为了能够让液晶显示器的背光灯亮起,从而在夜间也能观看显示内容。
3.3 STC89C52单片机单片微型计算机是随着微型计算机的发展而产生和发展的。
自从1975 年美国德克萨斯仪器公司的第一台单片微型计算机(简称单片机)TMS-1000 问世以来,迄今为止,单片机技术已成为计算机技术的一个独特分支,单片机的应用领域也越来越广泛,特别是在工业控制中经常遇到对某些物理量进行定时采样与控制的问题,在仪器仪表智能化中也扮演着极其重要的角色。
如果将8位单片机的推出作为起点,那么单片机的发展历史大致可以分为以下几个阶段:第一阶段(1976—1978):单片机的探索阶段。
以Intel公司的MCS-48为代表。
MCS-48的推出是在工控领域的探索,参与这一探索的公司还有Motorola、Zilog等。
都取得了满意的效果。
这就是SCM的诞生年代,“单片机”一词即由此而来。
第二阶段(1978—1982):单片机的完善阶段。
Intel公司在MCS-48基础上推出了完善的、典型的单片机系列MCS-51。
它在以下几个方面奠定了典型的通用总线型单片机体系结构。
(1)完善的外部总线。
MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有多机通信功能的串行通信接口。
(2)CPU外围功能单元的集中管理模式。
(3)体现工控特性的地址空间及位操作方式。
(4)指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。
第三阶段(1982—1990):8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。
Intel公司推出的MCS-96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。
第四阶段(1990—):微控制器的全面发展阶段。
随着单片机在各个领域全面、深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。
单片机是在集成电路芯片上集成了各种元件的微型计算机,这些元件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时/计数器、中断系统、时钟部件的集成和I/O接口电路。