可调电容调整完毕后无法封固,因为无论导体还是绝缘体,各种介质的靠近或侵入都会使电容的容量发生变化,进而影响接收频率。当无线接收模块接收到空间的315MHz信号时,经放大、变频、滤波等处理后输出控制信号,送到第14脚进行解码。图18-11 复位电路图18-12 振荡电路图单片机晶振的作用是为系统提供基本的时钟信号。......
2023-11-04
硬件电路选用Alter公司的EPM7128SLC84-10芯片作为CPLD核心控制器,实现小车直行、左转弯与右转弯的控制;选用Atmel公司的AT89S52作为控制芯片,实现小车速度的显示以及无线通信;选用两个RPR220作为传感器模块,来实现小车行驶路线的寻迹;选用两片L298N作为直流电机的驱动芯片;选用PT2272无线发射和PT2262接收模块进行数据的传送;选用74LS07作为锁存器和6个八段共阴数码管作为显示模块。
1.CPLD模块设计
CPLD是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在线系统”编程)将代码传送到目标芯片中,实现设计的数字系统。而本设计采用的EPM7128SLC84-10是Alter公司生产的CPLD芯片。其具体I/O口的分配为15、16、17、184个作为输出脚,分别与电动机的驱动芯片ABCD相连,作为直流电机左右轮的驱动信号。83针脚与时钟芯片产生的clk时钟引脚相连,从而为控制芯片提供时钟,此I/O口为输入端。75、76引脚与传感器输出相连,作为传感器信号的输入引脚,其电路图如图22-2所示。系统选用12MHz晶振作为时钟电路,给系统工作提供基本的时钟基准信号;利用JTAG口进行数据的下载。
图22-2 CPLD控制电路
2.AT89S52单片机模块设计
AT89S52是一种低功耗、高性能、由CMOS工艺制成的8位控制器,具有8K字节可编程Flash存储器,由于Atmel公司采用高密度非易失性存储制造工艺,使得AT89S52与89C51单片机的指令和引脚完全兼容,用过89C51的读者可以快速掌握89S52的使用方法。其中片上Flash允许程序存储器在线编程,适用于常规编程器,促使AT89S52为众多嵌入式控制应用系统提供灵活、有效的解决方案。
本系统设计中采用两片单片机,实现小车距离的计算与站台显示,资源分配具体如下:小车控制单片机芯片采用P1.1,P1.2连接两个传感器,进行路程计算;P0口作为无线发射模块的输出口,实现数据的发送,如图22-3所示。而站台控制单片机芯片采用P0口输出控制数码管的段码信号;P2口输出控制数码管的位码选通信号;P1口作为无线接收模块实现数据接收,电路图如图22-4所示。
图22-3 小车单片机电路原理图
图22-4 站台控制单片机电路原理图
系统采用11.0592MHz晶振作为时钟电路,给系统工作提供基本的时钟基准信号;采用手动加上电复位作为系统的复位电路,使得电路在发生异常时可随时复位回到初始状态。
3.传感器模块设计
该模块主要采用的芯片是RPR220芯片,该芯片具有如下特点:塑料透镜可以提高灵敏度,内置可见光过滤器能减小离散光的影响,体积小、结构紧凑;当发光二极管发出的光遇到白纸反射回来时,晶体管导通输出低电平,否则晶体管截止输出高电平。因此光电管调理电路简单,工作性能稳定,传感器测量距离为6mm,安装在小车底部与地面相距5mm。传感器设计电路如图22-5所示。
图22-5 传感器检测与调理电路图
电路中,R2起限流电阻的作用,R4起上拉电阻的作用,使得RPR220在检测到黑色轨迹晶体管截止时能保证输出高电平。由于RPR220的输出电压(IC)与光照(输入电流IF)呈线性关系,为了提高系统的抗干扰能力和系统的稳定性,因此在RPR220输出端加上LM393电压比较器,输出稳定的“0”或“1”信号。光电对管检测可调电阻R11可以调节比较器的门限电压,经示波器观察,输出波形为稳定的高低电平。由于LM393电压比较器是集电极开路输出的,所以必须加上拉电阻R13,才能输出高电平。同时为了方便调试,接一个LED作为0/1信号的指示灯。当RPR检测到黑色轨迹线时,电压比较器电路输出低电平,此时LED发光,否则LED不亮。
4.电动机驱动模块设计
本设计采用L298N作为电动机驱动芯片,L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路,可以方便地驱动两个直流电机或一个两相步进电动机。由于L298N的逻辑电源采用5V供电,故其5、7、10、124个引脚可直接连接到CPLD上,通过对CPLD的编程就可以实现两个直流电动机的PWM调速以及正反转等功能,L298N控制逻辑真值表见表22-1。
表22-1 L298N控制逻辑真值表(www.chuimin.cn)
L298N芯片可以驱动两个两相电动机,也可以驱动一个四相电动机,输出电压最高可达50V,可以直接通过电源来调节输出电压,驱动电路如图22-6所示。
5.无线通信模块设计
PT2262/PT2272是中国台湾普城公司生产的一种CMOS工艺制造的低功耗、低价位通用编解码电路。PT2262/PT2272可有12位(A0~A1)三态地址端引脚(悬空,接高电平,接低电平),任意组合可提供531441个地址码,PT2262最多可有6位(D0~D5)数据端引脚,而设定的地址码和数据码是从芯片17脚串行输出。
图22-6 电动机驱动电路原理图
(1)PT2262芯片
该编码芯片PT2262发出的编码信号由地址码、数据码、同步码三者组成一个完整的码字,当解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直进行数据发送,那么编码芯片也会连续发射。当发射机没有发送时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作。当有数据发送时,PT2262就进行工作,其第17脚就输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低电平期间,315MHz的高频发射电路就停止振荡,不工作。所以高频发射电路完全取决于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。PT2262的引脚说明见表22-2。
本次系统设计中A0~A7悬空,D0~D3作为数据的输入端,与单片机相连,并由外围电路将数据发射出去。由于考虑到外围电路要采用到高频信号,因此采用的是集成电路模块。
(2)PT2272芯片
PT2272解码芯片有不同的后缀,表示不同的功能,其中有L4/M4/L6/M6之分,其中L表示锁存输出,数据只要成功接收信号就会一直保持对应的电平状态,直到下次传送数据发生变化时改变。M表示非锁存输出,数据脚输出的电平是瞬时的,并且这和发射端是否发射相关,可以用于类似点动控制的方式。而后缀的6和4表示有几路并行的控制通道,即采取的几位数据传输。当采用4路并行数据时(PT2272-M4),对应的地址编码应该是8位,如果采用6路的并行数据时(PT2272-M6),对应的地址编码应该是6位。其引脚说明见表22-3。
表22-2 PT2262引脚说明
表22-3 PT2272引脚说明
PT2272与PT2262芯片的编码一致才能传输,所以本文中PT2272的A0~A7也悬空,使得其编码方式一样,D0~D3作为数据的输入端,与单片机相连,为了解决单片机P0的复用功能,因此连接了74LS373芯片作为数据锁存器,对P0口进行扩展使用。
6.数码管显示电路设计
数码管是由8段发光二极管组成,成一个日字形,它们可以是共阴极的,也可以是共阳极的。每个数码管都是按a、b、c、d、e、f、g七个笔画和一个小数点DP的顺序排列的,这8个对应二极管如果阳极连在一起就称共阳极,阴极连在一起称共阴极。数码管可以通过硬件解码电路得到相应的段码,也可以通过软件查询段码表得到相应数字的段码。本系统设计中采用动态扫描方式,P0控制数码管的段码,而P2口控制数码管的位码,6个数码管显示电路原理图如图22-7所示。
图22-7 数码管显示电路原理图
有关51单片机初级入门实战教程的文章
可调电容调整完毕后无法封固,因为无论导体还是绝缘体,各种介质的靠近或侵入都会使电容的容量发生变化,进而影响接收频率。当无线接收模块接收到空间的315MHz信号时,经放大、变频、滤波等处理后输出控制信号,送到第14脚进行解码。图18-11 复位电路图18-12 振荡电路图单片机晶振的作用是为系统提供基本的时钟信号。......
2023-11-04
DS18B20数字温度计是DALLAS公司生产的1—Wire,即单总线器件,具有线路简单,体积小特点。报警搜索命令识别并标志超过程序限定温度的器件。图23-5 DS18B20读时序图23-6 DS18B20写时序温度采集电路连接到单片机的P3.7引脚,I/O口上通过R3上拉到VCC。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。......
2023-11-04
本节主要介绍下载软件STC-ISP在Windows 7系统中的应用,网络下载STC-ISP安装软件,在软件包中找到可执行文件,鼠标右击在弹出选项中找到属性选项如图2-39所示。图2-39 STC-ISP属性菜单操作图2-40 STC-ISP属性对话框设置完成后运行,STC-ISP可以正常进行程序烧写工作,如图2-41所示。......
2023-11-04
函数名由用户自定义,后面是空括号,代表没有函数参数,即代表无参函数,注意空括号不可以省略。函数被调用时,主调函数将通过实际参数,简称实参,传递实际的值给这些形参。3)函数定义时没有写明类型标识符,则默认为整型。......
2023-11-04
所谓的函数调用就是在一个函数体中引用另外一个已经定义的函数,前者为主调函数,后者为被调用函数。这种情况是把该函数的返回值作为实参进行传送,因此要求该函数必须是有返回值。因此在以后各主调函数中不用对ann和circle函数说明,可直接调用。......
2023-11-04
③if-else-if形式:当有多个分支选择时,采用if-else-if语句,形式为if语句1;else if语句2;else if语句3;…使用switch语句时注意以下几点:①case后的各常量表达式的值是不一样的,否则会出现错误。②在case后,允许出现多条语句,可以不用{}括起来。③各case和default语句位置的先后顺序可以改变,而不会影响程序执行结果。......
2023-11-04
对于基本数据类型量,根据变量值在程序执行过程中是否发生变化,又可分为常量和变量两种。常量——与变量相对应,在程序执行的过程中,其值不能发生改变。习惯上用大写字母来表示符号常量的标识符,用小写字母表示变量标的识符。程序中使用变量须先用标识符作为变量名,并指出所用的数据类型和存储模式。各变量名之间用逗号间隔,类型说明符与变量名之间至少用一个空格间隔。......
2023-11-04
提供内部上电自动复位电路,当外加电源电压超过4.5V时,自动对模块进行初始化操作,将模块设置为默认的显示工作状态。1602LCD芯片逻辑工作电压4.5~5.5V,LCD驱动电压3~5V,最佳工作电压5.0V,显示容量16×2个字符;工作电流2.0mA;字符尺寸2.95×4.35(W×H)mm。表14-1 LCD1602引脚描述第1引脚:VSS为地电源。LCD1602基本操作时序见表14-2。......
2023-11-04
相关推荐