《多功能时间控制器.docx》由会员分享,可在线阅读,更多相关《多功能时间控制器.docx(18页珍藏版)》请在第一文库网上搜索。
1、1.1多功能智能钟的功能与设计要求目前大多数时间控制器往往只能单机工作,不能满足集体控制的要求;而在很多应用场合,要求时间控制器除了要具有比拟灵活的时间控制作用外,还能通过上位机连成一个网络体系,以便对分布在各处的时间控制器进行集中控制群控)。本章设计的时间控制器的功能与特点如下: 既能单机工作,又能通过上位机进行多机集中控制; 每个单机可以按设定的时间表进行相应的控制动作; 每个单机上的定时时间表,可通过一台PC机分别设定,设定的信息存放在串行的EE-PROM中,可以保存10年以上; 6位1ED显示屏,用作时钟显示; 采用RS485通信接口,可以满足远距离控制的需要; 双休日可以自动停止报警
2、。该时间控制器十分适应于需要控制的对象如电铃)较为分散而且个数较多的场合,有效克服了手工控制或单独控制导致的对象间的时间误差,防止了工作上的混乱。只需1台普通PC机,通过通信电缆与各控制器联成RS-485拓扑网络。由此PC机作为上位机,借助通信软件将设定时间一一传送到各个控制器,就可以实现群控。当然,上位PC机必须外接RS-232/RS-485转接器。建议采用市售成品,将它直接插在串口上即可。1.2系统总体设计方案总体方案确实定按照功能要求,确定系统方案如图71所示。从图中可以看出,系统由微处理器模块、串行通信模块、时钟模块、数据存储模块及显示等人机界面模块组成。在方案设计中,遵循简洁至上的原
3、那么;因此,所有的外围模块采用串行方式与微处理器模块接口。这里,微处理器采用ATMEIJ公司的89C2051,所有串行接口时序均通过软件模拟实现。.1硬件设计我的电子钟设计包括以下几局部:时钟模块,键盘输入模块,八位1ED显示模块,电网频率测量模块、电网电压、电流、功率因数测量模块,环境温度测量模块,遥控关闹钟模块等。为了方便使用,把数据采集单独使用一个单片机系统,而把时钟闹钟系统由DS12C887与单片机设计完成。然后把温度,电网频率,电压,电流,功率,功率因数等数据通过串行通信传输给主单片机进行显示。.2键盘显TK电路显示电路采用八片74HCI64驱动8位1ED的静态显示。一片并入串出芯片
4、74HCI65完成键盘扫描。由于74HCI64与74HCI65都是串行数据传输,大大节省了I/O,而且键显的速度要求并不高,这种设计可以很好地实现功能。.2系统中关键器件的选用.1串行数码管显示接口芯片MAX72191.功能和性能说明MAx7219是美国MAxIM公司生产的串行输入/输出共阴极显示驱动器。该芯片可直接驱动最多8位7段数字数码管显示器,或64个1ED和条形图显示器。自与微处理器的接口非常简单,仅用3个引脚与微处理器相应端连接,即可实现最高IOMHz的串行通信接日。MAX7219的位选方式很有特色,允许用户选择多种译码方式译码选位,而且每个显示位都能个别寻址和刷新,而不需要重写其他
5、的显示位,这使得软件编程十分简单、灵活。另外,它具有数字和模拟亮度控制以及与MOTORO1ASPI,QSPI及NATIONA1MICROWIRE串行口相兼容等特点。对于MAX7219,串行数据以16位数据包的形式从Din脚串行输人,在C1K的每一个上升沿一位一位地送人芯片内部16位移位存放器,而不管1OAD脚的状态如何。1OAD脚必须在第16个C1K上升沿出现的同时或之后,但在下一个C1K上升沿之前变为高电平,否那么移人的数据将丧失。因此,只须编程发送16位数据包,就能简单地操作数码管的位选以及段选,设置和改变MAX7219的工作模式。16位数据包的数据格式如下:其中:D7DO为8位数据位,D
6、7为最高位,DO为最低位;DnD8为4位地址位;D15D12为无关位,通常全取1。MAX7219通过DnD8中4位地址位译码,可寻址14个内部存放器,分别是8个数码管显示位存放器、5个控制存放器及1个空操作存放器。数码管显示存放器由内部8义8静态RAM构成,操作者可直接对位存放器进行个别寻址,以刷新和保持数据,只需V+超过2V一般为+5V)。控制存放器包括译码模式、亮度调节、扫描限制选择扫描位数)、关断模式及显示测试存放器。存放器地址见表7-1oMAX7219的驱动程序首先必须对5个控制存放器初始设置,即初始化。各控制存放器设置含义如下: 译码模式选择存放器地址=F9H)。共有4种译码模式供选
7、择。当数据位全。时,选择“非译码方式。在此方式下,8个数据位分别一一对应7个段和小数点。通常选择此方式。 扫描限制存放器地址=FBH)。用于设置显示的数码管个数18),当D2D1D0=111(D7D6DSD4D3无关)时,可接8个数码管。 亮度调节存放器地址=FAH)。共有16级选择,用于数码管显示亮度的强弱设置。 关断模式存放器地址=FCH)。有2种模式选择:1种是关断状态模式D0=0);1种是正常操作状态(DO=I)o通常选择正常操作状态。 显示测试存放器地址=FFH)。有2种选择用于设置数码管是测试状态还是正常操作状态:在测试状态时D0=1),各位全亮;一般选择正常操作状态(DO=O)o
8、2.引脚说明MAX7219的引脚排列如图7-2所示。MAX7219的引脚说明如下:1:Din一串行数据输人端。在C1K的上升沿,数据被锁入芯片内部16位移位存放器。2,3,5?8,10,11:DIGODIG78数码管位选线。从共阴数码管的公共端吸人电流。12:1OAD一数据锁人控制。在此引脚的上升沿将最后的16位数据锁入16位移位存放器。13:C1K一串行时钟输人,最高时钟频率为IoMHZ。在C1K的上升沿,数据被锁人内部移位存放器;在下降沿,数据从DOUt被输出。1417,2023:SEGASEGDP-7段驱动和小数点驱动。18:Iset一设置段电流峰值。通过一个电阻与V+相连,调节电阻值即
9、可调节段电流峰值。19:V+电源。一般为+5V。4,9:GND地线。止匕2引脚必须同时接电源地。24:D向一串行数据输出。输人到Din的数据在16.5个时钟周期后从此脚输出。该引脚用于级联。7.2.2.2x25045串行EEPROM信息存储芯片1 .功能简介看门狗X25045的看门狗定时器对单片机提供独立的保护系统。该定时器共有200ms600ms,1.4s三种定时时间,可由用户编程选择。在设定的时间内,假设单片机没有访问X25045即表示系统出现故障),看门狗将输出RESET信号,将其RESET输出端置为高电平。延时约200Ii1S后,RESET端由高电平变为低电平,将单片机复位。电压监控上
10、电时,电源电压高于4.5V后,经过约200Ii1S的稳定时间,RESET信号由高电平变为低电平;掉电时,电源电压低于4.5V时,RESET信号立即变为高电平直至电源电压恢复稳定为止。这样就保证了单片机可靠复位以及电源电压不稳定时,单片机不会出现死机和误动作。串行E2PR0MX25045片内带512个字节串行E2PR0M,每个字节可擦写10万次以上,数据可保存100年以上,具有可编程块锁定功能。用三总线串行1/。接口便可进行读写操作。2 .X25045特性 具有可编程的看门狗定时器; 低VCC检测; 直至VcC-IV复位信号有效; IMHz时钟频率; 512X8位串行EEPROM; 为低功耗CM
11、OS,等待电流10A,工作电流3mA; 宽电源电压范围; 具有块锁定功能:可以保护1/4,1/2或所有EEPROM阵列; 具有片内偶然性写保护:上电和掉电保护电路、写锁存、写保护引脚; 高可靠性:可写人IOOOOO次每字节,数据保存期为IOO年,ESD保护所有引脚均为2000V;. 8引脚小型DIP封装8引脚SOIC封装,或14引脚TSSe)P封装; 是高电平有效复位。2.引脚定义X25045的引脚排列如图7-3所示。i:cs-芯片选择输人端。当CS为高电平时,X25045不被选择,So输出引脚处于高阻状态,除非内部写操作正在进行,否那么X25045将处于等待电源方式standbypowerm
12、ode);CS为低电平,那么使X25045工作,把它置于工作电源方式(activepower而Ode应当注意。上电之后,在任何操作开始之前,需要CS从高电平至低电平的跳变。2 :SO一串行输出端。So是推挽串行数据输出引脚。在读周期内,数据在此引脚上移出,数据由串行时钟的下降沿同步输出。3 :WP-写保护输入端。当WP为低电平时,向X25045的非易失性存储器写操作被禁止,但是器件的其他功能仍正常;当WP保持高电平时,所有的功能包括非易失性写操作都正常。在CS仍为低电平时,WP变为低电平将中断对X25045的写操作。如果内部写周期已经开始,WP变为低电平将不影响写操作。4 :Vss接地端。5
13、:SI-串行输人端。SI是串行数据输入引脚。所有操作码、字节地址以及写人存储器的数据在此引脚上输人。数据由串行时钟的上升沿锁存。6 :SCK-串行时钟输人端。串行时钟控制用于数据输人和输出的串行总线定时。操作码、地址或出现在SI引脚上的数据在时钟输人的上升沿锁存;而So引脚上的数据在时钟输入的下降沿之后发生改变。7 :RESET-复位输出端。X25045的RESET是高电平有效、漏极开路的输出端。只要VcC下降至低于最小VcC检测电平,RESET便变为高电平。它将保持高电平直至VcC上升到最小VcC检测电平200ms为止。如果允许看门狗定时器工作,且CS保持高电平或低电平的时间长于看门狗超时周
14、期,那么RESET便变为高电平。CS的下降沿将引起复位。也即,X25045监视总线,如果在看门狗定时器预置的时间周期内没有总线的活动,它将提供复位信号输出。8 :Vcc-电源电压输人端。3 .指令集X25045指令集见表72。表中所有的指令、地址及数据都以MSB最高有效位)在前的方式传送。读和写指令的位3包含了高地址位A8。表7-2X25045的指令集4 .存放器及其分析(1)写使能锁存器X25045包含1个写使能锁存器。在内部进行写操作时,写使能锁存器必须被设置(SET)oWREN指令可以设置锁存器,而WRDI指令起复位锁存器的作用。上电情况、字节、页及状态存放器写周期完成以后,该锁存器被自
15、动复位。如果WP变为低电平,锁存器也被复位。(2)状态存放器RDSR指令提供对状态存放器的访问。在任何时候都可以读状态存放器,即使在写周期也如此。状态存放器格式如下:D7D6D5D4D3D2D1DO/WDIWDOB11B1OWE1WIP当发出WREN,WRDI及RDSR命令时,不必发送字节地址或数据。“正在写WIP(writeinprocess)位表示X25045是否忙于写操作。当为“1时,写操作正在进行;当为“。时,没有写操作。在写期间,所有其他位全置为“1。WIP位是只读的。“写使能锁存WE1(writeenab1e1atch)位表示“写使能锁存器的状态。当设置为“1时,表示锁存器置位;当设置为“O时,表示锁存器复位。WEP位是只读的,它由WREN指令置位,由WRDI指令或成功地完成了写周期后复位。“块保护B1O或B11(b1ockprotect)位表示所使用的保护范围。这些非易失性的位由发出WRSR指令来设置,允许用户选择4种保护级别之一。X25045分为4个1024位的段,可以锁定1个、2个或全部4个段,即在选定的段内可以读这些段,但是不能改变写)数据。用B111和B1O的状态可以控制范围的划分,如表73所列。表73块保护地址范围“看门狗定时器WDo和W