CN107885681B - 管脚控制装置和方法 - Google Patents
管脚控制装置和方法 Download PDFInfo
- Publication number
- CN107885681B CN107885681B CN201610870424.2A CN201610870424A CN107885681B CN 107885681 B CN107885681 B CN 107885681B CN 201610870424 A CN201610870424 A CN 201610870424A CN 107885681 B CN107885681 B CN 107885681B
- Authority
- CN
- China
- Prior art keywords
- function
- target
- pin
- multiplexing
- subsequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
- Logic Circuits (AREA)
Abstract
本公开涉及一种管脚控制装置和方法,涉及电子技术领域,该装置包括:功能选择器、管脚选择器和管脚功能复用控制器,其中功能选择器,用于根据功能配置信息确定待配置的目标功能;管脚选择器,用于根据管脚配置信息确定待配置的目标管脚,以及确定目标功能需要映射到的目标管脚上的目标复用功能位置;管脚功能复用控制器,用于将目标功能映射到目标管脚上的目标复用功能位置。本公开可以将芯片外部管脚的复用功能自由映射至指定位置上,因此能够在不改变任何外部硬件布局的条件下,灵活使用芯片,能够降低***电路板的开发成本、提高开发效率并增强芯片的可移植性。
Description
技术领域
本公开涉及电子技术领域,具体地,涉及一种管脚控制装置和方法。
背景技术
在当今的电子技术领域,MCU(Microcontroller Unit微控制单元)芯片因其可实现功能日益强大,应用场景越来越广泛。在MCU芯片的应用开发过程中,经常会遇到某一管脚的复用功能组确定后无法修改的问题。同时,如果需要使用新的MCU芯片替换原有芯片,那么原有的***电路板的布局需要重新规划,开发效率低,开发成本高,并且MCU的可移植性低。
发明内容
本公开的目的是提供一种管脚控制装置和方法,用以解决管脚复用功能组无法修改、芯片可移植性低的问题。
为了实现上述目的,根据本公开实施例的第一方面,提供一种管脚控制装置,所述装置包括:功能选择器、管脚选择器和管脚功能复用控制器;
所述功能选择器,用于根据功能配置信息确定待配置的目标功能;
所述管脚选择器,用于根据管脚配置信息确定待配置的目标管脚,以及确定所述目标功能需要映射到的所述目标管脚上的目标复用功能位置;
所述管脚功能复用控制器,用于将所述目标功能映射到所述目标管脚上的目标复用功能位置。
可选的,所述装置还包括:配置开关,用于配置开关状态信息,所述开关状态信息用于指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置是否生效。
可选的,所述管脚功能复用控制器用于:
当所述开关状态信息指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置生效时,将所述目标功能映射到所述目标管脚上的目标复用功能位置。
可选的,所述功能配置信息包括所述目标功能的功能索引值,所述管脚配置信息包括用于指示所述目标管脚和所述目标复用功能位置的序列值,所述序列值包括第一子序列和第二子序列,所述第一子序列用于指示所述目标管脚,所述第二子序列用于指示所述目标复用功能位置。
可选的,所述管脚选择器用于:
利用所述功能索引值在管脚功能库表中查找与所述功能索引值对应的功能;
在查找到与所述功能索引值对应的功能后,将与所述功能索引值对应的功能确定为所述目标功能;
利用所述第一子序列在管脚排列库表中查找与所述第一子序列对应的管脚;
在查找到与所述第一子序列对应的管脚后,将与所述第一子序列对应的管脚确定为所述目标管脚;
利用所述第二子序列在所述管脚排列库表中查找所述目标管脚上的与所述第二子序列对应的复用功能位置;
在查找到与所述第二子序列对应的复用功能位置后,将与所述第二子序列对应的复用功能位置确定为所述目标功能复用位置。
可选的,所述装置还包括:复用状态查询器,用于查询所述目标管脚上的复用功能位置的占用状态信息,所述占用状态信息用于指示所述目标管脚上的每个复用功能位置是否被占用。
根据本公开实施例的第二方面,提供一种管脚控制方法,所述方法包括:
根据功能配置信息确定待配置的目标功能;
根据管脚配置信息确定待配置的目标管脚,以及确定所述目标功能需要映射到的所述目标管脚上的目标复用功能位置;
将所述目标功能映射到所述目标管脚上的目标复用功能位置。
可选的,在所述将所述目标功能映射到所述目标管脚上的目标复用功能位置之前,所述方法还包括:
配置开关状态信息,所述开关状态信息用于指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置是否生效。
可选的,所述将所述目标功能映射到所述目标管脚上的目标复用功能位置,包括:
当所述开关状态信息指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置生效时,将所述目标功能映射到所述目标管脚上的目标复用功能位置。
可选的,所述功能配置信息包括所述目标功能的功能索引值,所述管脚配置信息包括用于指示所述目标管脚和所述目标复用功能位置的序列值,所述序列值包括第一子序列和第二子序列,所述第一子序列用于指示所述目标管脚,所述第二子序列用于指示所述目标复用功能位置。
可选的,所述根据功能配置信息确定待配置的目标功能,包括:
利用所述功能索引值在管脚功能库表中查找与所述功能索引值对应的功能;
在查找到与所述功能索引值对应的功能后,将与所述功能索引值对应的功能确定为所述目标功能;
所述根据管脚配置信息确定待配置的目标管脚,以及所述目标功能需要映射到的所述目标管脚上的目标复用功能位置,包括:
利用所述第一子序列在管脚排列库表中查找与所述第一子序列对应的管脚;
在查找到与所述第一子序列对应的管脚后,将与所述第一子序列对应的管脚确定为所述目标管脚;
利用所述第二子序列在所述管脚排列库表中查找所述目标管脚上的与所述第二子序列对应的复用功能位置;
在查找到与所述第二子序列对应的复用功能位置后,将与所述第二子序列对应的复用功能位置确定为所述目标功能复用位置。
可选的,所述方法还包括:
查询所述目标管脚上的复用功能位置的占用状态信息,所述占用状态信息用于指示所述目标管脚上的每个复用功能位置是否被占用。
通过上述技术方案,本公开能够避免现有技术中管脚的复用功能组无法修改的问题,同时解决了在替换芯片时,需要重新规划***电路板级布局的问题。本公开可以将外部管脚的复用功能自由映射至指定位置上,因此能够在不改变任何外部硬件布局的条件下,灵活使用芯片,从而能够降低***电路板的开发成本、提高开发效率并增强芯片的可移植性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明,应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种管脚控制装置的框图;
图2是根据一示例性实施例示出的另一种管脚控制装置的框图;
图3是根据一示例性实施例示出的又一种管脚控制装置的框图;
图4是根据一示例性实施例示出的一种管脚控制方法的流程图;
图5是根据一示例性实施例示出的另一种管脚控制方法的流程图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在对本公开提供的管脚控制装置和方法说明前,首先对本公开各个实施例所涉及应用场景进行介绍。该应用场景为一个包含了MCU芯片及***器件和电路板的应用***。该应用***可以应用在各种电子应用领域中,例如:汽车电子、工业控制、移动终端、通信设备、智能家居等。其中MCU芯片是将ROM(Read-Only Memory,只读存储器)、RAM(RandomAccess Memory,随机存储器)、CPU(Central Processing Unit,中央处理器)、I/O(Input/Output,输入/输出端口)、定时器和各种控制器集合为一体的芯片,能够实现丰富的功能。本公开的实施例涉及的应用场景可以分为两类:在不改变***功能和器件、***板级布局的条件下,进行MCU芯片的替换,即用新的MCU芯片替换原有MCU芯片;或者对已投入使用的MCU芯片上的管脚的复用功能进行变更。另外,值得一提的是,本公开是以MCU芯片为例进行说明,但并不限于此,本公开提供的管脚控制装置和方法也可以同样适用的其他类型的芯片的关键控制。
图1是根据一示例性实施例示出的一种管脚控制装置的框图,如图1所示,该管脚控制装置100可以包括:功能选择器101、管脚选择器102和管脚功能复用控制器103。
功能选择器101,用于根据功能配置信息确定待配置的目标功能。
其中,功能配置信息可以包括待配置的目标功能的功能索引值,不同的复用功能具有不同的功能索引值,并且每个复用功能具有唯一的功能索引值,该功能索引值可以理解为复用功能的ID。示例性的,在更换原有MCU芯片时,需要将原有MCU芯片的各个管脚上的复用功能配置到新的MCU芯片上,并且新的MCU芯片的各个的复用功能的所在管脚的布局应当与原有MCU芯片保持一致,从而可以不改变原有MCU芯片所接入的***板的布局。因此,在配置新的MCU芯片的某一管脚时,根据被替换的原有芯片的同位置管脚上的复用功能的配置,就可以确定该管脚上的复用功能的配置。示例的,可以获取原有MCU芯片上某个管脚上的某个复用功能位置上的复用功能的功能索引值,作为新的MCU芯片上的相同位置管脚上的对应复用功能位置的目标功能的功能配置信息,其中该功能配置信息可以是由人工输入的,也可以是上述的管脚控制装置100根据原有MCU芯片的各个的复用功能的所在管脚的布局获取的。
管脚选择器102,用于根据管脚配置信息确定待配置的目标管脚,以及确定目标功能需要映射到的目标管脚上的目标复用功能位置。
其中,管脚配置信息可以包括目标管脚和目标复用功能位置两种信息,由目标管脚和目标复用功能位置就可以确定目标功能所要映射的位置。例如,在MCU芯片替换场景下,可以确定目标功能在新的MCU芯片上要映射到的管脚和管脚上复用功能位置。在MCU芯片管脚功能变更场景下,则可以确定目标功能要变更到的管脚和管脚上的复用功能位置。
可选的,管脚配置信息可以包括用于指示目标管脚和目标复用功能位置的序列值,该序列值包括第一子序列和第二子序列,其中第一子序列用于指示所述目标管脚,第二子序列用于指示目标复用功能位置。
示例的,其中该序列值可以是一个N位的二进制编码,N为大于1的正整数,其中的第一子序列为N位的二进制编码中的高M位,低N-M位为第二子序列。例如,可以将管脚配置信息表示为Pin_num,N可以为8,则高5位可以为上述的第一子序列,用于表示管脚号,低3位为上述的第二子序列,用于表示复用功能位置号,例如Pin_num=8’b01000010,其中二进制部分为01000010,根据其高5位01000可以确定其表示的是8号管脚,根据其低3位010可以确定其表示的是第二个复用功能。
管脚功能复用控制器103,用于将目标功能映射到目标管脚上的目标复用功能位置。
即可以理解为由功能选择器101确定要配置的目标功能和管脚功能复用控制器103确定目标功能要映射到的目标管脚上的目标复用功能位置后,由管脚功能复用控制器103将目标功能映射的到上述目标复用功能位置。其中功能选择器101确定要配置的目标功能,以及管脚功能复用控制器103确定目标功能要映射到的目标管脚上的目标复用功能位置可以是同时进行的。
图2是根据一示例性实施例示出的另一种管脚控制装置的框图,如图2所示,该装置100还可以包括:配置开关104,用于配置开关状态信息,开关状态信息用于指示功能选择器确定的目标功能以及管脚选择器确定的目标管脚和目标复用功能位置是否生效。
其中配置开关104用来使能管脚控制是否生效,开关状态信息可以由一位二进制编码实现,该开关状态信息可以表示为key,当开关状态信息key为1时,功能选择器确定的目标功能以及管脚选择器确定的目标管脚和目标复用功能位置生效,当开关状态信息key为0时,不生效。
可选的,管脚功能复用控制器103用于:
当开关状态信息key指示功能选择器确定的目标功能以及管脚选择器确定的目标管脚和目标复用功能位置生效时,将目标功能映射到目标管脚上的目标复用功能位置。
可选的,在确定目标功能时,功能选择器101可以用于:
首先,利用功能索引值在管脚功能库表中查找与功能索引值对应的功能。
其中,管脚功能库表,存储了MCU中所有功能的功能索引值。示例的,在本实施例中所涉及的一种MCU中,除了一些固定的功能,例如电源(VDD)、电源地(VSS)、模拟电源(VDDA)、模拟电源地(VSSA)、复位(RESETn)以及调试(DEBUG)等之外,共有66个复用功能,每个复用功能设置有唯一的功能索引值,可以称之为Func值,该管脚功能库表可以如表1所示。
表1
在得到功能索引值后,就可以在表1中查找到与功能索引值对应的功能,从而能够确定目标功能。
其次,在查找到与功能索引值对应的功能后,将与功能索引值对应的功能确定为目标功能。
在确定目标管脚和目标复用功能位置时,管脚选择器102可以用于:
首先,利用第一子序列在管脚排列库表中查找与第一子序列对应的管脚。在查找到与第一子序列对应的管脚后,将与第一子序列对应的管脚确定为目标管脚。
其次,利用第二子序列在管脚排列库表中查找目标管脚上的与第二子序列对应的复用功能位置。在查找到与第二子序列对应的复用功能位置后,将与第二子序列对应的复用功能位置确定为目标功能复用位置。
其中,管脚排列库表,存储了MCU每个管脚以及每个管脚上的复用功能位置的序列值。因此,在得到上述序列值后,根据其中的第一子序列和第二子序列就可以确定目标管脚和目标管脚上的目标复用功能位置。另外,需要说明的是,每个管脚上的复用功能数可以根据实际需要来设置,例如每个管脚上的复用功能数可以为3个,则上述表1中所述的66个复用功能可以复用在22个管脚上。
图3是根据一示例性实施例示出的又一种管脚控制装置的框图,如图3所示,该装置100还可以包括:复用状态查询器105,用于查询目标管脚上的复用功能位置的占用状态信息,占用状态信息用于指示目标管脚上的每个复用功能位置是否被占用。
其中,占用状态信息可以由Y位二进制编码组成,Y为正整数,每一位编码用来表示目标管脚上的一个复用功能位置,1表示已被占用,0表示空闲。例如,占用状态信息可以表示为stat,stat=3b’111中的3位二进制数就表示某一管脚上的3个复用功能位置的占用情况,根据111可以看出这3个复用功能位置均已经被占用。
下面以将原有MCU芯片替换为新的MCU的场景为例对管脚的配置过程进行举例说明。假设原有MCU芯片包含P个管脚,每个管脚上最多可复用功能i个,那么原有芯片最多可以有P*i个复用功能位置,对应P*i个复用功能,P和i为正整数,新的MCU芯片包含Q个管脚,每个管脚上最多可复用功能j个,新的MCU芯片最多可以有Q*j个复用功能位置,对应Q*j个复用功能,Q和j为正整数;其中,P*i≤Q*j。当前的需求是将原有MCU上的P*i个功能映射到新的MCU上的Q*j个位置上。
示例的,假设被替换的原有MCU芯片为MCU_1,共有28个管脚,有72个功能,其中由66个功能复用在22个管脚上,如表2所示,表2为MCU_1的管脚及复用功能列表:
表2
管脚序号 | 名称1 | 名称2 | 名称3 | 复用说明 |
1 | VDD | —— | —— | 电源 |
2 | VSS | —— | —— | 电源地 |
3 | VDDA | —— | —— | 模拟电源 |
4 | VSSA | —— | —— | 模拟电源地 |
5 | RESETn | —— | —— | 复位 |
6 | DEBUG | —— | —— | 调试 |
7 | SCI1_RX | AT1_CH1 | GPIO1 | SCI1的输入/计时器1输出通道1/通用IO端口1 |
8 | SCI1_TX | AT1_CH2 | GPIO2 | SCI1的输出/计时器1输出通道2/通用IO端口2 |
9 | SCI2_RX | AT1_CH3 | GPIO3 | SCI2的输入/计时器1输出通道3/通用IO端口3 |
10 | SCI2_TX | AT1_CH4 | GPIO4 | SCI2的输出/计时器1输出通道4/通用IO端口4 |
11 | IIC_CLK | AT1_CH5 | GPIO5 | IIC的时钟/计时器1输出通道5/通用IO端口5 |
12 | IIC_DAT | AT1_CH6 | GPIO6 | IIC的数据/计时器1输出通道6/通用IO端口6 |
13 | CAN_RX | AT1_CLK_IN | GPIO7 | CAN的输入/计时器1的输入计数时钟/通用IO端口7 |
14 | CAN_TX | INT1 | GPIO8 | CAN的输出/中断1/通用IO端口8 |
15 | AT2_CH1 | INT2 | GPIO9 | 计时器2输出通道1/中断2/通用IO端口9 |
16 | AT2_CH2 | INT3 | GPIO10 | 计时器2输出通道2/中断3/通用IO端口10 |
17 | AT2_CH3 | INT4 | GPIO11 | 计时器2输出通道3/中断4/通用IO端口11 |
18 | AT2_CH4 | INT5 | GPIO12 | 计时器2输出通道4/中断5/通用IO端口12 |
19 | AT2_CH5 | INT6 | GPIO13 | 计时器2输出通道5/中断6/通用IO端口13 |
20 | AT2_CH6 | INT7 | GPIO14 | 计时器2输出通道6/中断7/通用IO端口14 |
21 | AT2_CLK_IN | INT8 | GPIO15 | 计时器2的输入计数时钟/中断8/通用IO端口15 |
22 | ADC1 | INT9 | GPIO16 | ADC1/中断9/通用IO端口16 |
23 | ADC2 | INT10 | GPIO17 | ADC2/中断10/通用IO端口17 |
24 | ADC3 | INT11 | GPIO18 | ADC3/中断11/通用IO端口18 |
25 | ADC4 | INT12 | GPIO19 | ADC4/中断12/通用IO端口19 |
26 | ADC5 | INT13 | GPIO20 | ADC5/中断13/通用IO端口20 |
27 | ADC6 | INT14 | GPIO21 | ADC6/中断14/通用IO端口21 |
28 | ADC7 | INT15 | GPIO22 | ADC/中断15/通用IO端口22 |
新的MCU芯片可以命名为MCU_N,该中MCU_N至少有22个管脚可以设置复用功能,并且每个管脚最多可设置3个复用功能,为了不改变MCU_1所应用的***板的走线布局,需要将MCU_1的66个复用功能映射到MCU_N的相同位置的管脚。因此可以确定上述66个复用功能对应的管脚配置信息以及开关状态信息,即与Func值对应的Pin_num,以及key。示例的,根据表2所示的功能布局,可以确定以下配置信息:
配置Func=8'h01,Pin_num=8’b00111001,Key=1,即表示将SCI1_RX映射到7号管脚的第一个复用功能,并且该配置生效。
配置Func=8'h17,Pin_num=8’b00111010,Key=1,即表示将AT1_CH1映射到7号管脚的第二个复用功能,并且该配置生效;
配置Func=8'h2d,Pin_num=8’b00111100,Key=1,即表示将GPIO1映射到7号管脚的第三个复用功能,并且该配置生效;
其中,上述的Func值和Pin_num值可以是人工根据MCU_1的各个管脚功能信息确定并输入该装置100的,也可以是由该装置100根据MCU_1的各个管脚功能信息确定的。以第一个配置信息为例,功能选择器101可根据Func值8'h01确定待配置的目标功能为SCI1_RX,管脚选择器102可根据00111001中的高5位00111确定待配置的目标管脚为7号管脚,以及根据00111001中的低3位001确定目标功能需要映射到的7号管脚上的目标复用功能位置为第一个复用功能位置,从而在key=1时,管脚功能复用控制器103即可将该SCI1_RX到7号管脚上的第一个复用功能位置上。
以此推类,既可以将MCU_N的所有管脚配置完毕,并且配置完毕的MCU_N的管脚上的功能与被替换的MCU_1相同,从而在不改变***板布局的情况下,实现了MCU_N与MCU_1兼容替换。
其中,如果在配置过程中想查询某个管脚的复用功能位置是否被占用,可以查询复用状态查询器,可以获取占用状态信息Stat,该Stat可以包含一个3位二进制编码,例如stat=3b’010中的010表示这三个复用功能位置中的第二个复用功能位置已经被使用。
另外,如果是对于MCU芯片上的管脚的复用功能进行变更,也可以采用上述的方法,例如,需要将MCU_N的管脚功能变更为表3所示的功能。
表3
管脚序号 | 名称1 | 名称2 | 名称3 | 复用说明 |
11 | IIC_DAT | AT1_CH6 | GPIO6 | IIC的数据/计时器1输出通道6/通用IO端口6 |
12 | IIC_CLK | AT1_CH5 | GPIO5 | IIC的时钟/计时器1输出通道5/通用IO端口5 |
即可以理解为,本次变更是将原来的管脚11和管脚12上的复用功能进行交换。则可以通过以下配置信息进行配置:
配置Func=8'h06,Pin_num=8’b01011001,Key=1,即表示将IIC_DAT映射到11号管脚的第一个复用功能,并且该配置生效;
配置Func=8'h1c,Pin_num=8’b01011010,Key=1,即表示将AT1_CH6映射到11号管脚的第二个复用功能,并且该配置生效;
配置Func=8'h32,Pin_num=8’b01011100,Key=1,即表示将GPIO6映射到11号管脚的第三个复用功能位置,并且该配置生效;
配置Func=8'h05,Pin_num=8’b01100001,Key=1,即表示将IIC_CLK映射到12号管脚的第一个复用功能,并且该配置生效;
配置Func=8'h1b,Pin_num=8’b01100010,Key=1,即表示将AT1_CH5映射到12号管脚的第二个复用功能,并且该配置生效;
配置Func=8'h31,Pin_num=8’b01100100,Key=1,即表示将GPIO5映射到12号管脚的第三个复用功能位置,并且该配置生效;
根据上述配置信息,该装置100既可完成管脚11和管脚12上的复用功能的变更,无需再修改任何方面的设计。
因此,通过该上述的管脚控制方法,可将MCU上的任意复用功能任意分配至任一MCU的任意外部管脚上,消除了MCU管脚设定的限制,实现了功能分配完全自由化。
当管脚功能复用控制器103配置完成后,可以将配置完成后的复用功能与管脚的映射关系进行存储,从而管脚功能复用控制器103利用该映射关系就可以根据任一管脚输入/输出的功能信号来执行相应的功能。
综上所述,本公开能够避免现有技术中管脚的复用功能组无法修改的问题,同时解决了在替换MCU芯片时,需要重新规划***电路板级布局的问题。本公开可以将MCU外部管脚的复用功能自由映射至指定位置上,因此能够在不改变任何外部硬件布局的条件下,灵活使用MCU芯片,从而能够降低***电路板的开发成本、提高开发效率并增强MCU的可移植性。
可选的,图4是根据一示例性实施例示出的一种管脚控制方法的流程图,如图4所示,该方法包括:
步骤401,根据功能配置信息确定待配置的目标功能。
步骤402,根据管脚配置信息确定待配置的目标管脚,以及确定目标功能需要映射到的目标管脚上的目标复用功能位置。
步骤403,将目标功能映射到目标管脚上的目标复用功能位置。
可选的,图5是根据一示例性实施例示出的另一种管脚控制方法的流程图,如图5所示,该方法还可以包括:
步骤404,获取配置开关状态信息,开关状态信息用于指示功能选择器确定的目标功能以及管脚选择器确定的目标管脚和目标复用功能位置是否生效。
可选的,步骤403所述的将目标功能映射到目标管脚上的目标复用功能位置可以包括:
当开关状态信息指示功能选择器确定的目标功能以及管脚选择器确定的目标管脚和目标复用功能位置生效时,将目标功能映射到目标管脚上的目标复用功能位置。
可选的,步骤401中所述的功能配置信息可以包括:目标功能的功能索引值。步骤402中所述的管脚配置信息包括用于指示目标管脚和目标复用功能位置的序列值,该序列值包括第一子序列和第二子序列,第一子序列用于指示目标管脚,第二子序列用于指示目标复用功能位置。
可选的,步骤401所述的根据功能配置信息确定待配置的目标功能可以包括:
利用功能索引值在管脚功能库表中查找与功能索引值对应的功能。
在查找到与功能索引值对应的功能后,将与功能索引值对应的功能确定为目标功能。
步骤402所述的根据管脚配置信息确定待配置的目标管脚,以及目标功能需要映射到的目标管脚上的目标复用功能位置可以包括:
利用第一子序列在管脚排列库表中查找与第一子序列对应的管脚。
在查找到与第一子序列对应的管脚后,将与第一子序列对应的管脚确定为目标管脚。
利用第二子序列在管脚排列库表中查找目标管脚上的与第二子序列对应的复用功能位置。
在查找到与第二子序列对应的复用功能位置后,将与第二子序列对应的复用功能位置确定为目标功能复用位置。
可选的,该方法还可以包括:
查询目标管脚上的复用功能位置的占用状态信息,占用状态信息用于指示目标管脚上的每个复用功能位置是否被占用。
其中,上述各个步骤所实现功能的具体说明已经在上述装置实施例中进行了详细描述,此处不再赘述。
综上所述,本公开能够避免现有技术中管脚的复用功能组无法修改的问题,同时解决了在替换MCU芯片时,需要重新规划***电路板级布局的问题。本公开可以将MCU外部管脚的复用功能自由映射至指定位置上,因此能够在不改变任何外部硬件布局的条件下,灵活使用MCU芯片,从而能够降低***电路板的开发成本、提高开发效率并增强MCU的可移植性。
本领域技术人员在考虑说明书及实践本公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种管脚控制装置,其特征在于,所述装置包括:功能选择器、管脚选择器和管脚功能复用控制器;
所述功能选择器,用于根据功能配置信息确定待配置的目标功能;
所述管脚选择器,用于根据管脚配置信息确定待配置的目标管脚,以及确定所述目标功能需要映射到的所述目标管脚上的目标复用功能位置;
所述管脚功能复用控制器,用于将所述目标功能映射到所述目标管脚上的目标复用功能位置;
所述功能配置信息包括所述目标功能的功能索引值,所述管脚配置信息包括用于指示所述目标管脚和所述目标复用功能位置的序列值,所述序列值包括第一子序列和第二子序列,所述第一子序列用于指示所述目标管脚,所述第二子序列用于指示所述目标复用功能位置;
所述管脚选择器用于:
利用所述第一子序列在管脚排列库表中查找与所述第一子序列对应的管脚;
在查找到与所述第一子序列对应的管脚后,将与所述第一子序列对应的管脚确定为所述目标管脚;
利用所述第二子序列在所述管脚排列库表中查找所述目标管脚上的与所述第二子序列对应的复用功能位置;
在查找到与所述第二子序列对应的复用功能位置后,将与所述第二子序列对应的复用功能位置确定为所述目标功能复用位置;
所述目标管脚包括至少一个复用功能,每个所述复用功能位置对应一个所述复用功能。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:配置开关,用于配置开关状态信息,所述开关状态信息用于指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置是否生效。
3.根据权利要求2所述的装置,其特征在于,所述管脚功能复用控制器用于:
当所述开关状态信息指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置生效时,将所述目标功能映射到所述目标管脚上的目标复用功能位置。
4.根据权利要求1所述的装置,其特征在于,所述功能选择器用于:
利用所述功能索引值在管脚功能库表中查找与所述功能索引值对应的功能;
在查找到与所述功能索引值对应的功能后,将与所述功能索引值对应的功能确定为所述目标功能。
5.根据权利要求1-4任一项所述的装置,其特征在于,所述装置还包括:复用状态查询器,用于查询所述目标管脚上的复用功能位置的占用状态信息,所述占用状态信息用于指示所述目标管脚上的每个复用功能位置是否被占用。
6.一种管脚控制方法,其特征在于,所述方法包括:
根据功能配置信息确定待配置的目标功能;
根据管脚配置信息确定待配置的目标管脚,以及确定所述目标功能需要映射到的所述目标管脚上的目标复用功能位置;
将所述目标功能映射到所述目标管脚上的目标复用功能位置;
所述功能配置信息包括所述目标功能的功能索引值,所述管脚配置信息包括用于指示所述目标管脚和所述目标复用功能位置的序列值,所述序列值包括第一子序列和第二子序列,所述第一子序列用于指示所述目标管脚,所述第二子序列用于指示所述目标复用功能位置;
所述根据管脚配置信息确定待配置的目标管脚,以及确定所述目标功能需要映射到的所述目标管脚上的目标复用功能位置,包括:
利用所述第一子序列在管脚排列库表中查找与所述第一子序列对应的管脚;
在查找到与所述第一子序列对应的管脚后,将与所述第一子序列对应的管脚确定为所述目标管脚;
利用所述第二子序列在所述管脚排列库表中查找所述目标管脚上的与所述第二子序列对应的复用功能位置;
在查找到与所述第二子序列对应的复用功能位置后,将与所述第二子序列对应的复用功能位置确定为所述目标功能复用位置;
所述目标管脚包括至少一个复用功能,每个所述复用功能位置对应一个所述复用功能。
7.根据权利要求6所述的方法,其特征在于,在所述将所述目标功能映射到所述目标管脚上的目标复用功能位置之前,所述方法还包括:
配置开关状态信息,所述开关状态信息用于指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置是否生效。
8.根据权利要求7所述的方法,其特征在于,所述将所述目标功能映射到所述目标管脚上的目标复用功能位置,包括:
当所述开关状态信息指示所述功能选择器确定的目标功能以及所述管脚选择器确定的所述目标管脚和所述目标复用功能位置生效时,将所述目标功能映射到所述目标管脚上的目标复用功能位置。
9.根据权利要求6所述的方法,其特征在于,所述根据功能配置信息确定待配置的目标功能,包括:
利用所述功能索引值在管脚功能库表中查找与所述功能索引值对应的功能;
在查找到与所述功能索引值对应的功能后,将与所述功能索引值对应的功能确定为所述目标功能。
10.根据权利要求6-9任一项所述的方法,其特征在于,所述方法还包括:
查询所述目标管脚上的复用功能位置的占用状态信息,所述占用状态信息用于指示所述目标管脚上的每个复用功能位置是否被占用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610870424.2A CN107885681B (zh) | 2016-09-29 | 2016-09-29 | 管脚控制装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610870424.2A CN107885681B (zh) | 2016-09-29 | 2016-09-29 | 管脚控制装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107885681A CN107885681A (zh) | 2018-04-06 |
CN107885681B true CN107885681B (zh) | 2020-10-23 |
Family
ID=61768852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610870424.2A Active CN107885681B (zh) | 2016-09-29 | 2016-09-29 | 管脚控制装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107885681B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220317185A1 (en) * | 2021-03-30 | 2022-10-06 | Yangtze Memory Technologies Co., Ltd. | Pattern generation system with pin function mapping |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10949204B2 (en) * | 2019-06-20 | 2021-03-16 | Microchip Technology Incorporated | Microcontroller with configurable logic peripheral |
CN112380160A (zh) * | 2020-11-13 | 2021-02-19 | 广东青云计算机科技有限公司 | 一种在处理器中实现管脚功能可动态再配置的装置及方法 |
CN114942899B (zh) * | 2022-03-30 | 2024-01-05 | 深圳市广和通无线股份有限公司 | 管脚配置方法、模组、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5592493A (en) * | 1994-09-13 | 1997-01-07 | Motorola Inc. | Serial scan chain architecture for a data processing system and method of operation |
US6825689B1 (en) * | 2000-10-26 | 2004-11-30 | Cypress Semiconductor Corporation | Configurable input/output interface for a microcontroller |
US6931466B2 (en) * | 2001-09-28 | 2005-08-16 | Cradle Technologies, Inc. | Reprogrammable input-output pins for forming different chip or board interfaces |
CN101329663A (zh) * | 2008-07-31 | 2008-12-24 | 炬力集成电路设计有限公司 | 一种实现管脚分时复用的装置及方法 |
CN101369813A (zh) * | 2008-10-10 | 2009-02-18 | 深圳市飞芯科技有限公司 | 一种基于矩阵的芯片端口映射方法 |
CN105677616A (zh) * | 2016-03-17 | 2016-06-15 | 李晓波 | 处理器实现管脚附加输入/输出功能可配置的方法及装置 |
-
2016
- 2016-09-29 CN CN201610870424.2A patent/CN107885681B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5592493A (en) * | 1994-09-13 | 1997-01-07 | Motorola Inc. | Serial scan chain architecture for a data processing system and method of operation |
US6825689B1 (en) * | 2000-10-26 | 2004-11-30 | Cypress Semiconductor Corporation | Configurable input/output interface for a microcontroller |
US6931466B2 (en) * | 2001-09-28 | 2005-08-16 | Cradle Technologies, Inc. | Reprogrammable input-output pins for forming different chip or board interfaces |
CN101329663A (zh) * | 2008-07-31 | 2008-12-24 | 炬力集成电路设计有限公司 | 一种实现管脚分时复用的装置及方法 |
CN101369813A (zh) * | 2008-10-10 | 2009-02-18 | 深圳市飞芯科技有限公司 | 一种基于矩阵的芯片端口映射方法 |
CN105677616A (zh) * | 2016-03-17 | 2016-06-15 | 李晓波 | 处理器实现管脚附加输入/输出功能可配置的方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220317185A1 (en) * | 2021-03-30 | 2022-10-06 | Yangtze Memory Technologies Co., Ltd. | Pattern generation system with pin function mapping |
Also Published As
Publication number | Publication date |
---|---|
CN107885681A (zh) | 2018-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107885681B (zh) | 管脚控制装置和方法 | |
CN109409121B (zh) | 脱敏处理方法、装置和服务器 | |
CN101765836B (zh) | 使用单个外部连接在串行总线上配置多位从属寻址 | |
US7348798B2 (en) | Programmable logic device, configuration apparatus, and configuration method | |
CN105187050B (zh) | 一种可配置的五输入查找表电路 | |
US20020165886A1 (en) | Modification to reconfigurable functional unit in a reconfigurable chip to perform linear feedback shift register function | |
CN109933574B (zh) | 一种唯一键生成方法、装置及终端设备 | |
US8912936B1 (en) | Electric signal conversion | |
CN110674069B (zh) | 芯片的数字引脚转换电路及方法、芯片 | |
WO2007057832A2 (en) | Vector shuffle unit | |
CN110192178B (zh) | 程序打补丁的方法、装置、微控制单元和终端设备 | |
CN114691573A (zh) | 一种硬件识别电路、方法及相关设备 | |
CN106068494B (zh) | 一种dpi的适配方法和电子设备 | |
CN111489202B (zh) | 一种发送电子券的方法及装置 | |
CN113760810B (zh) | 一种信息处理方法、信息处理装置、设备和存储介质 | |
US10007487B1 (en) | Double-precision floating-point operation | |
CN109558110B (zh) | 数据转换装置及相关产品 | |
CN109947391B (zh) | 一种数据处理方法和装置 | |
CN110324052B (zh) | 一种功能应用实现方法、装置、终端及存储介质 | |
US20110187444A1 (en) | Voltage trimming circuit of semiconductor memory apparatus | |
CN214228549U (zh) | 柔性电路板、电路板组件和设备 | |
CN112926283B (zh) | 用于集成电路的布局设计方法及装置、设备和存储介质 | |
CN216649647U (zh) | 半导体结构和相关芯片和电子装置 | |
CN110135133B (zh) | 一种面向微控制器的压缩整合式源代码混淆方法及*** | |
CN112804026B (zh) | 一种ofdm***中频率、时频交织方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210202 Address after: 518119 No.1 Yan'an Road, Kuiyong street, Dapeng New District, Shenzhen City, Guangdong Province Patentee after: BYD Semiconductor Co.,Ltd. Address before: 518118 BYD Road, Pingshan New District, Shenzhen, Guangdong 3009 Patentee before: BYD Co.,Ltd. |