用于工业控制触摸显示屏的多通道高速脉冲计数的方法转让专利

申请号 : CN201010112448.4

文献号 : CN101794132B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐康平梁汇江陈祖红吕翀梁亮石路宏

申请人 : 浙江省新昌县康立电子有限公司

摘要 :

本发明提供一种用于工业控制触摸显示屏的多通道高速脉冲计数的方法,为工业控制触摸显示屏提供多通道高速脉冲计数功能的支持。解决了现有工业控制触摸显示屏不能对高速脉冲进行计数,而且无法进行更多通道计数的技术问题。

权利要求 :

1.一种用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,包括:步骤一:使用HDL硬件描述语言在CPLD中构建可编程逻辑,该可编程逻辑包括:数据总线缓冲器、读写控制逻辑、控制寄存器、计数器、内部总线、自定义总线、时钟输入;所述的数据总线缓冲器、控制寄存器、计数器、时钟输入分别与内部总结相连,数据总线缓冲器还与读写控制逻辑相连,自定义总线与数据总线缓冲器、读写控制逻辑、控制寄存器相连;

所述可编程逻辑中的计数器至少一个以上,所有的计数器相互独立,且完全相同,每个计数器有一个时钟输入端,一个门控输入控制,一个进位输出,计数器的时钟输入与单片机时钟相分离,独立于单片机时钟;

所述可编程逻辑中的控制寄存器包含中断信号IRQ、各个计数器溢出标志、门控信号、停止计数器计数信号;

步骤二:使用单片机完成CPLD上构建逻辑的初始化过程,初始化过程包括复位计数器、复位控制寄存器、开启单片机中断、设置计数器门控信号时间、为每个通道计数器在单片机内开辟一个计数单元且清零后启动计数器;

步骤三:单片机等待中断信号IRQ,如果没有IRQ信号,重复步骤三;

步骤四:单片机读取计数器溢出标志,确定是哪个通道计数器溢出,对该计数器的在单片机内部开辟的计数单元+1;

步骤五:单片机通过读取控制寄存器读取门控信号是否结束,如没有结束转步骤三;

步骤六:单片机通过控制寄存器停止计数器计数,读取各个通道计数值,计算各个通道计数器的计数值;

步骤七:结束。

2.根据权利要求1所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,所述的数据总线缓冲器为双向三态。

3.根据权利要求1所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,由片选、读/写信号、地址信号控制所述读写控制逻辑的工作。

4.根据权利要求1所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,所述的计数器的计数方式是二进制累加。

5.根据权利要求1所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,所述的内部总线连接CPLD内的各个逻辑部分。

6.根据权利要求1所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,所述的自定义总线包括数据总线、地址总线、片选、写信号、读信号、中断信号、计数器溢出标志清零、复位信号。

7.根据权利要求1所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,所述的初始化过程包括:步骤一:单片机通过置复位信号为高电平复位计数器,通过置计数器溢出标志清零为高电平对CPLD中的控制寄存器复位,包含计数器溢出标志复位,开启单片机中断;

步骤二:单片机输出控制字设置计数器门控信号时间;

步骤三:为每个通道计数器在单片机内开辟一个计数单元,32位值,同时清零,启动计数器。

8.根据权利要求7所述的用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,所述的步骤二的计数器门控信号时间可以是0.01秒或0.05秒或0.1秒或0.2秒或0.5秒。

说明书 :

用于工业控制触摸显示屏的多通道高速脉冲计数的方法

技术领域

[0001] 本发明所述的一种用于工业控制触摸显示屏的多通道高速脉冲计数的方法是属于工业控制设备领域,当工业控制触摸屏需要对多路(大于4路)高速脉冲进行计数时,采用单片CPLD(复杂可编程逻辑器件)为工业控制触摸屏的主控制器部分构建辅助硬件逻辑,按照一定步骤对输出高速脉冲信号处理,实现多通道高速脉冲计数功能。

背景技术

