当前位置: 首页 > 范文大全 > 公文范文 >

基于AVR单片机与点阵液晶的电子产品老化控制器

时间:2022-03-24 09:10:55  浏览次数:

摘要:该文介绍的基于AVR单片机与点阵液晶的老化控制器(以下简称“本系统”)主要用Atmega 64单片机进行编程控制,用点阵液晶来显示老化过程中的各个状态,具有老化定时设定、日期时间设定、老化频率设定、工作模式选择等功能。

关键词:AVR单片机;点阵液晶;老化控制器

中图分类号:TP302 文献标识码:A 文章编号:1009-3044(2016)36-0248-03

1 引言

现代电子企业对于电子产品的质量要求越来越高,不仅要求有较高的性能指标,而且还要有较好的可靠性。电子产品的可靠性取决于设计的合理性、选用的元器件性能及整机制造工艺等因素。随着电子技术的不断发展,电子产品的集成度越来越高,不仅功能越来越强大,而且制造工艺也越来越复杂,这样在生产过程中会产生潜在缺陷,这种缺陷表现在电子产品的早期失效,即在刚投入使用的一段时间内故障率较高。

目前国内外普遍采用通电老化工艺,使电子产品的早期失效在企业内完成,从而提高合格产品的可靠性。通电老化是在环境温度为40-60ºC的老化室内,让电子产品连续通电工作48-72小时的过程。通过长时间通电老化,可以使电子产品设计中存在的缺陷、元器件的质量问题和装配焊接产生的隐患提前暴露出来,从而挑选出存在这些不足的不良品,保证出厂的产品能经得起时间的考验。

本文介绍的老化控制器,是根据电子企业对电子产品的可靠性要求,针对电子产品的早期失效而开发的一种自动老化装置。它用128×64点阵液晶模块作为工作界面,能设置老化起止时间,观察老化状态,具有数据存储、定时、报警、中断记忆等功能。

2 硬件系统

硬件系统包括按键电路、单片机控制系统、液晶显示器、输出控制和报警系统五个部分,它的核心器件是AVR单片机。本系统采用Atmel公司推出的Atmega64单片机,它的输入部分由6个按键组成,用于老化的启停、设定老化时间、改变老化状态等功能。它的输出控制三个部分:一是驱动点阵液晶显示器,能够随时反映老化过程中的工作状态;二是控制继电器输出,即控制产品的通电和断电;三是驱动报警系统,即在某批产品老化结束时,将会自动发出告警,通知相关人员可以进行下一批产品的老化。具体的框图如图1所示。

2.1 Atmega64单片机

Atmega64单片机是高性能AVR增强型RISC(精简指令系统计算机)结构的8位低功耗微处理器。由于130条指令基本上都能在一个时钟周期内完成,使得数据吞吐率高达1MIPS/MHz,从而可以减缓系统在处理速度和功耗之间的矛盾。Atmega64只有SMT一种封装,其内核具有丰富的指令集和32个通用工作寄存器。Atmega64 单片机具有如下特性:64K字节的可编程Flash(具有在写的过程中还能读的能力,即RWW)、2K字节的EEPROM、4K字节的SRAM、53个通用可编程I/O口线、32个通用工作寄存器、实时计数器RTC、4个灵活的具有比较模式和PWM功能的定时器/ 计数器(T/C)、2個USART、面向字节的两线串行接口TWI、8路10位ADC、具有片内振荡器的可编程看门狗定时器、1个SPI串行端口、与IEEE 1149.1 规范兼容的JTAG接口、六种可以通过软件选择的省电模式。

Atmega64为许多嵌入式控制应用提供了灵活而低成本的方案。本系统所涉及的数据量大,其对应的存储器空间的需求也相应地增大。Atmega64内置了64KB的存储空间,4KB的数据存储空间,选择Atmega64单片机可使外围电路更简洁,提高控制器的运作效率。

2.2 按键电路

本系统共需6个按键,为了减少I/O口的占用,将按键排列成矩阵形式,如图2和图3所示。

