CN111414192A - 一种控制器引脚代码自动生成方法 - Google Patents

一种控制器引脚代码自动生成方法 Download PDF

Info

Publication number
CN111414192A
CN111414192A CN202010242588.7A CN202010242588A CN111414192A CN 111414192 A CN111414192 A CN 111414192A CN 202010242588 A CN202010242588 A CN 202010242588A CN 111414192 A CN111414192 A CN 111414192A
Authority
CN
China
Prior art keywords
pin
port
character string
controller
code
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.)
Granted
Application number
CN202010242588.7A
Other languages
English (en)
Other versions
CN111414192B (zh
Inventor
丘承
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huizhou Foryou General Electronics Co Ltd
Original Assignee
Huizhou Foryou General Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huizhou Foryou General Electronics Co Ltd filed Critical Huizhou Foryou General Electronics Co Ltd
Priority to CN202010242588.7A priority Critical patent/CN111414192B/zh
Publication of CN111414192A publication Critical patent/CN111414192A/zh
Application granted granted Critical
Publication of CN111414192B publication Critical patent/CN111414192B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Programmable Controllers (AREA)

Abstract

本发明提供控制器引脚代码自动生成方法,方法包括:步骤1、制作控制器引脚的配置文件;步骤2、设置控制器引脚的配置字符串数组;步骤3、设置控制器引脚的代码字符串数组;步骤4、读取所述配置文件,生成引脚映射关系代码;步骤5、读取所述配置文件,根据所述配置字符串数组、代码字符串数组生成引脚配置代码;步骤6、将所述引脚映射关系代码和引脚配置代码按照端口和引脚的顺序合成得到控制器引脚代码。本发明实现了控制器引脚代码的自动生成。

Description

一种控制器引脚代码自动生成方法
技术领域
本发明涉及软件编程技术领域,尤其涉及一种控制器引脚代码自动生成方法。
背景技术
目前,电子产品的功能越来越复杂,所使用的控制器的引脚数量也越来越多,有些多达百个以上。在编码源代码时,通常需要对控制器的引脚进行配置。在现有技术中,一般是软件开发人员一边阅读控制器资料和硬件开发人员提供的设计图,以便手工录入相关配置,不仅耗时长,而且由于控制器的引脚数量较多、每个引脚的配置项也较多,非常容易因为分神或疲劳导致录入错误,并且这种错误非常难以排查,导致效率非常低下。
因此,现有技术有待进一步改进。
发明内容
本发明提供一种控制器引脚代码自动生成方法,旨在解决现有技术中的缺陷,实现控制器引脚代码的自动生成。
为达到上述目的,本发明所采取的技术方案为:
本发明提供一种控制器引脚代码自动生成方法,包括:
步骤1、制作控制器引脚的配置文件;
步骤2、设置控制器引脚的配置字符串数组,所述配置字符串数组由控制器所有引脚相同配置项的参数字符串按照预设顺序构成;
步骤3、设置控制器引脚的代码字符串数组,所述代码字符串数组由控制器源代码中各引脚的配置项按照预设顺序构成;
步骤4、读取所述配置文件,生成引脚映射关系代码;
步骤5、读取所述配置文件,根据所述配置字符串数组、代码字符串数组生成引脚配置代码;
步骤6、将所述引脚映射关系代码和引脚配置代码按照端口和引脚的顺序合成得到控制器引脚代码。
具体地,所述步骤1包括:
步骤101、根据系统设计图的功能定义给控制器的各引脚分配网络名称;
步骤102、根据控制器的各引脚特性定义各配置项名称,所述配置项名称至少包括引脚编号、复用功能,所述引脚编号由连接符连接端口组号与对应的端口号组成。
具体地,所述步骤4包括:
步骤401、遍历所述配置文件中的所述引脚编号、所述网络名称对应的字符串;
步骤402、生成所述网络名称与端口组、端口的映射关系代码。
具体地,所述步骤402包括:
步骤4021、预先定义端口宏名格式、引脚宏名格式,所述端口宏名格式由网络名称合并端口特征符组成,所述引脚宏名格式由网络名称合并引脚特征符组成;
步骤4022、预先定义端口组字符串格式、端口字符串格式,所述端口组字符串由端口特征符与端口组序号构成,所述端口字符串由端口序号构成。
步骤4023、判断当前网络名称字符串是否为空,是则读取下一个网络名称,否则读取对应的引脚名字符串并进入下一步;
步骤4024、将所述当前网络名称字符串赋值给所述端口宏名格式、引脚宏名格式中的网络名称;
步骤4025、根据引脚编号生成端口宏名对应的端口组字符串、引脚宏名对应的端口字符串。
具体地,所述步骤5包括:
步骤501、读取当前引脚编号的配置项的参数字符串;
步骤502、判断所述配置项的参数字符串在配置字符串中的位置序号;
步骤503、根据所述位置序号指定索引编号;
步骤504、根据所述索引编号在对应的代码字符串数组中匹配相应的字符串输出。
进一步地,在所述步骤504之后还包括:
步骤505、判断当前引脚编号对应的网络名称是否为空,是则将当前引脚编号对应的引脚配置为输出模式,并标注为未使用状态。
具体地,所述端口宏名格式为“网络名称_PORT”,对应的端口组字符串格式为“PORTm”;引脚宏名格式为“网络名称_PIN”,对应的端口字符串格式为“n”,其中,m、n为引脚编号的端口组序号对应的端口序号。
具体地,通过表格编辑软件制作所述控制器引脚的配置文件。
具体地,所述表格编辑软件为Excel。
本发明的有益效果在于:本发明通过制作控制器引脚的配置文件,设置控制器引脚的配置字符串数组、代码字符串数组,并通过根据配置文件、配置字符串数组、代码字符串数组,生成控制器引脚代码,实现了控制器引脚代码的自动生成。
附图说明
图1是本发明的控制器引脚代码自动生成方法的流程示意图。
具体实施方式
下面结合附图具体阐明本发明的实施方式,附图仅供参考和说明使用,不构成对本发明专利保护范围的限制。
本发明的实施例提供一种控制器引脚代码自动生成方法,包括:
步骤1、制作控制器引脚的配置文件。
在具体实施时,通过表格编辑软件制作所述控制器引脚的配置文件,所述表格编辑软件可以是Excel等。
在本实施例中,所述步骤1包括:
步骤101、根据系统设计图的功能定义给控制器的各引脚分配网络名称;
步骤102、根据控制器的各引脚特性定义各配置项名称,所述配置项名称至少包括引脚编号、复用功能,所述引脚编号由连接符连接端口组号与对应的端口号组成。
所述配置项名称还可以包括反馈开关状态、上拉下拉、开漏输出状态、输入输出状态、强度/速度,以及输入类型等参数。
例如,引脚编号为Pm_n,其中,“Pm”表示端口组号,“_”表示连接符,“n”表示对Pm端口组应的端口号。
步骤103、对控制器的各引脚的所述配置项设置参数字符串。
例如,对于P1_2引脚的“功能”配置项,包括NMI、INTP5、CSIH0CSS0等参数字符串。
步骤2、设置控制器引脚的配置字符串数组,所述配置字符串数组由控制器所有引脚相同配置项的参数字符串按照预设顺序构成。
控制器所有引脚的相同配置项对应一个配置字符串数组,不同配置项对应不同的配置字符串。
例如,所有引脚的“功能”项对应的配置字符串数组是:
A={
{"P0_0","NMI","CSIH0SSI","TAUJ0I0","INTP5","null","null","RLIN31TX","CSIH0CSS0","TAUJ0O0","OSTM0 TTOUT","null","null"},
{"P0_1","RLIN31RX/INTP0","null","TAUJ0I1","null","null","null","null","CSIH0SO","TAUJ0O1","ERROROUT","null","null"},
……};
步骤3、设置控制器引脚的代码字符串数组,所述代码字符串数组由控制器源代码中各引脚的配置项按照预设顺序构成。
例如,控制器所有引脚的“功能”配置项对应的代码字符串数组是:
A'={"PIN_GPIO,","PIN_ALT_1,","PIN_ALT_2,","PIN_ALT_3,","PIN_ALT_4,","PIN_ALT_5,","PIN_ALT_6,"}
步骤4、读取所述配置文件,生成引脚映射关系代码。
在本实施例中,所述步骤4包括:
步骤401、遍历所述配置文件中的所述引脚编号、所述网络名称对应的字符串;
步骤402、生成所述网络名称与端口组、端口的映射关系代码。
在本实施例中,所述步骤402包括:
步骤4021、预先定义端口宏名格式、引脚宏名格式,所述端口宏名格式由网络名称合并端口特征符组成,所述引脚宏名格式由网络名称合并引脚特征符组成;
步骤4022、预先定义端口组字符串格式、端口字符串格式,所述端口组字符串由端口特征符与端口组序号构成,所述端口字符串由端口序号构成。
在具体实施时,所述端口宏名格式为“网络名称_PORT”,对应的端口组字符串格式为“PORTm”;引脚宏名格式为“网络名称_PIN”,对应的端口字符串格式为“n”,其中,m、n为引脚编号的端口组序号对应的端口序号。
步骤4023、判断当前网络名称字符串是否为空,是则读取下一个网络名称,否则读取对应的引脚名字符串并进入下一步;
步骤4024、将所述当前网络名称字符串赋值给所述端口宏名格式、引脚宏名格式中的网络名称;
步骤4025、根据引脚编号生成端口宏名对应的端口组字符串、引脚宏名对应的端口字符串。
例如,当前读取到的网络名称字符串为KL15_INT、引脚名字符串是“P1_2”,则端口宏名为KL15_INT_PORT,对应的端口组字符串为“PORT1”;引脚宏名为KL15_INT_PIN,对应的端口字符串为“2”。
步骤5、读取所述配置文件,根据所述配置字符串数组、代码字符串数组生成引脚配置代码。
在本实施例中,所述步骤5包括:
步骤501、读取当前引脚编号的配置项的参数字符串;
步骤502、判断所述配置项的参数字符串在配置字符串中的位置序号;
步骤503、根据所述位置序号指定索引编号;
步骤504、根据所述索引编号在对应的代码字符串数组中匹配相应的字符串输出。
例如,当前读取到引脚P1_2的的“功能”配置项的参数字符串为“INTP5”,匹配得到其索引编号为4,根据索引编号4在“功能”代码字符串数组中匹配得到的字符串是“PIN_ALT_4”。
在本发明的另一个实施例中,在所述步骤504之后还包括:
步骤505、判断当前引脚编号对应的网络名称是否为空,是则将当前引脚编号对应的引脚配置为输出模式,并标注为未使用状态。
步骤6、将所述引脚映射关系代码和引脚配置代码按照端口和引脚的顺序合成得到控制器引脚代码。
以上所揭露的仅为本发明的较佳实施例,不能以此来限定本发明的权利保护范围,因此依本发明申请专利范围所作的等同变化,仍属本发明所涵盖的范围。

Claims (9)

1.一种控制器引脚代码自动生成方法,其特征在于,包括:
步骤1、制作控制器引脚的配置文件;
步骤2、设置控制器引脚的配置字符串数组,所述配置字符串数组由控制器所有引脚相同配置项的参数字符串按照预设顺序构成;
步骤3、设置控制器引脚的代码字符串数组,所述代码字符串数组由控制器源代码中各引脚的配置项按照预设顺序构成;
步骤4、读取所述配置文件,生成引脚映射关系代码;
步骤5、读取所述配置文件,根据所述配置字符串数组、代码字符串数组生成引脚配置代码;
步骤6、将所述引脚映射关系代码和引脚配置代码按照端口和引脚的顺序合成得到控制器引脚代码。
2.根据权利要求1所述的控制器引脚代码自动生成方法,其特征在于,所述步骤1包括:
步骤101、根据系统设计图的功能定义给控制器的各引脚分配网络名称;
步骤102、根据控制器的各引脚特性定义各配置项名称,所述配置项名称至少包括引脚编号、复用功能,所述引脚编号由连接符连接端口组号与对应的端口号组成。
3.根据权利要求2所述的控制器引脚代码自动生成方法,其特征在于,所述步骤4包括:
步骤401、遍历所述配置文件中的所述引脚编号、所述网络名称对应的字符串;
步骤402、生成所述网络名称与端口组、端口的映射关系代码。
4.根据权利要求3所述的控制器引脚代码自动生成方法,其特征在于,所述步骤5包括:
步骤501、读取当前引脚编号的配置项的参数字符串;
步骤502、判断所述配置项的参数字符串在配置字符串中的位置序号;
步骤503、根据所述位置序号指定索引编号;
步骤504、根据所述索引编号在对应的代码字符串数组中匹配相应的字符串输出。
5.根据权利要求4所述的控制器引脚代码自动生成方法,其特征在于,在所述步骤504之后还包括:
步骤505、判断当前引脚编号对应的网络名称是否为空,是则将当前引脚编号对应的引脚配置为输出模式,并标注为未使用状态。
6.根据权利要求5所述的控制器引脚代码自动生成方法,其特征在于,所述步骤402包括:
步骤4021、预先定义端口宏名格式、引脚宏名格式,所述端口宏名格式由网络名称合并端口特征符组成,所述引脚宏名格式由网络名称合并引脚特征符组成;
步骤4022、预先定义端口组字符串格式、端口字符串格式,所述端口组字符串由端口特征符与端口组序号构成,所述端口字符串由端口序号构成。
步骤4023、判断当前网络名称字符串是否为空,是则读取下一个网络名称,否则读取对应的引脚名字符串并进入下一步;
步骤4024、将所述当前网络名称字符串赋值给所述端口宏名格式、引脚宏名格式中的网络名称;
步骤4025、根据引脚编号生成端口宏名对应的端口组字符串、引脚宏名对应的端口字符串。
7.根据权利要求6所述的控制器引脚代码自动生成方法,其特征在于,所述端口宏名格式为“网络名称_PORT”,对应的端口组字符串格式为“PORTm”;引脚宏名格式为“网络名称_PIN”,对应的端口字符串格式为“n”,其中,m、n为引脚编号的端口组序号对应的端口序号。
8.根据权利要求7所述的控制器引脚代码自动生成方法,其特征在于,所述步骤1包括:通过表格编辑软件制作所述控制器引脚的配置文件。
9.根据权利要求8所述的控制器引脚代码自动生成方法,其特征在于,所述表格编辑软件为Excel。
CN202010242588.7A 2020-03-31 2020-03-31 一种控制器引脚代码自动生成方法 Active CN111414192B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010242588.7A CN111414192B (zh) 2020-03-31 2020-03-31 一种控制器引脚代码自动生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010242588.7A CN111414192B (zh) 2020-03-31 2020-03-31 一种控制器引脚代码自动生成方法

Publications (2)

Publication Number Publication Date
CN111414192A true CN111414192A (zh) 2020-07-14
CN111414192B CN111414192B (zh) 2023-09-12

Family

ID=71491572

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010242588.7A Active CN111414192B (zh) 2020-03-31 2020-03-31 一种控制器引脚代码自动生成方法

Country Status (1)

Country Link
CN (1) CN111414192B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101196953A (zh) * 2006-12-07 2008-06-11 富士通株式会社 用于设计印刷电路板的cad装置、方法和计算机产品
CN101303708A (zh) * 2008-06-12 2008-11-12 北京中星微电子有限公司 一种芯片引脚复用的代码编码的方法及装置
CN103793565A (zh) * 2014-01-26 2014-05-14 深圳市兴森快捷电路科技股份有限公司 一种快速生成网表的方法
CN107864052A (zh) * 2017-10-30 2018-03-30 广东亿迅科技有限公司 基于持续部署应用配置自动化升级的方法及其系统
CN110502799A (zh) * 2019-07-25 2019-11-26 苏州浪潮智能科技有限公司 一种芯片引脚自动化配置方法与装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101196953A (zh) * 2006-12-07 2008-06-11 富士通株式会社 用于设计印刷电路板的cad装置、方法和计算机产品
CN101303708A (zh) * 2008-06-12 2008-11-12 北京中星微电子有限公司 一种芯片引脚复用的代码编码的方法及装置
CN103793565A (zh) * 2014-01-26 2014-05-14 深圳市兴森快捷电路科技股份有限公司 一种快速生成网表的方法
CN107864052A (zh) * 2017-10-30 2018-03-30 广东亿迅科技有限公司 基于持续部署应用配置自动化升级的方法及其系统
CN110502799A (zh) * 2019-07-25 2019-11-26 苏州浪潮智能科技有限公司 一种芯片引脚自动化配置方法与装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马强等: "基于编程语言结构的通用配置代码生成方法" *

Also Published As

Publication number Publication date
CN111414192B (zh) 2023-09-12

Similar Documents

Publication Publication Date Title
US6134707A (en) Apparatus and method for in-system programming of integrated circuits containing programmable elements
US5513324A (en) Method and apparatus using network variables in a multi-node network
CN106777723A (zh) 一种自动绘制原理图的方法
CN104360865A (zh) 一种序列化方法、反序列化方法及相关设备
US5418972A (en) Protocol data generator-analyzer
CN111538260A (zh) 引脚配置方法及装置、多引脚互连互通系统
CN111414192B (zh) 一种控制器引脚代码自动生成方法
CN114546394A (zh) 统一的物联网外设接入与控制方法
CN109388406A (zh) 转换java代码的方法及装置、存储介质、电子装置
CN112906132A (zh) 一种用于生成飞机线束组件数据的方法和装置
CN115905070B (zh) 一种激光器控制接口的适配方法、适配装置和可存储介质
US6892256B1 (en) Automated system for storing revision information from slave programmable devices in a master programmable device
CN109726204B (zh) 一种基于自定义数据表的数据资料管理方法及装置
CN111859826A (zh) Protel网表转allegro文本的方法及工具
CN105608097A (zh) 适应性调整数据库结构的方法与调整装置
CN111025991A (zh) 一种高密度信号输入输出电路及方法
CN208460003U (zh) I2c从地址生成装置及芯片
CN112506919A (zh) 一种结构化的icd生成方法
CN111915183A (zh) 基于产品模板的生产调度方法、系统、终端及存储介质
WO2022230809A1 (ja) シリアル化方法、逆シリアル化方法、情報処理プログラム、情報処理装置及び通信システム
CN1816046A (zh) 一种接口自适应方法及其装置
CN110418121A (zh) 电子组件以及投影设备
CN219202158U (zh) 一种识别开关量板卡类型的电路
CN115032901B (zh) 一种设备控制方法及电子设备
CN113656112A (zh) 一种应用于系列化产品的固件程序配置方法

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