[0002] 目前工业控制触摸显示器以带触摸功能的TFT LCD(真彩色液晶)作为显示和操作界面,可以直观地显示工业控制流程及当前控制状态,同时具有小体积和低功耗的特点,获得了越来越广泛的应用。随着应用领域的不断扩大,对工业控制触摸显示器的功能要求也越来越多,有些工业控制触摸显示屏甚至复合了PLC(可编程控制器)的功能,可以处理来自工业控制现场的传感器的模拟或者数字脉冲信号,然后按照工业控制流程给出相应的输出控制信号。
[0003] 随着工业控制技术的发展,工业控制对象的反馈信号和部分传感器信号,往往是以高速脉冲的形式提供给控制设备,并且经常是多个信号都是高速脉冲类型。这样,在设计工业控制触摸显示屏的时候,势必要支持多个高速脉冲计数通道。但现有的工业控制触摸显示屏的主控制器部分,一般是采用单片机设计的,用单片机进行高速脉冲计数,由于单片机内的计数器往往是有限个的(少于4个),无法进行更多通道的脉冲计数。同时,单片机上计数器速度受制于单片机系统时钟的限制,对高速脉冲计数无法保证精度。如:
[0004] 中国发明专利申请号200910059310.X公开了一种触摸操作控制装置、具有触摸功能的显示屏及方法,具有触摸功能的显示屏包括显示屏、触摸操作控制装置、单片机。
[0005] 中国实用新型专利号ZL 200820079975.8公开了一种组合式智能豆干压机,其使用的触摸屏控制装置是PLC与单片机相结合。
[0006] 中国实用新型专利号ZL 200820025784.3公开了一种于PLC控制的油井作业变频调速装置,它是以PLC控制器、单片机、变频器为核心并依次连接,在PLC控制器输入端连接有触摸屏、操作按钮、称重检测电路和运行速度信号检测电路,PLC控制器输出端连接有超重开闭环电路;单片机输出端连接到运行检测电路输入端。
[0007] 为了解决现有工业控制触摸显示屏的上述技术问题,本发明提供了一种可以完全解决上述技术问题。

发明内容

[0008] 本发明的目的是解决以上提出的问题,提供一种可以对高速脉冲进行计数,同时实现多个这样的计数通道的工业控制触摸显示屏。
[0009] 本发明的技术方案是这样的:
[0010] 一种用于工业控制触摸显示屏的多通道高速脉冲计数的方法,其特征在于,包括:
[0011] 步骤一:使用HDL(硬件描述语言)在CPLD中构建可编程逻辑;
[0012] 步骤二:使用单片机完成CPLD上构建逻辑的初始化过程;
[0013] 步骤三:单片机等待中断信号IRQ,如果没有IRQ信号,重复步骤三;
[0014] 步骤四:单片机读取计数器溢出标志,确定是那个通道计数器溢出,对该计数器的相应单元+1;
[0015] 步骤五:单片机通过读取控制寄存器读取门控信号是否结束,如没有结束转步骤三;
[0016] 步骤六:单片机通过控制寄存器停止计数器计数,读取各个通道计数值,计算各个通道计数器的计数值;
[0017] 步骤七:结束。
[0018] 所述的使用HDL(硬件描述语言)在CPLD中构建的可编程逻辑包括:数据总线缓冲器、读写控制逻辑、控制寄存器、计数器、内部总线、自定义总线、时钟输入;
[0019] 作为优选,所述的数据总线缓冲器为双向三态。
[0020] 作为优选,由片选、读/写信号、地址信号控制所述读写控制逻辑的工作。
[0021] 作为优选,所述的计数器至少一个以上,所有的计数器相互独立,且完全相同,每个计数器有一个时钟输入端,一个门控输入控制,一个进位输出,计数方式是二进制累加。
[0022] 作为优选,所述的内部总线连接CPLD内的各个逻辑部分。
[0023] 作为优选,所述的定义总线包括数据总线、地址总线、片选、写信号、读信号、中断信号、计数器溢出标志清零、复位信号。
[0024] 作为优选,所述的计数器的时钟输入与单片机时钟相分离,独立于单片机时钟。
[0025] 作为优选,所述的初始化过程包括:
[0026] 步骤一:单片机通过置复位信号为高电平复位计数器,通过置计数器溢出标志清零为高电平对内部控制器复位(包含计数器溢出标志复位),开启单片机中断;
[0027] 步骤二:单片机输出控制字设置计数器门控信号时间;
[0028] 步骤三:为每个通道计数器在单片机内开辟一个计数单元(32位值),同时清零,启动计数器。
[0029] 作为优选,所述的步骤二的计数器门控信号时间可以是0.01秒或0.05秒或0.1秒或0.2秒或0.5秒。
[0030] 本发明的有益效果如下:
[0031] 采用本发明的方法,使得工业控制触摸显示屏可以对高速脉冲进行计数,同时实现多个这样的计数通道,从而扩大了工业控制触摸显示屏的应用范围。

附图说明