Atmeg64单片机的PB口用作键盘I/O口,键盘的列线接到PB口的PB 4(PB 7)、PB 5(PG 3)、PB 6(PG 4),键盘的行线接到PB口的PB2(PB4)和PB3(PB5)。将PB 4(PB 7)、PB 5(PG 3)、PB 6(PG 4)设置为输入、上拉,并把行线PB2(PB4)和PB3(PB5)设置为输出,2根行线和3根列线形成6个相交点。

需要检测当前是否有键被按下时,只要让行线中某一个输出为低电平,读取列线对应端口的状态。若为全“1”,则无键闭合;若不全为“1”,则有键闭合。当检测到有键按下,延时后做下一步的检测判断。若有键闭合,用对键盘的列线进行扫描的方法可以识别出是哪一个键闭合。

2.3 液晶显示模块

本系统显示器采用的是恒芳公司的128×64点阵液晶,它能显示点阵图形,主要由行、列驱动器及128×64 全点阵液晶显示器组成。可完成4×8 个汉字和各种图形的显示,有很强的灵活性,其结构框图如图4所示。

图中,IC3为行驱动器,IC1、IC2为列驱动器,它们含有如下功能器件:

1)用来寄存指令码的指令寄存器IR,它与数据寄存器DR相对应。当D/I为1时,指令码写入IR。

2)用来寄存数据的数据寄存器DR,它与指令寄存器IR相对应。当D/I为1时,在E信号为下降沿时,数据写入DR;在E信号为高电平1时,由DR读到B7~DB0数据总线。DR和DDRAM之间的数据传输是模块内部自动执行的。

3)提供内部工作情况的忙标志BF,当BF为1时,模块进行内部操作,不接受外部指令和数据。当BF为0时,模块随时可接受外部指令和数据。

4)用于控制屏幕显示开和关的显示控制触发器DFF,DFF为1,为开显示,在屏幕上就会显示DDRAM中的内容。DFF为0,为关显示(DISPLAY OFF)。DFF的状态由指令DISPLAY ON/OFF和RST信号控制。

5)作为DDRAM的地址指针的9位地址计数器XY,它的高三位是X地址计数器,低6位为Y地址计数器。X地址计数器是DDRAM的页指针,是没有记数功能的,只能通过指令进行设置;Y地址计数器是DDRAM的Y地址指针,具有循环计数功能,各显示数据写入后,Y地址计数器自动加1。

6)用于存贮图形显示数据的显示数据存储器RAM(DDRAM),它的数据为1表示显示选择,数据为0表示显示没有被选择。

7)用于显示行扫描同步的地址计数器Z,它是一个6位计数器,具备循环记数功能。当一行扫描完成,Z地址计数器自动加1,并指向下一行扫描数据,当RST复位时,Z地址计数器为0。

3 工具使用

3.1 ICCAVR编译器

ICCAVR是一种使用符合ANSI标准的C语言来编写微控制器32位程序的一个编译器。它的主要特点是:运用了编辑器和工程管理器的工作环境,可在WINDOWS9X/NT/XP等操作系统下工作;状态窗口能显示编译错误,并且用鼠标单击编译错误时,光标会自动跳转到编辑窗口引起错误的那一行;输出COFF/HEX格式的文件, HEX格式文件可支持大多数编程器,用于下载程序;COFF文件主要是用于仿真,方便检查逻辑错误。

3.2 AVR Studio仿真器

AVR Studio是一个嵌入式开发环境,它可以在Windows 9x/Me/NT/2000/XP 操作系统下编写和调试AVR应用程序。AVR Studio为AVR单片机提供工程管理工具、源文件编辑器、芯片模拟器和在线仿真调试接口。另外,AVR Studio还支持STK500开发板,这个开发板可以对所有的AVR器件进行编程。它还支持JTAG在片仿真调试器。AVR Studio 4拥有的模块结构允许第三方软件投资商共同合作开发。

AVR Studio的工作界面由工程管理、编辑器输出栏、工作区、工作窗口、I/O窗口、信息窗口、查看窗口、存储器窗口等组成。在本系统中,AVR Studio主要是充当仿真编译器使用,在仿真过程中方便检查程序上的逻辑错误,如:程序进入某个未知的死循环中、或是跳过某个需要执行的程序段等等。

