论文部分内容阅读
[摘 要]在测试领域,很多场合需要实现对电压的测量,并将测量值显示出来。本文提供一种解决方案。该方案中,控制芯片采用FPGA,电压采集芯片使用的是MAX1312,显示工具选用的是SG240128-01D系列的液晶显示屏。
[关键词]ADC 液晶显示屏 VHDL FPGA
中图分类号:TP29 文献标识码:A 文章编号:1009-914X(2016)01-0240-01
引言: 在测试领域,经常需要实现对电压的测量,并将测量值显示出来,构成一个完整的电压测量系统。本方案采取的方法是通过FPGA控制电压采集芯片MAX1312将电压模拟量转换为电压数字量,并根据电压数字量得到显示数字量,最后控制液晶显示屏进行显示数字量的显示。
1 电路简介
本方案设计的是常见的测量电压范围0~5 v电路供电电压+5v,电路中需要使用的电压5v。电路中需要使用的电压是5v、3v、1.5v。电源电路就是5v的输入电压经过芯片LM117-3.3和芯片LM117-1.5得到需要的3.3v和1.5v的电压。为避免电压采集电路对前级电路状态的影响,可在电压模拟量在输入MA1312芯片之前经过一个可增大输入阻抗的远放AD824.MAX1312是8通道输入、采样精度12位、可采电压范围-10v~+10v的电压采集芯片,可满足多数情况下电压测量需求。显示电路设计,实质就是一个电压转换电流驱动,由于FPGA芯片出来的电压是3.3v,而显示屏的工作电压是5v,而且有输入和输出,因此需要使用将FPGA输出的3.3v电压转换为5v電压,也需要将有液晶显示屏输出的5v电压转换3.3v.本案中,选用具备5v电压于3.3v电压互转功能的驱动芯片74LVX4245,74LVX4245有一个电压转换方向选择管脚,当该管脚连接到高电平3.3v时,该器件实现的是从5v电压到3v电压的转换;当该管脚连接到低电平时,该器件实现的是从3.3v电压到5v电压的转换。
2 液晶显示屏简介
2.1液晶显示屏选用的是北京集梓电子公司的SG240128-01D产品,该系列的液晶显示屏内部是集成了T6963C控制芯片。
2.2接口定义SG240128-01D液晶显示屏内部电路工作原理较为复杂,留有一个与外部通信的22芯接口,在使用的时候,只需通过这个接口根据控制要求发送相应的控制命令或数据给T6963C显示控制器,就可显示所期望字符或图形,因此使用者只需要了解22芯片的接口定义及各种控制输入即可:1脚FG功能是液晶铁框引出端,将此端接地,相当于将LCD的外壳接地,可以增强LCD的抗干扰能力;2脚VSS功能是逻辑电源地;3脚VDD功能是逻辑电源正;4脚VO功能是LCD驱动电压输入端;5脚WR功能是写数据信号,上升沿锁存;6脚RD功能是读数据信号上升沿锁存;7脚CE功能是LCD选通信号低电平有效;8脚C/D功能是命令或数据,高电平表示指令低电平表示数据;9脚NC功能是不接;10脚RST功能是复位信号低电平有效;11脚、12脚、13脚、14脚、15脚、16脚、17脚、18脚DB0功能是数据;19脚FS功能是字体选择,低电平表示选择8×8字体,高电平选择8×6字体;20脚VOUT功能是LCD模块DC/DC电路输出端;21脚BLA功能是背光电源正端;22脚BLK功能是背光电源负端。
2.3驱动电源连接方式 SG240128-01D的输入电源是5v,可以通过改变外接电阻值来调节背景光亮度,其驱动电源连接方式如图:
3 程序设计
程序主要分为采集模块、转换模块和显示模块三个模块,采集模块主要是控制MAX1312芯片工作,采集模块电压,得到相应的转换数字量;转换模块是根据得到的电压数字量得到要显示的数字量;显示模块主要是控制液晶显示屏的显示。
3.1采集模块程序设计 采集模块程序就是控制MAX1312芯片工作,得到所想要的电压模拟量转换后的数字量MAX1312的工作频率可以使用其内部时钟频率,也可以使用外部时钟频率。本方案中选用频率为10MHz的外部时钟频率,采集模块程序时钟频率也选用10MHz.8路通道同时使用。
3.2转换模块程序设计
得到模块电压转换的数字量后,还部知道要显示的具体数值,要想得到具体数值,有多中方法,其中一种是根据MAX1312的工作原理进行计算的计算法,还有一种是通过查表直接得到的查表值。由于计算法涉及到二进制小数、二进制乘法等较复杂的程序,而使用软核,又对FPGA芯片要求,本方案用查表法,该方案虽繁琐,但对FPGA芯片要求低,而且程序简单,该方法原理是先根据显示电压值的位数和精度,推算出对应的电压数字量范围,然后根据采集模块得到的电压数字量,得到要显示的数字量,比如用MAX1312C测量正电压时,要显示的电压值是到小数点的后一位,显示精度为0.1v,如果要显示的电压值为4v,那么实际测量的电压值范围在3.95~4.04v.如果用MAX1312测量的电压有负电压,由于采集模块得到的电压数字量是补码,在进行转换时,先要判断得到的电压数字量表示的是正电压还是负电压。如果是正电压,采用方法如上所述。如果是负电压,则需先标示显示符号,再计算出不带符号位的原码,然后采用与上相同的方法,即可得到负电压的显示数字量。
3.3显示模块设计得到电压显示数字量后,就是将其值显示出来,根据液晶显示屏的工作原理,先要对其进行初始化和清屏处理,然后进行显示。初始化就是确定采用哪种方式进行显示,再来设置显示缓冲区中图形区的首地址,宽度和文本区的首地址、宽度,此后可选择光标的形状,继而进行显示开关设置。而清屏操作就是让显示屏清掉不必要的显示,为正确的显示做好准备,一般都是让整个屏全部显示空格符。显示电压值时,要显示的字符都是从字符库例调用的,这时使用自动写模式,这条命令对整屏数据操作十分方便,设置自动模式后,每个数据之间不再需要读/写命令。“数据自动读/写”命令后应根“地址指针设置”命令每个数据读/写后,地址指针自动加1,所有数据读/写完后,需要执行自动模式复位命令返回正常操作模式,每个数据读/写之间应当检查状态寄存器自动模式位(STA2或STA3)后执行。在调用字符库时,“写显示数据”的内容就是要显示字符在字库中的地址,由于在显示模块程序中使用最后的是检查状态位以及对数据或命令的读写出来。
结论
本文提供的电压测量方案适合多种场合,转换程序可根据实际情况选用其他方法,如选用较高端的FPGA,可使用软核进行设计,也可以使用计算机代替液晶显示屏进行显示,这时程序就只需要采集模块,转换模块和显示模块部分程序在计算机中完成。
参考文献:
【1】《MAX1312技术手册》互联网
【2】《SG240128-01D系列说明书》互联网
【3】《FPGA系统设计与实践》 陈琼 黄松
[关键词]ADC 液晶显示屏 VHDL FPGA
中图分类号:TP29 文献标识码:A 文章编号:1009-914X(2016)01-0240-01
引言: 在测试领域,经常需要实现对电压的测量,并将测量值显示出来,构成一个完整的电压测量系统。本方案采取的方法是通过FPGA控制电压采集芯片MAX1312将电压模拟量转换为电压数字量,并根据电压数字量得到显示数字量,最后控制液晶显示屏进行显示数字量的显示。
1 电路简介
本方案设计的是常见的测量电压范围0~5 v电路供电电压+5v,电路中需要使用的电压5v。电路中需要使用的电压是5v、3v、1.5v。电源电路就是5v的输入电压经过芯片LM117-3.3和芯片LM117-1.5得到需要的3.3v和1.5v的电压。为避免电压采集电路对前级电路状态的影响,可在电压模拟量在输入MA1312芯片之前经过一个可增大输入阻抗的远放AD824.MAX1312是8通道输入、采样精度12位、可采电压范围-10v~+10v的电压采集芯片,可满足多数情况下电压测量需求。显示电路设计,实质就是一个电压转换电流驱动,由于FPGA芯片出来的电压是3.3v,而显示屏的工作电压是5v,而且有输入和输出,因此需要使用将FPGA输出的3.3v电压转换为5v電压,也需要将有液晶显示屏输出的5v电压转换3.3v.本案中,选用具备5v电压于3.3v电压互转功能的驱动芯片74LVX4245,74LVX4245有一个电压转换方向选择管脚,当该管脚连接到高电平3.3v时,该器件实现的是从5v电压到3v电压的转换;当该管脚连接到低电平时,该器件实现的是从3.3v电压到5v电压的转换。
2 液晶显示屏简介
2.1液晶显示屏选用的是北京集梓电子公司的SG240128-01D产品,该系列的液晶显示屏内部是集成了T6963C控制芯片。
2.2接口定义SG240128-01D液晶显示屏内部电路工作原理较为复杂,留有一个与外部通信的22芯接口,在使用的时候,只需通过这个接口根据控制要求发送相应的控制命令或数据给T6963C显示控制器,就可显示所期望字符或图形,因此使用者只需要了解22芯片的接口定义及各种控制输入即可:1脚FG功能是液晶铁框引出端,将此端接地,相当于将LCD的外壳接地,可以增强LCD的抗干扰能力;2脚VSS功能是逻辑电源地;3脚VDD功能是逻辑电源正;4脚VO功能是LCD驱动电压输入端;5脚WR功能是写数据信号,上升沿锁存;6脚RD功能是读数据信号上升沿锁存;7脚CE功能是LCD选通信号低电平有效;8脚C/D功能是命令或数据,高电平表示指令低电平表示数据;9脚NC功能是不接;10脚RST功能是复位信号低电平有效;11脚、12脚、13脚、14脚、15脚、16脚、17脚、18脚DB0功能是数据;19脚FS功能是字体选择,低电平表示选择8×8字体,高电平选择8×6字体;20脚VOUT功能是LCD模块DC/DC电路输出端;21脚BLA功能是背光电源正端;22脚BLK功能是背光电源负端。
2.3驱动电源连接方式 SG240128-01D的输入电源是5v,可以通过改变外接电阻值来调节背景光亮度,其驱动电源连接方式如图:
3 程序设计
程序主要分为采集模块、转换模块和显示模块三个模块,采集模块主要是控制MAX1312芯片工作,采集模块电压,得到相应的转换数字量;转换模块是根据得到的电压数字量得到要显示的数字量;显示模块主要是控制液晶显示屏的显示。
3.1采集模块程序设计 采集模块程序就是控制MAX1312芯片工作,得到所想要的电压模拟量转换后的数字量MAX1312的工作频率可以使用其内部时钟频率,也可以使用外部时钟频率。本方案中选用频率为10MHz的外部时钟频率,采集模块程序时钟频率也选用10MHz.8路通道同时使用。
3.2转换模块程序设计
得到模块电压转换的数字量后,还部知道要显示的具体数值,要想得到具体数值,有多中方法,其中一种是根据MAX1312的工作原理进行计算的计算法,还有一种是通过查表直接得到的查表值。由于计算法涉及到二进制小数、二进制乘法等较复杂的程序,而使用软核,又对FPGA芯片要求,本方案用查表法,该方案虽繁琐,但对FPGA芯片要求低,而且程序简单,该方法原理是先根据显示电压值的位数和精度,推算出对应的电压数字量范围,然后根据采集模块得到的电压数字量,得到要显示的数字量,比如用MAX1312C测量正电压时,要显示的电压值是到小数点的后一位,显示精度为0.1v,如果要显示的电压值为4v,那么实际测量的电压值范围在3.95~4.04v.如果用MAX1312测量的电压有负电压,由于采集模块得到的电压数字量是补码,在进行转换时,先要判断得到的电压数字量表示的是正电压还是负电压。如果是正电压,采用方法如上所述。如果是负电压,则需先标示显示符号,再计算出不带符号位的原码,然后采用与上相同的方法,即可得到负电压的显示数字量。
3.3显示模块设计得到电压显示数字量后,就是将其值显示出来,根据液晶显示屏的工作原理,先要对其进行初始化和清屏处理,然后进行显示。初始化就是确定采用哪种方式进行显示,再来设置显示缓冲区中图形区的首地址,宽度和文本区的首地址、宽度,此后可选择光标的形状,继而进行显示开关设置。而清屏操作就是让显示屏清掉不必要的显示,为正确的显示做好准备,一般都是让整个屏全部显示空格符。显示电压值时,要显示的字符都是从字符库例调用的,这时使用自动写模式,这条命令对整屏数据操作十分方便,设置自动模式后,每个数据之间不再需要读/写命令。“数据自动读/写”命令后应根“地址指针设置”命令每个数据读/写后,地址指针自动加1,所有数据读/写完后,需要执行自动模式复位命令返回正常操作模式,每个数据读/写之间应当检查状态寄存器自动模式位(STA2或STA3)后执行。在调用字符库时,“写显示数据”的内容就是要显示字符在字库中的地址,由于在显示模块程序中使用最后的是检查状态位以及对数据或命令的读写出来。
结论
本文提供的电压测量方案适合多种场合,转换程序可根据实际情况选用其他方法,如选用较高端的FPGA,可使用软核进行设计,也可以使用计算机代替液晶显示屏进行显示,这时程序就只需要采集模块,转换模块和显示模块部分程序在计算机中完成。
参考文献:
【1】《MAX1312技术手册》互联网
【2】《SG240128-01D系列说明书》互联网
【3】《FPGA系统设计与实践》 陈琼 黄松