[0032] 图1是典型的工业控制触摸显示屏的结构示意图;
[0033] 图2是改进后的主控制器部分原理框图;
[0034] 图3是本发明的软件流程图;
[0035] 图4是本发明在CPLD中构建的可编程逻辑的原理框图。
[0036] 具体实施方法
[0037] 下面结合附图对本发明的实施例进行进一步详细说明:
[0038] 图1所示的工业控制触摸显示屏的典型系统框图,是本方法所依赖的硬件装置,包括:
[0039] LCD屏图形显示控制单元,带触摸控制。
[0040] 主控制器部分,主要由单片机与CPLD构成,是整个系统的控制核心。
[0041] 输入通道部分,包含信号预处理,模数转换,光耦隔离脉冲信号输入。
[0042] 输出通道部分,包含数模转换、信号输出驱动、继电器输出。
[0043] 上述主控制器部分,采用计数资源有限的单片机(freescale公司的MC9S08AW32),加入CPLD(Altera公司的EPM240),在CPLD中构建多个通道的计数器,并用I/O(输入输出端口)以自定义总线的方式与单片机相连接,如图2所示。
[0044] 如图3所示的本方法的步骤如下:
[0045] 步骤一:使用HDL(硬件描述语言)在CPLD中构建可编程逻辑;
[0046] 步骤二:使用单片机完成CPLD上构建逻辑的初始化过程;
[0047] 步骤三:单片机等待中断信号IRQ,如果没有IRQ信号,重复步骤三;
[0048] 步骤四:单片机读取计数器溢出标志,确定是那个通道计数器溢出,对该计数器的相应单元+1;
[0049] 步骤五:单片机通过读取控制寄存器读取门控信号是否结束,如没有结束转步骤三;
[0050] 步骤六:单片机通过控制寄存器停止计数器计数,读取各个通道计数值,计算各个通道计数器的计数值;
[0051] 步骤七:结束。
[0052] 图4所示的在CPLD中构建的可编程逻辑原理框图,包括:
[0053] 数据总线缓冲器。该缓冲器为双向三态,直接挂载到8位数据总线上,即让单片机通过写入输出数据,也可通过它读出计数值,另外控制命令也通过该缓冲器送至控制寄存器,通过数据缓冲器读出控制寄存器中门控信号结束标志。
[0054] 读写控制逻辑。由片选CS、读/写信号(WE、OE)、地址信号(A0~A3)控制整个逻辑的工作。
[0055] 控制寄存器。控制内部寄存器的复位、计数器复位、计数器启动停止、提供中断请求信号和计数器门控信号结束标志,同时提供计数器门控信号。
[0056] 计数器(n个,n=8)。8个计数器是相互独立的,而且完全相同,每个计数器有一个时钟输入端IN,一个门控输入控制(来自控制寄存器),一个进位输出(溢出信号)。计数方式是二进制累加。计数器的数目为n,n按照需要的通道数目来定,一般大于4个。计数器的位数为m位(m=8),由计数时钟频率和计数精度来决定。
[0057] 内部总线。连接CPLD内的各个逻辑部分,作数据交换。
[0058] 自定义总线(外接)。整个CPLD逻辑模块通过D0~D8(8位数据总线)、A0~A3(4位地址总线)、CS(片选)、WE(写信号)、OE(读信号)、IRQ(中断信号)、MR(计数器溢出标志清零)、NRST(复位信号)构成一个自定义总线与单片机相连。
[0059] 时钟输入。计数器的计数时钟与单片机时钟相分离,是独立于单片机时钟的,可以加比单片机高的时钟,以提高计数器的计数速度。
[0060] 所述的初始化过程包括:
[0061] 步骤一:单片机通过置复位信号为高电平复位计数器,通过置计数器溢出标志清零为高电平对内部控制器复位(包含计数器溢出标志复位),开启单片机中断;
[0062] 步骤二:单片机输出控制字设置计数器门控信号时间;
[0063] 步骤三:为每个通道计数器在单片机内开辟一个计数单元(32位值),同时清零,启动计数器,第k个计数器对应单元的计数值为kn,其中n为n通道。
[0064] 所述的步骤二的计数器门控信号时间可以是0.01秒或0.05秒或0.1秒或0.2秒或0.5秒。
[0065] 单片机通过控制寄存器停止计数器计数,读取各个通道计数值cn,其中n为n通道。计算各个通道计数器的计数值,计算公式如下:
[0066] n通道计数值=cn+2m×kn。
[0067] 以第4通道计数器为例说明:
[0068] 第4通道计数值=c4+28×k4=cr+256×k4。
[0069] 然后计算各个通道脉冲频率,计算公式如下:
[0070]
[0071] 以第四通道计数器为例说明:
[0072]
[0073] 以上所述的仅是本发明的优选实施方式,应当指出,对于本技术领域重的普通技术人员来说,在不脱离本发明核心技术特征的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。