程序的执行状态由调试工具栏控制,快捷键、菜单和调试工具栏可以实现所有的调试控制。如果在目标文件中包含有效的源码级信息,所有的调试操作将一直执行下去,直到到达第一条用户源代码语句。要停止运行程序,必须在发出停止命令前转换到反汇编模式。调试控制栏主要由开始调试(Start Debugging)、停止调试(Stop Debugging)、复位(Reset)(SHIFT+F5) 、运行(Run)(F5) 、暂停(Break)(CTRL-F5) 、单步执行(Single step, Trace Into)(F11)、运行到光标处(Run To Cursor)(F7) 、显示下条语句(Show next statement)等命令组成。

3.3 PCtoLCD2002.exe液晶防真排版软件

PCtoLCD2002有两种界面模式:字符模式和图形模式,图形模式的工作界面如图5所示。它可输出多种形式的代码(比如在汇编环境下的代码、在C语言环境下的代码等),图形和字体的大小可根据需要可自由的调动。在图形模式下,将设计好的显示圖片直接导入到PCtoLCD2002下,然后设置代码的输出形式,生成并保存子模,这样就可以直接将生成的代码拷贝到程序中去。

本系统使用的是Atmega 64单片机,借助progisp.exe程序下载软件将编好的程序烧进芯片里。

4 程序设计和调试

4.1 程序设计

本系统的程序分为主程序、显示子程序和按键扫描子程序三大部分,主程序框图如图6所示(其它略)。它们都是在ICCAVR中编写的,在编写过程中经过不断的修改、编译,然后生成COFF仿真文件。

4.2 软件调试

把生成的仿真文件导入到AVR Studio仿真器中。先打开AVR Studio软件,将会跳出新建项目窗口,点取消,点击打开文件,找到COFF所在的文件,打开COFF文件,将跳出选择设备和调试平台(select device and debug platform)发窗口,在调试平台(debug platform)中选择AVR仿真器(AVR simulator),在器件(Device)中选择Atmega64这个器件,点击finish。

在工作窗口中的I/O View可以观察寄存器、I/O端口、定时计数器等状态变化,在主窗口的右面是相对应的程序代码,这样在调试中能将每个语句与运行该语句所对应的相关寄存器一一对应起来,更直观的看出语句中所存在的逻辑错误。

文件导入到仿真器后,点击开始仿真(start debugging),仿真器开始运行,在第一次仿真时,应该用单步仿真(step over),开始对程序进行逐句运行,直到没有逻辑错误为止。

4.3 整机调试

软件调试成功后,就可将程序代码直接烧录到单片机芯片中去,进行整机调试。

先将控制器通电,在刚开始的三秒钟内显示欢迎屏幕。三秒后,则进入工作屏幕,显示工作状态、老化时间、计次次数、时间日期等数据,并等待操作人员的操作。在菜单界面下,对老化参数进行更改(工作模式的选择、老化信号频率设定、老化时间设定、日期、时间设定等)。

然后打开老化架电源,则对应得电源指示灯亮,再打开信号开关,开始进行计次,看到计次灯在闪烁,则计次正常,对应得信号开关指示灯也会常亮。等到老化时间为零时,即老化结束,老化架电源和计次信号都会被关闭,并发出报警信号,通知相关人员可以进行下一批产品的老化。

5 结束语

经过整体调试,欢迎界面的显示、老化时间的设置、计次频率的调整、工作模式的选择等功能都能很好地实现。它可以取代目前多数电子企业使用的机械式或半自动的老化控制器。

参考文献:

[1] 曹国华.高速嵌入式单片机原理与接口技术[M].国防工业出版社,2004.

[2] 佟长福.AVR单片机GCC程序设计[M].北京航空航天大学出版社,2006.

[3] 眭碧霞.C语言[M].苏州:苏州大学出版社,2003.

推荐访问: 点阵 单片机 老化 控制器 电子产品