单片机课程设计-多用户电表的设计(编辑修改稿)内容摘要:

( 11)可被用作串行 ROM。 ( 12)可提供工厂编程芯片( QTP)。 ( 13) ESD 保护 4000V。 ( 14) 1,000,000 擦 /写周期。 ( 15)八脚 DIP、 8 引线或者 14 引线 SOIC 封装。 ( 16)提供很宽的温度适用范围: 芯片应用: 24C04 与单片机的接口电路如图 所示,图中 RP RP2 为上拉电阻,大小为。 24C04B/08B 支持双向两线总线和数据传输规程。 若器件传送数据到总线上,则定义器件为发送器。 若器件 接受数据,则定义器件为接收器。 总线必须在一个主器件控制下工作,主器件产生串行时钟( SCL),控制总线存取,并且产生开始和停止条件。 同时 24C04B/08B 作为从器件工作。 主器件和从器件都可工作于发送器或接收器的状态。 但是工作于何种状态由主器件决定。 总线特性 总线规程定义如下: —— 仅当总线不忙时,传送数据才能开始。 —— 数据传送期间,无论何时时钟线为高,数据线保持稳定。 当时钟线为高时,数据线的变化认为是传送的开始或停止。 ( 1)总线不忙( A) 数据线和时钟线保持高。 ( 2)开始传送数据( B) 时钟( SCL)为高, SDA 线由高到低的变化决定开始条件。 所有的命令必须在开始条件以后进行。 ( 3)停止数据传送( C) 当时钟( SCL)为高, SDA 线由高到低的变化决定停止条件。 所有的操作必须在停止以前结束。 ( 4)数据有效( D) 在开始条件以后,时钟信号高电平周期期间,当数据线稳定时,数据线的状态表示数据有效。 在时钟信号低电平期间,数据线上的数据必须改变。 每位数据需要一个时钟脉冲。 每一次数据的传送在开始条件下启动,在停止条件下结束。 在开始和停止条件之间传送的数据字节数由主器件决定,并且在理论上是无限制的。 尽管进 行一次写操作时,仅最后 16 个字节将被存储。 当发生重复写操作时,后写的数据将代替先写的数据,以先入先出的方式工作。 ( 5)确认 在接收到每一个字节后,当寻址时,每一接收器件必须产生一个确认位。 主器件必须产生一个与此确认位相关的额外时钟脉冲。 注意,如果内部编程周期正在进行, 24C04B/08B 不产生任何确认位。 通过在相对与确认位时钟脉冲的高电平期间拉 SDA 线为稳定的低电平,器件可完成确认。 当然,建立和保持时间必须加以考虑。 若不在从器件输出的最后一个字节中产生确认位,主器件必须发一个数据结束信号给从器件。 在这 种情况下,从器件必须保持数据线为高电平,以保证主器件能产生停止条件。 ( 6)器件寻址与操作 控制字节是跟随在主器件发出的开始条件后面,首先收到的字节。 控制字节的前四位由四位控制码组成,当控制码为 1010时,对 24C04B/08B进行读和写操作。 控制字节的后面三位是块选择位( B B B0)。 对24C04B/08B 而言, B2 位无关紧要。 对 24C04B, B1 位无关紧要。 主器件利用 B1 和 B0 来选择对存储器中那两个或 4 个 256 字块进行存取。 这些位影响字节地址的最高有效位。 控制字节的最后一位( R/W)决定对 24C04B/08B 进行读或者写操作。 当 R/W 位为“ 1”时,则进行读操作。 当 R/W 位为“ 0”时,则进行写操作。 在开始条件以后, 24C04B/08B 进行监视 SDA 总线,检查发送的控制字节。 当检测 1010 码时,从器件在 SDA 线上输出一个确认信号。 R/W 位的状态决定了 24C04B/08B 将选择进行读操作还是写操作。 写操作 ( 1)字节写 主器件发出开始信号以后,主器件再发送四位器件码、三位块地址码、以及逻辑低电平 R/W 位到总线上。 这指示被寻址的从接收器,一个字地址和一个字节的数据将跟在第九个时钟周期期间产生的确 认位之后。 因此,主器件发送的下一个字节是字地址,并且它将被写入到 24C04B/08B 的指针。 24C04B/08B 接收到另一个确认信号后,主器件将发送写入到被寻址的存储器中的数据字节。 24C04B/08B 再次发出确认信号,同时主器件产生停止条件。 这样会启动内部写周期,并且在这段时间内 24C04B/08B 将不产生确认信号。 ( 2)页面写 写控制字节、字地址和第一个数据字节以与字节写相同方式发送到24C04B/08B。 但替代产生停止条件,主器件发送多达 16 个数据字节到24C04B/08B,这些数据字节暂存在片内页 面缓存器中,并在主器件发送停止信号以后写入到存储器中。 接收到每一字节后,低四位顺序地址指针位在内部加 1。 高七位顺序字地址保持常数。 如果主器件在产生停止条件以前发送多于 16 个字节的数据,地址计数器将循环,并且先接收到的数据将被覆盖。 像字节写操作一样,一旦停止条件被接收到,则内部写周期将开始。 ( 3)写保护 当 WP 端连接到 Vcc, 24C04B/08B 可被用作串行 ROM,编程将被禁止, 并且整个存储器是写保护的。 显示模块的设计 显示模块原理图如下: 电路设计中 74HC164 是比较典型的移位寄存器, 该移位寄存器有一个数据输入端口、一个时钟信号端口和八个输出端口。 如图 14 所示。 当时钟信号从低电平变为高电平的时候将输出一个数据到输出端 D0,当时钟第二次由低电平变为高电平的时候将输出第二个数据到 D0,而第一个数据将转移到 D1 端口。 依此类推,每一个时钟周期中都有一个串行数据输出到D0,而其他的数据则不断往高位移动直到所有数据传输结束。 如果不再有时钟周期输入,则这些数据将暂存在输出端。 图 14 74HC164 各引脚 数码管由 8 个发光二极管(以下简称字段)构成, 数码管管脚如图14 所示, 通过不同的组合可用 来显示数字 0 字符 A  F、 H、 L、 P、R、 U、 Y、符号 “ ” 及小数点 “ ”。 数码管的外形结构如图 15 所示。 数码管又分为共阴极和共阳极两种结构。 图 15 数码管管脚图 数码管工作原理:共阳极数码管的 8 个发光二极管的阳极(二极管正端)连接在一起。 通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。 当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮。 根据发光字段的 不同组合可显示出各种数字或字符。 此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 共阴极数码管的 8 个发光二极管的阴极(二极管负端)连接在一起。 通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。 当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。 此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 C8051F360 单片机外接 8 片 74HC164 作为 8 位 LED 显示接口,把单片机的 P1^0 作为数据输出线, P1^1 作为移位时钟脉冲。 74LS164 为 TTL 单向 8 位移位寄存器,可实现串行输入,并行输出。 其中 A、 B(第 2 脚)为串行数据输入端, 2 个引脚按逻辑与运算规律输入信号,共一个输入信号时可并接。 CLK 为时钟输入端,可连接到 P1^1 端。 每一个时钟信号的上升沿加到 CLK 端时,移位寄存器移一位, 8 个时钟脉冲过后, 8 位二进制数全部移入 74LS164 中。 Q0„Q 7 并行输出端分别接 LED 显示器的g e 各段对应的引脚上。 在给出了 8 个脉冲后,最先进入 74LS164的第一个数据到达了最高位,然后再来一个脉冲,第一个脉冲就会从最高位移出, 8 片 74HC164 首尾相串,而时钟端则接在一起,这样,当输入 8个脉冲时,从单片机 P1^0 端输出的数据就进入到了第一片 74LS164 中了,而当第二个 8 个脉冲到来后,这个数据就进入了第二片 74LS164,而新的数据则进入了第一片 74LS164,这样,当第 8 个 8 个脉冲完成后, 8 位数据便显示在八段数码管上了。 掉电保护模块的设计 存储部分电路原理图如下: 存储部分电路如上图 ,采用 AT24C16 存储芯片,其具有以下特性特性: ( 1)与 400KHz I2C 总线兼容 ( 2) 到 伏工作电压范围 ( 3)低功耗 CMOS 技术 ( 4) 写保护功能当 WP 为高电平时进入写保护状态 ( 5) 页写缓冲器 ( 6) 自定时擦写周期 ( 7) 1,000,000 编程 /擦除周期 ( 8) 可保存数据 100 年 ( 9) 8 脚 DIP SOIC 或 TSSOP 封装 图 17 AT24C16 管脚图 AT24C16 支持 C 总线数据传送协议 ,I2C 总线协议规定 ,任何将数据传送到总线的器件作为发送器 ,任何从总线接收数据的器件为接收器 ,数据传送是由产生串行 时钟和所有起始停止信号的主器件控制的 ,主。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。