毕业设计王丽霞.docx
《毕业设计王丽霞.docx》由会员分享,可在线阅读,更多相关《毕业设计王丽霞.docx(28页珍藏版)》请在冰豆网上搜索。
毕业设计王丽霞
毕业设计
题目基于PIC的无线数据传输系统设计
学生姓名王丽霞
学号20031334003
院系电子与信息工程学院
专业通信工程
指导教师周杰
二OO七年五月三十日
前言
一、问题的提出:
用于图文显示的LED显示屏,如果只显示一些图形、文字,而对图象、动画以及信息的实时显示要求不高,而且信息的内容和屏与屏切换相对比较稳定,不需要固定计算机实时服务,只需要在控制显示屏的单片机中加入存储块,实现信息的保存功能。
通过无线发射机和无线接收机进行数据的传输,达到对LED显示屏的控制。
二、论文的主要研究内容:
通过软件编辑实现图文编辑与传输。
采用习惯的Windows窗体,开启文本编辑区,完成图形和文字的编辑工作。
在控制系统中实现字模的提取与保存,无需在单片机中加入汉字库。
通过采用PC与无线发射机串行通讯方式,无线接受机接收信息发送给LED显示屏,从而完成信息的传输。
通过对点阵模块和控制电路的分析,确定LED显示屏的部件构成;通过对单片机及智能控制模块的分析,确定LED显示屏的组成结构和扫描驱动方式,实现LED显示屏的显示。
三、本课题系统图
四、论文的组织
通过对软件系统的简要分析,在论文中将对其进行详细的研究与设计。
具体组织安排如下:
第一部分:
LED显示屏控制系统的分析与设计。
这一部分主要由司红君同学设计,在这一部分中主要介绍以下内容:
1、根据具体应用环境的要求,对整个系统进行详细的分析。
主要介绍:
1)整体分析。
对软件的整体结构、框架进行分析与研究
2)软件控制系统分析。
在本节中,对系统的编辑、保存、预览功能进行详细的分析与研究;
2、核心控制系统的设计与实现,具体如下:
1)编辑功能设计与实现;
2)字模;
3)图像预处理的设计与实现;
4)在核心功能初步实现的基础上,对系统进行开发。
3、设备通讯,利用RS-232串口对数据进行收发。
第二部分:
基于PIC的无线数据传输系统设计。
这一部分主要由王丽霞同学设计,在这一部分中主要介绍以下内容:
1.简单介绍PIC系列单片机。
2.无线数据传输发射机的设计
1)以PIC16F84芯片为基本部件的无线数据传输发射机的各部原理
2)发送信机控制Code码信号
3)发送信机端的程式设计框图
3.无线数据传输接收机的设计
1)高频放大电路
2)遥控接收机接收编码ST0、ST1和ST2的原理
4.系统的调试
1)发送信机的安装调试
2)接收机调测,动作确认
5.小结
第三部分:
LED显示屏工作原理。
这一部分主要由邓成富同学设计,在这一部分中主要介绍:
1、介绍LED的历史、现状及发展
2、单片机概述及LED显示屏的系统概述
3、根据设计的要求,对LED显示屏系统整体结构框架进行分析,并介绍工作过程。
1、硬件设计。
主要完成LED显示屏的驱动任务,采用MCS51系列单片机控制,单片机主要负责与上位机间的通讯接收文件信息并保存,通过行列驱动器控制完成LED点阵的驱动和控制信号。
2、软件设计。
主要介绍LED点阵汉字的显示原理,并通过字模提取软件将16×16点阵的汉字字模转换成8×32的编码,进行编辑语言输入。
目录
1.简单介绍PIC系列单片机............................................5
1.1简介PIC单片机.................................................5
1.2PIC系列单片机数据存储器的特点和功能...........................6
1.3.PIC8位单片的分类和特点......................................6
2.无线数据传输发射机的设计.........................................9
2.1以PIC16F84芯片为基本部件的无线数据传输发射机的各部原理.......10
2.2发送信机控制Code码信号.......................................13
2.3发送信机端的程式设计框图.....................................14
3.无线数据传输接收机的设计........................................15
3.1高频放大电路.................................................16
3.2遥控接收机接收编码ST0、ST1和ST2的原理.......................17
4.系统的调试......................................................18
4.1发送信机的安装调试...........................................18
4.2接收机调测,动作确认..........................................19
5.小结............................................................20
6.致谢............................................................21
7.英文摘要........................................................22
基于PIC的无线数据传输系统设计
王丽霞
南京信息工程大学电子与信息工程学院,南京210044
摘要:
PIC单片机是一种用来开发的去控制外围设备的集成电路。
一种具有分散作用(多任务)功能的CPU。
基于PIC的无线遥控器包括基于PIC的无线数据传输发射机和接收机。
在发射机和接收机电路设计中均采用PICChip控制。
在发射机电路中,采用PIC来控制发射信号的种类和对信号编码的控制。
接收机中采用PIC来对发射机发出的信号进行识别和解码。
以PIC16F84芯片为基本部件,设计并实现无线数据传输发射机。
以PIC16F84芯片为基本部件,设计并实现无线数据传输接收机。
关键词:
PIC单片机无线数据传输PIC16F84芯片发射机接收机
1、简介PIC单片机
1.1PIC单片机(PeripheralInterfaceController)是一种用来开发的去控制外围设备的集成电路(IC)。
一种具有分散作用(多任务)功能的CPU。
与人类相比,大脑就是CPU,PIC共享的部分相当于人的神经系统。
PIC单片机有计算功能和记忆内存像CPU并由软件控制允行。
然而,处理能力—存储器容量却很有限,这取决于PIC的类型。
但是它们的最高操作频率大约都在20MHz左右,存储器容量用做写程序的大约1K—4K字节.因为PIC单片机可以把计算部分、内存、输入和输出等都做在一个芯片内。
所以她工作起来效率很高、功能也自由定义还可以灵活的适应不同的控制要求,而不必去更换不同的IC。
这样电路才有可能做的很小巧[1]。
PIC的取指和执行采用双指令流水线结构,当一条指令被执行时,允许下一条指令同时被取出,这样就实现了单周期指令。
因为PIC单片机可以把计算部分、内存、输入和输出等都做在一个芯片内。
所以她工作起来效率很高、功能也自由定义还可以灵活的适应不同的控制要求,而不必去更换不同的IC。
这样电路才有可能做的很小巧。
[2]
PIC的总线结构是哈佛结构,指令和数据空间是完全分开的,一个用于指令,一个用于数据,由于可以对程序和数据同时进行访问,所以提高了数据吞吐率。
正因为在PIC系列单片机中采用了哈佛双总线结构,所以与常见的微控制器不同的一点是:
程序和数据总线可以采用不同的宽度。
数据总线都是8位的,但指令总线位数分别位12、14、16位。
寄存器组:
PIC的所有寄存器,包括I/O口,定时器和程序计数器等都采用RAM结构形式,而且都只需要一个指令周期就可以完成访问和操作;根据程序存储方式的不同,单片机可分为EPROM、OTP(一次可编程)、QTP(掩膜)三种。
我国一开始都采用ROMless型单片机(片内无ROM,需片外配EPROM),对单片机的普及起了很大作用,但这种强调接口的单片机无法广泛应用,甚至走入了误区。
如单片机的应用一味强调接口,外接I/O及存储器,便失去了单片机的特色。
目前单片机大都将程序存储体置于其内,给应用带来了极大的方便。
1.2PIC系列单片机数据存储器的特点和功能
PIC系列单片机品种虽多,但各产品内部硬件资源的数据存储器设置仍是很有规律的[3]。
1.2.1统一编址 PIC系列单片机各类数据存储器都是以寄存器方式工作和寻址的。
专用寄存器包括了定时寄存器TMRO、选择寄存器OPTION(又称为项选寄存器)、程序计数器PCL、状态寄存器STATUS、间接寻址寄存器INDF和FSR、端口I/O寄存器(如PORTA、PORTB…)和相对应的端口I/O控制寄存器(又称为端口I/O数据方向寄存器,如TRIAS、TRISB…)、保持寄存器PCLATH和中断控制寄存器INTCON等。
上述的专用寄存器都是PIC16C63/65/65A和PIC16C71A共同有的,它们不仅是寄存器名称、功能相同,而且寄存器的地址也完全相同。
如果再查看其它PIC单片机,如PIC16C62/62A/64/64A、PIC16C71/72/73/73A/74/74A、PIC16C8X……它们的专用寄存器名称凡是与以上相同者其地址也完全与上述相同。
型号不同的PIC单片机,其数据存储器的内部资源仅仅是功能种类和多少的不同。
如PIC16C71A型,其引脚为18脚,主要功能是带有8位的A/D转换部件,有4个A/D通道模拟输入,所以与其A/D转换部件有关的专用寄存器ADRES(用于存放A/D转换的数值结果)、A/D控制寄存器ADCON0(用于控制A/D转换器的操作)和A/D控制寄存器ADCON1(用于控制选择A/D引脚的功能)等。
对PIC16C65/65A型,其引脚是40脚的,其功能比PIC16C71A强,因而数据存储器的专用寄存器的种类就增加了很多。
专用寄存器的每个寄存单元都有相对应的固定用途,它们可分成两类:
一类用于供CPU操作(如INDF和FSR、STATUS、PCL……);另一类用于控制外围功能芯片的操作。
1.2.2间接寻址寄存器INDF和FSR位于PIC数据存储器的最顶端、地址00单元(地址码最小)的间接寻址寄存器INDF是一个空的寄存器。
它只有地址码,在物理上不是一个真正的寄存器。
它的功能常常与寄存器FSR(又称寄存器选择寄存器)配合工作,实现间接寻址目的。
初学专用寄存器INDF和FSR时,记住下述的逻辑关系对编程是有帮助的:
使用寄存器INDF的任何指令,在逻辑上都是对寄存器FSR所指向的RAM进行访问,即对INDF(本身)进行间接寻址(访问),读出的应是FSR内容。
以下的一个简单程序是用间接寻址方式清除RAM地址20h~2Fh单元寄存器内容的实例。
1.3.PIC8位单片的分类和特点[4]
1.3.1PIC8位单片机产品共有三个系列,即基本级、中级和高级。
基本级系列:
该级产品的特点是低价位,如PIC16C5X,适用于各种对成本要求严格的家电产品选用。
又如PIC12C5XX是世界第一个8脚的低价位单片机,因其体积很小,完全可以应用在以前不能使用单片机的家电产品的空间。
中级系列:
该级产品是PIC最丰富的品种系列。
它是在基本级产品上进行了改进,并保持了很高的兼容性。
外部结构也是多种的,从8引脚到68引脚的各种封装,如PIC12C6XX。
该级产品其性能很高,如内部带有A/D变换器、E2PROM数据存储器、比较器输出、PWM输出、I2C和SPI等接口。
PIC中级系列产品适用于各种高、中和低档的电子产品的设计中。
高级系列:
该系列产品如PIC17CXX,其特点是速度快,所以适用于高速数字运算的应用场合中,加之它具备一个指令周期内(160ns)可以完成8×8(位)二进制乘法运算能力,所以可取代某些DSP产品。
再有PIC17CXX具有丰富的I/O控制功能,并可外接扩展EPROM和RAM,使它成为目前8位单片机中性能最高的机种之一。
所以很适用于高、中档的电子设备中使用。
1.3.2PIC8位单片机具有指令少、执行速度快等优点,其主要原因是PIC系列单片机在结构上与其它单片机不同。
该系列单片机引入了原用于小型计算机的双总线和两级指令流水结构。
这种结构与一般采用CISC(复杂指令集计算机)的单片机在结构上是有不同的[5]。
双总线结构具有CISC结构的单片机均在同一存储空间取指令和数据,片内只有一种总线。
这种总线既要传送指令又要传送数据。
因此,它不可能同时对程序存储器和数据存储器进行访问。
因与CPU直接相连的总线只有一种,要求数据和指令同时通过,显然“乱套”,这正如一个“瓶颈”,瓶内的数据和指令要一起倒出来,往往就被瓶颈卡住了。
所以具有这种结构的单片机,只能先取出指令,再执行指令(在此过程中往往要取数),然后,待这条指令执行完毕,再取出另一条指令,继续执行下一条。
这种结构通常称为冯·诺依曼结构,又称普林斯顿结构。
在这里PIC系列单片机采用了一种双总线结构,即所谓哈佛结构。
这种结构有两种总线,即程序总线和数据总线。
这两种总线可以采用不同的字长,如PIC系列单片机是八位机,所以其数据总线当然是八位。
但低档、中档和高档的PIC系列机分别有12位、14位和16位的指令总线。
这样,取指令时则经指令总线,取数据时则经数据总线,互不冲突。
指令总线为什么不用八位,而要增加位数呢?
这是因为指令的位数多,则每条指令包含的信息量就大,这种指令的功能就强。
一条12位、14位或16位的指令可能会具有两条八位指令的功能。
因此PIC系列单片机的指令与CISC结构的单片机指令相比,前者的指令总数要少得多(即RISC指令集)。
两级指令流水线结构。
由于PIC系列单片机采用了指令空间和数据空间分开的哈佛结构,用了两种位数不同的总线。
因此,取指令和取数据有可能同时交叠进行,所以在PIC系列微控制器中取指令和执行指令就采用指令流水线结构。
当第一条指令被取出后,随即进入执行阶段,这时可能会从某寄存器取数而送至另一寄存器,或从一端口向寄存器传送数等,但数据不会流经程序总线,而只是在数据总线中流动,因此,在这段时间内,程序总线有空,可以同时取出第二条指令。
当第一条指令执行完毕,就可执行第二条指令,同时取出第3条指令,……如此等等。
这样,除了第一条指令的取出,其余各条指令的执行和下一条指令的取出是同时进行的,使得在每个时钟周期可以获得最高效率[6]。
在大多数微控制器中,取指令和指令执行都是顺序进行的,但在PIC单片机指令流水线结构中,取指令和执行指令在时间上是相互重叠的,所以PIC系列单片机才可能实现单周期指令。
只有涉及到改变程序计数器PC值的程序分支指令(例如GOTO、CALL)等才需要两个周期。
此外,PIC的结构特点还体现在寄存器组上,如寄存器I/O口、定时器和程序寄存器等都是采用了RAM结构形式,而且都只需要一个周期就可以完成访问和操作。
而其它单片机常需要两个或两个以上的周期才能改变寄存器的内容。
上述各项,就是PIC系列单片机能做到指令总数少,且大都为单周期指令的重要原因。
上述的三层次(级)的PIC8位单片机还具有很高的代码兼容性,用户很容易将代码从某型号转换到另一个型号中。
1.3.3PIC系列8位单片机为适应各种不同的用途,有多种型号可供选用。
但是,尽管PIC单片机有不同的档次和型号,但其最基本的组成则大同小异[7]。
因此,在这里先从型号PIC16F84的单片机入手,讨论其基本组成。
PIC16F84是双列直插式(DIP)塑料封装,最大时钟频率可达4MHz。
PIC16C84是8位CMOSEEPROM单片机。
它有高性能的类似于RISC的指令,共有35条单字节的指令,所有的指令除程序分支指令需要两个指令周期外,都只需要一个指令周期。
当主振频率为10MHZ时一个指令周期为400ns。
程序指令的宽度为14位,在芯片内有1K×14的EEPROM程序存储器。
数据的宽度为8位,在芯片内有36×8的静态RAM的通用寄存器,64×8的EEPROM的数据存储器。
8级深度的硬堆栈。
具有直接、间接、相对寻址方式。
有4个中断源;外部RBO/INT引脚;TMRO计时器溢出,PORTB<7:
4>引脚上信号的改变;数据写入EEPROM完成。
数据存储器的擦/写可达1000000次,数据的保持大于40年。
有13位的I/O引脚,可以单独直接控制。
每一个I/O引脚均可承受25mA的输入/输出电流,这样就可以直接驱动LED。
有8位的计时/计数器(TMRO)并带有8位可编程的预分频。
有通电复位(POR);功耗上升(POWER-UP)计时器(PWRT);振荡器起动计时器(OST);看门狗计时器(WDT),为了能可靠工作,它有自己的RC振荡器。
有代码保证功能。
有SLEEP(睡眠)方式,以节省功耗。
有4种可供选择的振荡器:
RC(低成本的RC振荡器);XT(标准的晶体/谐振器);HS(高速晶体/谐振器);LP(低功耗,低频率的晶体)。
工作电压的范围宽2.0V~6.0V。
PIC16C84单片机最大的特点是具有1K×14位的电可擦除的程序存储器和64×8位的电可擦除的数据存储器,这将为系统开发和各种应用提供了更多的方便。
时钟和指令周期。
从OSCI来的时钟输入在内部经4分频。
产生互不叠加的时佛周期,每4个时钟周期(θ1,θ2,θ3,θ4)组成一个指令周期。
在内部、程序计数内对每一个θ1加1,然后从程序存储器取指令,取出的指令在θ4时放入指令寄存内。
在下一个θ1利θ4期间指令被执行。
取指令和执行指令采用流水线技术,一个指令周期取指令,下一个指令周期执行已取出的指令,同时又取出下一条指令。
所以每条指令执行,CPU的时间是一个指令周期。
当某条指令要改变程序计数器的内容时(如分支指令),则需要两个指令周期才能完成。
被取出的指令在执行指令周期的θ1时放入指令寄存器,在θ2,θ3,θ4时译码并执行指令。
在θ2期间读操作在θ4期间写操作数。
存贮器的结构。
在PIC16C84单片机中有两个存储器块。
即程序存储器和数据存储器。
每一块具有它自己的总线,即可在同一时钟周期访问每一块。
数据存储器被进一步分成通用RAM和专用功能寄存器(SFRS)。
专用功能寄存器用于控制外设模式。
数据存储器也包含有数据EEPROM存储器。
这个存储器并不直接映象到数据存储器,而是间接映象的。
即由一个间接寻址的指针指明要读/写的数据EEPROM的地址。
64个字节的数据EEPROM具有的地址是0~3FH。
PIC16F84虽然体积不大,但仍然是一个完整的计算机,它有一个中央处理器(CPU)、程序存储器(ROM)、数据寄存器(RAM)和两个输入/输出口(I/O口)。
和其它品种的单片机一样,CPU是此单片机的“首脑”,它从程序存储器中读取和执行指令。
在取指和执行时,还可同时对数据寄存器进行取数(PIC16F84采用哈佛结构)。
程序存储器和数据存储器各有一条总线与CPU相连。
有些CPU将CPU内部的寄存器与其外部的RAM是分开管理的,但PIC单片机不是这样,它的通用数据RAM也归为寄存器,称为File寄存器。
在PC16F84中,有68个字节的通用RAM,其地址为0CH~4FH。
除了通用数据寄存器外,还有一些专用寄存器,其中最常用的工作寄存器为“W寄存器”。
CPU将工作数据存放在W寄存器中。
寄存器W的作用与其它单片机中的“累加器A”相似。
此外,还有几个专用寄存器,它们分别以某种方式控制PIC的运作。
PIC16F84的程序存储器是由Flash(闪速)EPROM构成,它可用电来记录和擦除,而在断电时,仍可保留其内容。
PIC单片机有些型号的程序存储器用的是EPROM,需要用紫外线来擦除;还有一些型号是一次性可编程(OTP)的产品(一经编程便不能再擦除)[8]。
PIC16F84有两个输入/输出口,即A口和B口。
每个口的每个引脚可单独设定为输入或输出。
各个口的位是从0开始编号的。
当A口为输出方式时,其第4位(即RA4)为开路集电极(或开路漏极)输出,而B口及A口其它各位为常规的全CMOS驱动电路。
这些功能必须注意,否则会在编程时出错。
CPU对每个端口都按一个字节8位来处理,但A口只有5位引脚。
PIC输入与COMS兼容,所以PIC输出可驱动TTL或CMOS逻辑芯片。
每个输出引脚可以流出或吸入20mA电流,即使一次只用了一个引脚亦是如此。
PIC16F84还有一些其它功能,如用来长期存放数据的EEPROM、定时器/计数器模块等。
本无线数据传输系统就是利用PIC16F84来实现的。
2.基于PIC的无线数据传输发射机
基于PIC的无线数据传输系统包括基于PIC的无线数据传输发射机和接收机。
在发射机和接收机电路设计中均采用PICChip控制。
在发射机电路中,采用PIC来控制发射信号的种类和对信号编码的控制。
接收机中采用PIC来对发射机发出的信号进行识别和解码。
这里主要介绍以PIC16F84芯片(图1为它的电路图)为基本部件,设计并实现无线数据传输发射机。
我们采用PIC16F84芯片编程来产生控制编码。
这种方式能使我们简单改写PIC程式就能产生各种不同的编码,利于对各种器件的控制和简化发射器电路的设计。
图1遥控器发射机电路图
无线数据传输发射机使用PIC16F84芯片(如图2)。
具体电路设计时,编码控制由RA0和RA1输入端口选择控制。
对发振器的控制由RA4端口输出信号控制。
图2无线数据传输发射机使用PIC16F84芯片
具体电路设计时,编程控制由RA0和RA1输入端口选择控制。
对发振器的控制由RA4端口输出信号控制。
以PIC16F84芯片为基本部件的无线数据传输发射机中使用了(如图3)。
它是作为高频发振器和高频功率器使用。
也就是在电路设计中考虑到使用的是高频,所以在选择器件时考虑它的最大遮断频率。
2SC1906的最大遮断频率为600到1000间。
使用稍低最大遮断频率器件也可。
图32SC1906三级管
2.1以PIC16F84芯片为基本部件的无线数据传输发射机的各部原理
2.1.1高频发振电路
由于电路板的配线长度等等的影响,会影响发振频率。
特别是频率越高,影响越大。
设计时必须在实际电路板实调。
发振具体电路如图4所示C2和C3的选择采用10000pF的高精度电容[9]。
发振产生83MHz的振荡信号。
在发振频率83MHz、10000pF电容的等效交流组抗为0、2欧也就是说在交流高频时,C2和C3的交流组抗很小,可以几乎忽略不计完全就如同短路一样考虑。
图4发振器电路
2.1.2高频功率功率放大器电路(如图6)
由发振器(图5)发出的信号在发射前还必须进行信号放大处理。
如果我们直接从发振起接天线,这样由于天线的位置、大小均会影响发振器的频率。
另外信号发射出的功率也可能不足,所以此间加入功率放大电路。
对于发振器输出信号至功率放大器输入间采用高频线圈耦合变压器。
耦合变压器有多种形式。
本次电路设计采用一个线圈耦合方式。
如图6所示,有数出线权输出信号至三级管的Base极。
放大信号有集电极输出至天线.
2.1.3控制码Code发生电路
对接收机的回路控制是由发信机的控制Code码来控制的。
控制码的发生均由PIC软件实现。
用PIC软件实现有减少硬件和增加控制码的变化灵活性。
本电路控制码使用8位的编码组合。
对控制码的识别采用特定断续间隔来区分。
另外控制的种类区分采