基于单片机的家用电器远程控制系统内容摘要:

率周期 输 出正 脉冲 信 号 ,此 频 率 为 振 荡 器 频 率的 1/6。 因此它可用作 对 外 部输 出的 脉冲 或用于 定时 目的。 然而要注意的是:每 当 用作外部 数 据存 储 器 时 , 将 跳 过 一 个 ALE 脉冲。 此 时 , ALE 只有在 执 行 MOVX, MOVC 指令是 ALE 才起作用。 另外, 该 引 脚被 略微拉高。 如果微 处 理器在外部 执 行 状态 ALE禁止,置位 无 效。 ( 2) PSEN :外部程序 内 存 读选 信 号。 在由外部程序 内 存取指期 间 ,每 个 机器周期 两次 PSEN 有效。 但在 访问 外部 数 据存 储 器 时 , 这两次有 效的 PSEN 信 号将 不出 现。 ( 3) EA /VPP: 访问 程序 内 存控制信 号。 当 EA 信 号为 低 电平时 , 只访问片 外 11 程序 内 存;而 当 EA 为 高 电平时 , 则对 ROM 的 读 操作是 从内 部程序 内 存开始,并可延续至外部程序内存。 ( 4) RST/VPD:复位 /掉 电 保 护 信 号输 入。 当输 入的复位信 号 延 续 2 个 机器周期以上高 电平即为 有效,用以完成 单 片机的复位操作。 I/O 引 脚 P0 口( ~ ): 8位 双向 并行 I/O 接口。 扩 展片外 内 存或 I/O 口 时 ,作为 低 8 位地址和 8位 数 据 总线 的分 时 复用接口,它 为双向三态。 P0口可 带 8个 TTL负载电 流。 P0口作 为 I/O 输 出口使用 时 ,由于 P0 口 为开 漏 输 出,必 须 外接上拉 电阻 才能有高 电平输 出。 P1 口( ~ ): 8位准 双向 并行 I/O 接口。 P1口每一位都可以 独 立 设 置成输 入 输 出位, P1口可 以驱动 4个 TTL 电 路。 P1 口管 脚写 入 1 后,被 内 部上拉 为高,可用作 输 入, P1 口被外部下拉 为 低 电平时 , 将输 出 电 流, 这 是由于 内 部上拉的 缘 故。 P2 口( ~ ): 8位准 双向 并行 I/O 接口。 扩 展外部 数 据、程序 内 存 时 ,作 为 高 8位地 址输 出端口。 P2 口可 以驱动 4 个 TTL 电 路。 P3 口( ~ ): 8位准 双 向接口并 行 I/O。 除了与 P1 口有一 样 的 I/O 功能外,每一 个 引 脚还兼 有第二功能。 如表 21 所示。 P3 口的第二功能信 号 都是 单片机的重要控制信 号 ,因此,在 实际 使用 时 ,先按需要 选用 第二功能信 号 ,剩下的才以第一功能的身份作 为数 据位的 I/O 使用。 表 21 P3 口各引脚对应的第二功能 RXD RXD 0INT 1INT T0 T1 WR RD P P P3 口 片内均 含有固定的上拉 电阻 ,故 称为 准 双向 并行 I/O 接口。 P0口 片内无 固定的上拉 电阻 , 由两个 MOS 管串接,既可 开 路 输 出,又可 处 于高阻的“ 悬 空” 状态 ,故 称为双向三态 并行 I/O 接口。 DTMF 芯片概述 MT8870 是一个完整的 DTMF 接收解码电路和其它电路,如 LCD 驱动电路一起, 12 可实现 CALLERID 功能。 它集成了陷波滤波器和数字解码功能。 在滤波器部分,使用了开关电容技术;解码部分,用数字计数的方法检测所有 16 种 DTMF 音 频对,并将它们编成 4bits 的码。 通过在芯片上放置差分输入放大器,时钟晶振和可锁存的三态输出,可以使外围元件最少。 信号经过输入放大,过滤掉噪声,再被由 6阶高频组带通滤波器和 8 阶低频组带通滤波器组成的陷波滤波器滤出 DTMF 信号,然后经过平滑滤波,再由过零检测器将模拟信号转换成数字信号,进入数字部分。 信号在数字部分分为两路,一路直接送到频率检测部分,分别对信号进行高频和低频检测。 如果输入信号频率在预先设置的范围内,则将检测结果送到编码部分进行编码,并等待 D 触发器的同步输出信号;如果输入信号频率不在预先 设置的范围内,检测结果维持为 0不变。 另一路则送到频率平均算法部分,分别经过 4, 8分频,以初步检测信号的持续时间,将诸如噪声之类的干扰消除掉;同时,进一步设置更为严格的频率检测范围。 如果信号通过了检测,就使 ESt 端输出高电平,通过外围 RC 回路对 St端充电 (R, C 的值可以根据不同的工业标准进行选择 ),如果 ESt 端高电平持续时间足够长,使充电后 Vc=Vtst(2. 35V,这是通过比较器比较 ),这就意味着所检测的信号满足 DTMF 的工作标准,则使引导逻辑部分的输出同步脉冲到编码部分,使 4 位编码输出,经过延迟单元,锁存进三态输出单元,输出正确的码;同时,引导逻辑部分产生 StD 端高电平信号,同时使 GT 维持高电 压。 如果充电时间不够长,这就是说即使被检测信号的频率在 DTMF 频率范围内,但它的持续时间不足以满足 DTMF 的工业标准,输出同步脉冲保持为 0,编码结果不输出。 AT24C02 AT24C02是美国 ATMEL公司的低功耗 CMOS串行 EEPROM, 它是内含 256 8位存储空间 , 具有工作电压宽 ( ~ ) 、擦写次数多 ( 大于 10000次 ) 、写入速度快( 小于 10ms) 等特点。 AT24C02的 3脚是三条地址线,用于确定芯片的硬件地址。 在 AT89C51试验开发板上它们都接地,第 8脚和第 4脚分别为正、负电源。 第 5脚 SDA为串行数据输入 /输出,数据通过这条双向 I2C总线串行传送,在 AT89C51试验开发板上和单片机的。 第 6脚 SCL为串行时钟输入线,在 AT89C51试验开发板上和单片机的。 SDA和 SCL都需要和正电 源间各接一个。 第 7脚需要接地。 13 24C02中带有片内地址寄存器。 每写入或读出一个数据字节后,该地址寄存器自动加 1,以实现对下一个存储单元的读写。 所有字节均以单一操作方式读取。 为降低总的写入时间,一次操作可写入多达 8个字节的数据。 I2C总线是一种用于 IC器件之间连接的二线制总线。 它通过 SDA(串行数据线)及 SCL(串行时钟线 )两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、 LCD驱动器还是键盘接口。 1. I2C总线的基本结构 采用 I2C总线标准的 单片机或 IC器件,其内部不仅有I2C接口电路,而且将内部各单元电路按功能划分为若干相对独立的模块,通过软件寻址实现片选,减少了器件片选线的连接。 CPU不仅能通过指令将某个功能单元电路挂靠或摘离总线,还可对该单元的工作状况进行检测,从而实现对硬件系统的既简单又灵活的扩展与控制。 2.双向传输的接口特性 传统的单片机串行接口的发送和接收一般都各用一条线,如 MCS51系列的 TXD和 RXD,而 I2C总线则根据器件的功能通过软件程序使其可工作于发送或接收方式。 当某个器件向总线上发送信息时,它就是发送器 (也叫主器 件 ),而当其从总线上接收信息时,又成为接收器 (也叫从器件 )。 主器件用于启动总线上传送数据并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件。 I2C总线的控制完全由挂接在总线上的主器件送出的地址和数据决定。 在总线上,既没有中心机,也没有优先机。 总线上主和从 (即发送和接收 )的关系不是一成不变的,而是取决于此时数据传送的方向。 SDA和 SCL均为双向 I/O线,通过上拉电阻接正电源。 当总线空闲时,两根线都是高电平。 连接总线的器件的输出级必须是集电极或漏极开路,以具有线“与”功能。 I2C总线的数据传 送速率在标准工作方式下为 100kbit/s,在快速方式下,最高传送速率可达 400kbit/s。 3. I2C总线上的时钟信号 在 I2C总线上传送信息时的时钟同步信号是由挂接在 SCL时钟线上的所有器件的逻辑“与”完成的。 SCL线上由高电平到低电平的跳变将影响到这些器件,一旦某个器件的时钟信号下跳为低电平,将使 SCL线一直保持低电平,使 SCL线上的所有器件开始低电平期。 此时,低电平周期短的器件的时钟由低至高的跳变并不能影响 SCL线的状态,于是这些器件将进入高电平等待的状态。 当所有器件的时钟信号都上跳为高 电平时,低电平期结束, SCL线被释放返回高电平,即所有的器件都同时开始它们的高电平期。 其后,第一个结束高电平期 14 的器件又将 SCL线拉成低电平。 这样就在 SCL线上产生一个同步时钟。 可见,时钟低电平时间由时钟低电平期最长的器件确定,而时钟高电平时间由时钟高电平期最短的器件确定。 4.数据的传送 在数据传送过程中,必须确认数据传送的开始和结束。 在 I2C总线技术规范中,开始和结束信号(也称启动和停止信号)的定义。 当时钟线 SCL为高电平时,数据线 SDA由高电平跳变为低电平定义为“开始”信号;当 SCL线为高电平时, SDA线发生低电平到高电平的跳变为“结束”信号。 开始和结束信号都是由主器件产生。 在开始信号以后,总线即被认为处于忙状态;在结束信号以后的一段时间内,总线被认为是空闲的。 I2C总线的数据传送格式是:在 I2C总线开始信号后,送出的第一个字节数据是用来选择从器件地址的,其中前 7位为地址码,第 8位为方向位 (R/W)。 方向位为“ 0”表示发送,即主器件把信息写到所选择的从器件;方向位为“ 1”表示主器件将从从器件读信息。 开始信号后,系统中的各个器件将自己的地址和主器件送到总线上的地址进行比较,如果与主器件发送到总 线上的地址一致,则该器件即为被主器件寻址的器件,其接收信息还是发送信息则由第 8位 (R/W)确定。 在 I2C总线上每次传送的数据字节数不限,但每一个字节必须为 8位,而且每个传送的字节后面必须跟一个认可位(第 9位),也叫应答位( ACK)。 送过程如每次都是先传最高位,通常从器件在接收到每个字节后都会作出响应,即释放 SCL线返回高电平,准备接收下一个数据字节,主器件可继续传送。 如果从器件正在处理一个实时事件而不能接收数据时,(例如正在处理一个内部中断,在这个中断处理完之前就不能接收 I2C总线上的数据字节)可以使 时钟 SCL线保持低电平,从器件必须使 SDA保持高电平,此时主器件产生 1个结束信号,使传送异常结束,迫使主器件处于等待状态。 当从器件处理完毕时将释放 SCL线,主器件继续传送。 当主器件发送完一个字节的数据后,接着发出对应于 SCL线上的一个时钟( ACK)认可位,在此时钟内主器件释放 SDA线,一个字节传送结束,而从器件的响应信号将 SDA线拉成低电平,使 SDA在该时钟的高电平期间为稳定的低电平。 从器件的响应信号结束后, SDA线返回高电平,进入下一个传送周期。 I2C总线还具有广播呼叫地址用于寻址总线上所有器 件的功能。 若一个器件不需要广播呼叫寻址中所提供的任何数据,则可以忽略该地址不作响应。 如果该器件需要广播呼叫寻址中提供的数据,则应对地址作出响应,其表现为一个接收器。 5.总线竞争的仲裁 总线上可能挂接有多个器件,有时会发生两个或多个主 15 器件同时想占用总线的情况。 例如,多单片机系统中,可能在某一时刻有两个单片机要同时向总线发送数据,这种情况叫做总线竞争。 I2C总线具有多主控能力,可以对发生在 SDA线上的总线竞争进行仲裁,其仲裁原则是这样的:当多个主器件同时想占用总线时,如果某个主器件发送高电平,而另一个主器 件发送低电平,则发送电平与此时 SDA总线电平不符的那个器件将自动关闭其输出级。 总线竞争的仲裁是在两个层次上进行的。 首先是地址位的比较,如果主器件寻址同一个从器件,则进入数据位的比较,从而确保了竞争仲裁的可靠性。 由于是利用 I2C总线上的信息进行仲裁,因此不会造成信息的丢失。 6. I2C总线接口器件 目前在视频处理、移动通信等领域采用 I2C总线接口器件已经比较普遍。 另外,通用的 I2C总线接口器件,如带 I2C总线的单片机、 RAM、ROM、 A/D、 D/A、 LCD驱动器等器件,也越来越多地应用于计算机及自动控制系统。 16 第三章 系统硬件设计 本系统使用了大量的硬件电路完成部分功能模块,其目的就是充分利用硬件电路的可靠性、稳定性,使整体电路达到比较高的稳定性。 此电路主要包括电话线路摘机检测和线路振铃信号的检测电路,语音提示电路,单片机控制和密码存储电路 ,DTMF 检测电路及电器驱动电路。 振铃检测和模拟摘机 振铃检测的功能是检测有无铃流,当用户被呼叫时,电话交换机发来铃流信号。 振铃为 25177。 3HZ 的正弦波,谐铃失真不大于 10%,电压有效值 90177。 15V。 振铃信号以 5秒为周期,即 1 秒送, 4秒断。 振铃检测电路如图 31 所示。 图 31 振铃检测与模拟摘机电路 是振铃信号检测端,根据振铃信号电压比较高的特点,可以先使用高压稳压二极管进行降压,然后输入至光电耦合器。 经过 RC回路进行滤波,输入给光。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。