国产嵌入式系统计算机与外设的通信方法、计算机及介质与流程

文档序号:28699718发布日期:2022-01-29 13:01阅读:417来源:国知局
国产嵌入式系统计算机与外设的通信方法、计算机及介质与流程

1.本技术涉及通信技术领域,尤其涉及一种国产嵌入式系统计算机与外设的通信方法、计算机及介质。


背景技术:

2.随着科技的不断发展,人们逐渐从纸质办公的方式,变为通过如台式电脑、笔记本电脑等电子设备进行办公,对于笔记本电脑这类便携式计算机,由于其轻便的特点,尤为受到人们的喜爱。
3.目前,便捷式计算机设置有嵌入式控制器(embedded controller,ec)芯片,通过ec芯片控制便捷式计算机的键盘、鼠标、触控板等外设,还可以控制电源充放电、指示灯等。随着人口增长,社会的进步,对于电脑设备的需求量递增,对ec芯片的需求量也在增长。目前的ec芯片主要依靠进口国外芯片,成本相对较高,并且国内缺少ec芯片的自主知识产权,亟需一种拥有自主知识产权的嵌入式芯片,替代ec芯片。


技术实现要素:

4.本技术实施例提供了一种国产嵌入式系统计算机与外设的通信方法、计算机及介质,用于解决ec芯片成本高,缺少自主产权ec芯片的问题。
5.一方面,本技术提供了一种国产嵌入式系统计算机与外设的通信方法,该方法包括:
6.微控制器获取微控制器所连接的计算机外设的设备状态信息。在设备状态信息为中断信息的情况下,微控制器生成中断信息相应的中断信号,并发送至外部执行单元。外部执行单元为计算机的中央处理器,且不是微控制器的处理器。复杂可编程逻辑器件cpld获取外部执行单元的设备控制信号,以将设备控制信号,发送至cpld连接的微控制器。其中,设备控制信号为经过cpld解析后,用于控制计算机外设的信号。微控制器确定设备控制信号相应的设备数据,并将设备数据发送至cpld。其中,设备数据为计算机外设生成的数据。cpld将设备数据发送至外部执行单元。
7.在本技术的一种实现方式中,微控制器通过i2c总线连接cpld,以通过cpld,解析来自外部执行单元的设备控制信号。其中,cpld连接外部执行单元的lpc总线。微控制器通过i2c总线,接收cpld解析后的设备控制信号。
8.在本技术的一种实现方式中,微控制器在获取设备控制信号之后,确定设备控制信号所对应的待控制接口。其中,待控制接口为单片机连接的设备接口中一个或多个设备接口。微控制器确定待控制接口所对应的设备接口的设备数据。
9.在本技术的一种实现方式中,单片机连接的设备接口至少包括以下一项或多项:键盘矩阵接口、触控板接口、电池接口、脉冲宽度调制接口、温度传感器接口、通用串行总线接口。
10.在本技术的一种实现方式中,微控制器通过cpld设置的缓冲数据区域以及预设的
握手协议,将设备数据发送至外部执行单元。微控制器将设备数据,发送至缓冲数据区域,作为第一握手信号。微控制器根据预设的握手协议,在缓冲数据区域中的第一握手信号,存在相应的第二握手信号的情况下,通过cpld,将第一握手信号发送至外部执行单元。其中,第二握手信号为外部执行单元相应的设备控制信号。
11.在本技术的一种实现方式中,微控制器通过cpld设置的缓冲数据区域以及预设的握手协议,接收外部执行单元的设备控制信号,以基于设备控制信号,将设备数据发送至外部执行单元。
12.在本技术的一种实现方式中,在cpld接收到设备数据的情况下,cpld设置等待时序。其中,等待时序根据cpld接收设备数据的时间排序。cpld根据等待时序,将设备数据发送至外部执行单元。
13.另一方面,本技术提供了一种与外设通信的国产嵌入式系统计算机,该计算机包括:
14.微控制器,用于获取微控制器所连接的计算机外设的设备状态信息。在设备状态信息为中断信息的情况下,微控制器,还用于生成中断信息相应的中断信号,并发送至外部执行单元。外部执行单元为计算机的中央处理器。复杂可编程逻辑器件cpld,用于获取外部执行单元的设备控制信号,以将设备控制信号,发送至cpld连接的微控制器。其中,设备控制信号为经过cpld解析后,用于控制计算机外设的信号。微控制器,还用于确定设备控制信号相应的设备数据,并将设备数据发送至cpld。其中,设备数据为计算机外设生成的数据。cpld,用于将设备数据发送至外部执行单元。
15.在本技术的一种实现方式中,一种与外设通信的国产嵌入式系统计算机中的cpld具体用于:
16.微控制器,用于通过i2c总线连接cpld,以通过cpld,解析来自外部执行单元的设备控制信号。其中,cpld连接外部执行单元的lpc总线。微控制器,用于通过i2c总线,接收cpld解析后的设备控制信号。
17.再一方面,本技术还提供了一种国产嵌入式系统计算机与外设的通信的溯源非易失性计算机存储介质,存储有计算机可执行指令,计算机可执行指令设置为:
18.微控制器获取微控制器所连接的计算机外设的设备状态信息。在设备状态信息为中断信息的情况下,微控制器生成中断信息相应的中断信号,并发送至外部执行单元。外部执行单元为计算机的中央处理器,且不是微控制器的处理器。复杂可编程逻辑器件cpld获取外部执行单元的设备控制信号,以将设备控制信号,发送至cpld连接的微控制器。其中,设备控制信号为经过cpld解析后,用于控制计算机外设的信号。微控制器确定设备控制信号相应的设备数据,并将设备数据发送至cpld。其中,设备数据为计算机外设生成的数据。cpld将设备数据发送至外部执行单元。
19.本技术通过微控制器以及cpld,实现设备在发生中断信号时,向外部执行单元发送中断信号,并通过cpld、微控制器,接收外部执行单元对设备的设备控制信号,以实现控制设备。通过微控制器及cpld的功能,替代了当前ec芯片所实现的功能,能够很好地减少芯片的成本,实现便携式计算机设备的国产化,减少设备制造商的硬件成本。
附图说明
20.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
21.图1为本技术实施例中一种国产嵌入式系统计算机与外设的通信方法的一种流程示意图;
22.图2为本技术实施例中一种国产嵌入式系统计算机与外设的通信方法中的一种示意图;
23.图3为本技术实施例中一种国产嵌入式系统计算机与外设的通信方法中的另一种示意图;
24.图4为本技术实施例中一种国产嵌入式系统计算机与外设的通信方法中微控制器及其连接外设的一种示意图;
25.图5为本技术实施例中一种国产嵌入式系统计算机与外设的通信方法中的另一种示意图;
26.图6为本技术实施例中一种国产嵌入式系统计算机与外设的通信方法中的微控制器与键盘设备数据通讯的一种流程示意图;
27.图7为本技术实施例中一种与外设通信的国产嵌入式系统计算机的结构示意图。
具体实施方式
28.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.嵌入式控制器(embedded controller,ec)芯片,主要连接到桥片或者处理器的lpc总线控制器上,主要应用于便携式计算机如笔记本电脑产品中,可以起到上电时序及笔记本外部设备(如键盘、鼠标、触控板等)的控制作用。同时,ec芯片可以让笔记本电脑完成复杂的高级配置和电源管理接口(advanced configuration and power management interface,acpi)的电源管理,电源管理包括:风扇控制管理、低电压差分信号(low-voltage differential signaling,lvds)背光调节、电池管理等。
30.目前ec芯片主要是进口芯片,型号例如:it8528、wpce775等。ec芯片没有国产化芯片。为了能够满足便携式计算机如笔记本、平板等产品国产化的要求,亟需提供一种能够替代ec芯片,实现便携式计算机的硬件设备与cpu的数据通讯,以及实现上电时序功能的技术方案。
31.基于此,本技术实施例提供了一种国产嵌入式系统计算机与外设的通信方法、计算机及介质,用来解决目前我国ec芯片主要依靠进口,没有国产化芯片,ec芯片成本高,国内缺少自主知识产权芯片的问题。
32.以下结合附图,详细说明本技术的各个实施例。
33.本技术实施例提供了一种国产嵌入式系统计算机与外设的通信方法,如图1所示,该方法可以包括步骤s101-s105:
34.s101:微控制器获取微控制器所连接的计算机外设的设备状态信息。
35.ec芯片常用的连接方式如图2所示,便捷式计算机系统连接示意200,ec芯片201连接在lpc总线203,与主机202进行数据通讯,完成计算机的各种功能。此外,图2中还包括isa总线204、pci总线205连接在主机202上,lpc总线上连接有快闪bios207、superio206。
36.本技术实施例中,微控制器以及复杂可编程逻辑器件(complex programmable logic device,cpld)进行结合实现对ec芯片功能的替代。微控制器可以是单片机,例如型号为gd32f303vgt6的单片机,单片机也可以采用其它型号,本技术对比不作具体限定,cpld的型号可以是ef2l45bg256b,也可以是其它型号。随着单片机、cpld的发展,其型号以及所支持的功能的增多,将存在更为适合本技术所提供的参考型号的单片机及cpld,因此,本技术对于单片机的型号以及cpld的型号不做具体限定。
37.微控制器以及cpld共同实现ec芯片所支持的功能,微控制器及cpld所对应的系统架构示意图,如图3所示。微控制器通过相应的接口,与数据通讯中的设备,如键盘矩阵、触控板、电池、脉冲宽度调制、温度传感器、通用串行总线,进行数据通讯,获取设备状态信息。设备状态信息例如在鼠标进行插入接口时,会产生一中断信号,则相应的插入接口对应的鼠标设备状态信息为中断信息。微控制器可以通过接口,持续、实时获取各接口对应的设备状态信息。
38.s102:在设备状态信息为中断信息的情况下,微控制器生成中断信息相应的中断信号,并发送至外部执行单元。
39.外部执行单元为计算机的中央处理器,且不是微控制器的处理器。如图3所示,微控制器310连接中央处理器cpu330,微控制器310将所连接设备对应的中断信号,发送给cpu330。在本技术实施例中,外部执行单元包括cpu330及lpc总线控制器340,外部执行单元可以对微控制器的信号进行处理,以及控制微控制器所连接设备的运行状态。
40.由于微控制器没有lpc总线相应的接口,实现国产微控制器替代ec芯片需要使微控制器可以收发lpc总线的数据。本技术通过cpld实现微控制器连接至lpc总线,从而替代ec芯片功能。具体如下:
41.s103:复杂可编程逻辑器件cpld获取外部执行单元的设备控制信号,以将设备控制信号,发送至cpld连接的微控制器。
42.其中,设备控制信号为经过cpld解析后,用于控制计算机外设的信号。
43.微控制器通过i2c总线连接cpld,以通过cpld,解析来自外部执行单元的设备控制信号;其中,cpld连接外部执行单元的lpc总线。微控制器通过i2c总线,获取cpld解析后的设备控制信号。
44.如图3所示,cpld320连接lpc总线控制器340,同时连接至微控制器310,cpld对lpc总线的数据进行解析,将解析后的设备控制信号通过i2c总线发送至微控制器310,实现lpc总线控制器340一端与微控制器310一端的数据转发。
45.s104:微控制器确定设备控制信号相应的设备数据,并将设备数据发送至cpld。
46.其中,设备数据为计算机外设生成的数据。
47.微控制器在获取设备控制信号之后,确定设备控制信号所对应的待控制接口。其中,待控制接口为微控制器连接的设备接口中一个或多个设备接口。
48.微控制器可以根据设备控制信号,确定待控制接口,例如设备控制信号为获取键盘指示灯状态的信号,那么微控制器可以确定键盘指示灯所对应的接口,作为待控制接口,
通过待控制接口获取键盘指示灯的状态。
49.微控制器确定待控制接口所对应的设备接口的设备数据。
50.在本技术实施例中,微控制器所连接的设备接口至少包括以下一项或多项:键盘矩阵接口、触控板接口、电池接口、脉冲宽度调制接口、温度传感器接口、通用串行总线接口。
51.微控制器可连接设备如图4所示,微控制器通过i2c接口连接锂电池,还通过i2c接口连接cpld;通过脉冲宽度调制(pulse width modulation,pwm)接口连接风扇、屏幕亮度调节设备;通过adc接口连接温度传感器,以实时检测计算机的温度;通过通用串行总线(universal serial bus,usb)接口连接主机usb控制器;通过ps/2接口连接触控板;以及通过通用输入/输出口(general purpose input output,gpio)接口控制键盘、按键、上电时序、led等。
52.s105:cpld将设备数据发送至外部执行单元。
53.微控制器获取到设备控制信号,并确定设备数据之后,微控制器可以通过cpld,将设备数据发送到外部执行单元的lpc总线,然后lpc总线中的设备数据发送至主机cpu。
54.在本技术实施例中,外部执行单元(主机cpu、lpc总线控制器)、cpld、微控制器之间的数据通讯关系示意图,如图5所示,包括,cpld510,微控制器520,外部执行单元530,lpc总线从机511,缓冲数据区域512,握手协议513,i2c接收模块514、i2c发送模块515。具体地:
55.微控制器520通过cpld510设置的缓冲数据区域以及预设的握手协议,将设备数据发送至外部执行单元530。
56.微控制器520将设备数据,发送至缓冲数据区域,作为第一握手信号。
57.微控制器520根据预设的握手协议,在缓冲数据区域中的第一握手信号,存在相应的第二握手信号的情况下,通过cpld510,将第一握手信号发送至外部执行单元;其中,第二握手信号为外部执行单元相应的设备控制信号。
58.微控制器520通过cpld510设置的缓冲数据区域以及预设的握手协议,接收外部执行单元530的设备控制信号,以基于设备控制信号,将设备数据发送至外部执行单元530。
59.具体地,在cpld510接收到设备数据的情况下,cpld设置等待时序;其中,等待时序根据cpld510接收设备数据的时间排序;
60.cpld根据等待时序,将设备数据发送至外部执行单元530。
61.cpld510中存在lpc总线从机511,lpc总线从机511可以实现在lpc总线数据的输入/输出读写时序的处理,将解析来自lpc总线的命令、地址和数据等。例如lpc总线发送了控制触控板进行工作的命令,cpld510的lpc总线从机511可以对控制触控板的命令进行解析,得到符合输入至微控制器的信号。
62.由于lpc总线的时钟速度与i2c总线的速度不同,如lpc总线的时钟速度可以是33兆,i2c总线的常用速率为100-400k,二者的速度差别很大,若不进行数据传输的时序处理,lpc总线的数据无法写入微控制器,微控制器的数据也无法立即传入lpc总线,使得lpc总线及微控制器均无法正常工作。因此,本技术通过以下可以通过以下方法,解决上述问题,具体如下。
63.lpc总线从机511将解析后的数据(设备控制信号),存储在lpc的缓冲数据区域512。并根据预设的握手协议513,将解析后的数据发送给微控制器。通过缓冲数据区域512
及握手协议513,可实现lpc总线的时钟速度与微控制器的i2c总线的时钟速度不一致的问题。
64.cpld中还包括:i2c接收模块514、i2c发送模块515,通过i2c接收模块514、i2c发送模块515与微控制器520进行数据通讯。
65.在本技术实施例中,cpld存在可以实现转接功能的接口,接口实现转接的信号可以包括:发送或者接收地址、命令、数据;接收lpc总线周期的开始信号;接收lpc复位信号;接收lpc的时钟信号(33m);接收或发送lpc中断信号;接收或发送微控制器的i2c数据信号;输出微控制器相应的i2c时钟信号。
66.本技术通过上述cpld以及微控制器,完成便携式计算机的上电时序及笔记本硬件设备(包含键盘、鼠标、触控板等)的控制,通过现有的cpld及微控制器,完成了对ec芯片的功能的替代。通过本技术提供的技术方案,可以满足便携式计算机的国产化需求,降低进口国外ec芯片的成本,提高用户及制造商的使用体验,推动了国产芯片市场的发展。
67.在本技术实施例中,微控制器执行的数据通讯方法以键盘的数据通讯为例,微控制器的执行方法的流程示意图如图6所示,具体包括以下步骤:
68.s601:微控制器所连接设备复位及初始化;
69.s602:微控制器判断设备是否产生中断信号;
70.s603:微控制器接收键盘扫描中断信号,处理键盘扫描中断信号,产生设备数据。
71.s604:微控制器接收usb中断信号,微控制器响应设置命令,产生设备数据。
72.s605:微控制器接收ps/2中断信号,处理ps/2鼠标数据,产生设备数据。
73.s606:微控制器判断设备数据是否需要发送。
74.在s606中,若主机发送至微控制器的数据不需要微控制器发送设备数据的情况下,微控制器可以不发送设备数据至主机。
75.s607:设备数据存入cpld的缓冲数据区域,设定设备数据的发送位置,等待键盘的usb中断发送设备数据。
76.s608:微控制器判断键盘是否执行挂起或唤醒。
77.s609:微控制器执行挂起或唤醒的中断处理。
78.s6010:微控制器重复执行程序。
79.图7为本技术实施例提供的一种与外设通信的国产嵌入式系统计算机,如图7所示,该计算机包括:
80.微控制器,用于获取微控制器所连接的计算机外设的设备状态信息。在设备状态信息为中断信息的情况下,微控制器,还用于生成中断信息相应的中断信号,并发送至外部执行单元。外部执行单元为计算机的中央处理器。复杂可编程逻辑器件cpld,用于获取外部执行单元的设备控制信号,以将设备控制信号,发送至cpld连接的微控制器。其中,设备控制信号为经过cpld解析后,用于控制计算机外设的信号。微控制器,还用于确定设备控制信号相应的设备数据,并将设备数据发送至cpld。其中,设备数据为计算机外设生成的数据。cpld,用于将设备数据发送至外部执行单元。
81.该计算机的cpld还具体用于:
82.微控制器,用于通过i2c总线连接cpld,以通过cpld,解析来自外部执行单元的设备控制信号。其中,cpld连接外部执行单元的lpc总线。
83.微控制器,用于通过i2c总线,接收cpld解析后的设备控制信号。
84.本技术实施例还提供了一种数据通讯的溯源非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,计算机可执行指令设置为:
85.微控制器,用于获取微控制器所连接的计算机外设的设备状态信息。在设备状态信息为中断信息的情况下,微控制器,还用于生成中断信息相应的中断信号,并发送至外部执行单元。外部执行单元为计算机的中央处理器。复杂可编程逻辑器件cpld,用于获取外部执行单元的设备控制信号,以将设备控制信号,发送至cpld连接的微控制器。其中,设备控制信号为经过cpld解析后,用于控制计算机外设的信号。微控制器,还用于确定设备控制信号相应的设备数据,并将设备数据发送至cpld。其中,设备数据为计算机外设生成的数据。cpld,用于将设备数据发送至外部执行单元。
86.本技术中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于计算机设备、介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
87.本技术实施例提供的计算机设备、介质与方法是一一对应的,因此,计算机设备、介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述计算机设备、介质的有益技术效果。
88.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
89.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
90.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
91.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
92.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
93.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或
非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
94.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
95.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
96.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1