CN102521025A - 嵌入式微控制器端口自定义方法 - Google Patents
嵌入式微控制器端口自定义方法 Download PDFInfo
- Publication number
- CN102521025A CN102521025A CN2011103888177A CN201110388817A CN102521025A CN 102521025 A CN102521025 A CN 102521025A CN 2011103888177 A CN2011103888177 A CN 2011103888177A CN 201110388817 A CN201110388817 A CN 201110388817A CN 102521025 A CN102521025 A CN 102521025A
- Authority
- CN
- China
- Prior art keywords
- port
- configuration information
- function
- information table
- input
- 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
Links
Images
Abstract
本发明公开了一种嵌入式微控制器端口自定义方法,其特点是,包括以下步骤:建立端口配置信息表的步骤;微处理器接收修改端口功能的指令的步骤;微处理器判断是否可作此功能定义的步骤;将修改端口功能的指令映射到端口配置信息表的步骤;端口映射实现的步骤。本发明可在不更改嵌入式软件基础上,通过人机界面的端口配置,实现输入输出端口功能的定义与配置,以满足不同现场与客户的需求。
Description
技术领域
本发明涉及一种嵌入式微控制器端口自定义方法。
背景技术
随着工艺与技术的发展,嵌入式系统应用的日益普及。在嵌入式系统应用中,嵌入式产品通常以固定功能作现场应用,特别是对于系统数据采集端口与信号输出端口,在实际应用过程中,不同现场或客户对于端口常常会有不同用法,而对于任意端口功能的变化需求,都会带来嵌入式软件的变更。嵌入式软件是与实际应用密切相关的,应用功能的变更会比较麻烦。简单的功能变更可以通过硬件上部分输入口如跳线、开关、拨码开关等的方式来实现,但靠硬件设计很难满足复杂或相对复杂的配置更改。
由于固定功能的输入与输出接口已无法满足不同现场或客户的需求,因此如何在不更改嵌入式软件基础上,对硬件端口功能做人性化的配置与定义,是科技人员必需考虑和解决的问题。
发明内容
本发明所要解决的技术问题是提供一种输入输出端口自定义与映射的软件实现方法。该方法在可不更改嵌入式软件基础上,通过人机界面的端口配置,实现输入输出端口功能的定义与配置,以满足不同现场与客户的需求。
本发明采取的技术方案是:嵌入式微控制器端口自定义方法,其特点是,包括以下步骤:
建立端口配置信息表的步骤;
微处理器接收修改端口功能的指令的步骤;
微处理器判断是否可作此功能定义的步骤;
将修改端口功能的指令映射到端口配置信息表的步骤;
端口映射实现的步骤。
上述嵌入式微控制器端口自定义方法,其中,所述的建立端口配置信息表的步骤包括原始建立端口配置信息表和根据用户指令更新端口配置信息表。
上述嵌入式微控制器端口自定义方法,其中,所述的原始建立端口配置信息表为首次使用时初始化端口定义的默认值。
上述嵌入式微控制器端口自定义方法,其中,所述的根据用户指令更新端口配置信息表包括以下步骤:
微控制器接收修改端口功能的指令的步骤;
微控制器将接收到的修改端口的功能送到端口配置信息表进行比对的步骤;
根据比对结果确定是否可进行端口功能定义的步骤;
如比对结果可修改该端口功能,则对端口配置信息表进行修改,输入增加的配置信息,然后再将该新增的配置信息输出到存储器,形成新的端口配置信息表;否则原端口功能不作更改。
上述嵌入式微控制器端口自定义方法,其中,所述的输入端口的功能定义是唯一的;输入端口做修改时应查询是否已经有其他输入定义为此功能,若有,则提醒用户不可作此定义。
上述嵌入式微控制器端口自定义方法,其中,所述的输出端口重定义可与其他端口重复。
上述嵌入式微控制器端口自定义方法,其中,所述的端口映射实现的步骤包括:
输入端口的实现:微控制器首先根据端口配置信息表查询该输入端口的物理输入点对应的逻辑输入点,即可得到该逻辑输入点对应的输入端口的功能;
输出端口的实现:微控制器首先根据端口配置信息表查询该物理输出点对应的逻辑输出点,得到该逻辑输出点对应的输出功能信息后,输出端口再根据该输出功能信息由微控制器控制输出。
上述嵌入式微控制器端口自定义方法,其中,还包括端口配置信息自动纠错的步骤,该步骤为:对输入端口和输出端口的配置分别作校验,若校验出错,则端口配置恢复为默认值。
上述嵌入式微控制器端口自定义方法,其中,所述的端口配置信息表存储在所述微处理器的存储器中。
上述嵌入式微控制器端口自定义方法,其中,所述的存储器为EEPROM存储器,其中存储了端口配置信息表的每个输入端口和输出端口功能的存储地址,以及对输入端口或输出端口的配置分别作CRC校验值的存储地址。
本发明由于采用了以上的技术方案,产生的效果是明显的:
1、可在不修改嵌入式软件基础上,在实际应用过程中修改各端口的功能设置,满足不同现场与客户的功能需求,用户可以灵活方便的根据需要修改输入输出功能,以提高嵌入式应用软件的适应性与实用性;
2、端口有默认定义,符合常用的功能要求,如无特殊功能无需作手动修改;
3、可利用微控制器自带或外扩的存储器,实现端口配置信息表的储存,掉电仍可存储,端口配置如无特殊要求只作首次配置即可;
4、端口定义有自动纠错功能,若存储读写出错,端口配置自动复位为默认。
附图说明
本发明的具体特征、性能由以下的实施例及其附图进一步详细说明。
图1是实现本发明的系统框图。
图2是实现本发明端口自定义的流程图。
具体实施方式
本发明是一种对嵌入式微控制器端口作功能配置与定义的方法,该方法根据硬件现有端口与硬件就其自身用途而可罗列出的端口功能作对应,并将各个端口对应功能写入微控制器的存储器中,从而实现端口实现所定义特定功能。
考虑到嵌入式软件实现方法,系统端口自定义的物理地址与逻辑地址范围都是确定的,所以在实际应用中,可设置的端口范围与功能范围都是固定的,端口定义是在固定功能范围内选择对应功能定义。
请参阅图1,图1是实现本发明的系统框图。本发明包括:一嵌入式微控制器1、可由该微控制器控制的的输入端口2和输出端口3、一该微控制器自带或外扩的可读写操作可掉电存储器4、一与该微控制器相连接的人机接口5、以及,一可进行端口定义的人机操作与显示界面6。所述的存储器4存储端口配置信息表。人机操作配置端口的功能定义,来自控制器外围的端口通过此功能定义映射到相应逻辑输入或输出,从而实现端口自定义。
本发明嵌入式微控制器端口自定义方法,包括以下步骤:
建立端口配置信息表的步骤;
微处理器接收修改端口功能的指令的步骤;
微处理器判断是否可作此功能定义的步骤;
将修改端口功能的指令映射到端口配置信息表的步骤;
端口映射实现的步骤。
所述的建立端口配置信息表的步骤包括原始建立端口配置信息表和根据用户指令更新端口配置信息表。其中,所述的原始建立端口配置信息表为首次使用时初始化端口定义的默认值;所述的根据用户指令更新端口配置信息表包括:微处理器接收修改端口功能的指令的步骤;将接收的修改端口的功能送到端口配置信息表进行比对的步骤;根据比对结果确定是否可进行端口功能定义的步骤;如比对结果可修改该端口功能,则对端口配置信息表进行修改,输入增加的配置信息,然后再将该新增的配置信息输出到存储器,形成新的端口配置信息表;否则原端口功能不作更改。
本发明还包括端口配置信息自动纠错的步骤,该步骤为:对输入端口和输出端口的配置分别作校验,若校验出错,则端口配置恢复为默认值。
本发明嵌入式微控制器端口自定义方法中,所述的端口映射实现的步骤包括:
输入端口的实现:微控制器首先根据端口配置信息表查询该输入端口的物理输入点对应的逻辑输入点,即可得到该逻辑输入点对应的输入端口的功能;所述的输入端口的功能定义是唯一的;输入端口做修改时应查询是否已经有其他输入定义为此功能,若有,则提醒用户不可作此定义。
输出端口的实现:微控制器首先根据端口配置信息表查询该物理输出点对应的逻辑输出点,得到该逻辑输出点对应的输出功能信息后,输出端口再根据该输出功能信息由微控制器控制输出。所述的输出端口重定义可与其他端口重复。
下面结合一具体的实施例,对本发明作进一步的详细说明。
请参阅图2。本发明所述的端口配置信息表存储在微处理器的存储器中,为可掉电存储。下面以电可擦除可编程存储器EEPROM、输入输出10进10出、输入输出功能分别以20个固定功能为例进行详细说明:
1、首先定义10个物理输入、输出端口值分别为Physical_IN[10]、Physical_OUT[10];
定义20个逻辑输入值为Logic_IN[20],Logic_IN[0] - Logic_IN[19]分别代表输入功能1-功能20。定义20个逻辑输出值为Logic_OUT[20],Logic_OUT [0] - Logic_OUT[19]分别代表输出功能1-功能20;
2、确定EEPROM的端口配置信息表的每个输入端口和输出端口功能的存储地址,以及对输入端口或输出端口的端口配置分别作CRC校验值的存储地址。具体见表1:
其中IN_Tab[10],OUT_Tab[10]分别为输入端口与输出端口功能的端口配置信息表;
Offset_IN 为输入端口配置信息表存储的偏移地址;
Offset_OUT 为输出端口配置信息表存储的偏移地址;
表1
EEPROM地址 | 存储内容 |
Offset_IN | IN_Tab[0] |
Offset_IN+1 | IN_Tab[1] |
… | … |
Offset_IN+9 | IN_Tab[9] |
Offset_IN+10 | 输入crc校验值低位 |
Offset_IN+11 | 输入crc校验值高位 |
Offset_OUT | OUT _Tab[0] |
Offset_ OUT +1 | OUT _Tab[1] |
… | … |
Offset_ OUT +9 | OUT _Tab[9] |
Offset_ OUT +10 | 输入crc校验值低位 |
Offset_ OUT +11 | 输入crc校验值高位 |
3、 系统运行初始化过程中,首先从EEPROM读取端口配置信息表的输入端口的功能与输入crc(循环冗余码校验)校验值,将端口配置信息表中的输入端口进行crc校验后,如果所得的校验值若与从EEPROM读取的校验值不符,则初始化输入端口配置为默认值,作crc校验后写入EEPROM对应地址中;输出端口配置信息亦然。此步骤主要为了对于首次使用或者端口配置信息表存储出错的情况下,端口对应功能使用默认值;
4、运用人机操作器根据现场或客户使用需求,修改输入输出端口功能定义,程序接收到此信息后修改相应IN_Tab/OUT_Tab值,并对输入/输出端口配置信息作crc校验,完成后分别叫对照值与校验值存入EEPROM相应地址中;
其中IN_Tab/OUT_Tab值分别可为0-19、0xff,若IN_Tab值为0-19分别代表功能定义Logic_IN[0] - Logic_IN[19],OUT_Tab亦然。若值为0xff,则表示此端口未做功能定义,作备用处理;
由于输入功能的唯一性,IN_Tab[0] - IN_Tab[19]定义的功能不可重复,若修改输入端口时已有本功能端口,则提示用户此功能已使用,不可修改;若某功能可有两个及以上输入点作输入时,可将此功能作两个及以上逻辑输入点,再作定义;输出端口功能可重复。
端口配置完成后,从输入寄存器读取输入端口值Physical_IN,根据IN_Tab分别对10个输入端口值映射至逻辑输入点值,即可得到某输入功能是否有效。由控制器根据端口配置信息表查询该物理输入点对应的逻辑输入点,即可得到该逻辑输入点对应的输入功能。
对于输出端口,程序逻辑根据需求已得到20个输出功能值或对其进行赋值,即已得到Logic_OUT值。输出端口根据OUT_Tab对应到端口逻辑输出点,根据本逻辑输出点值决定本端口输出是否有效。即微控制器首先根据端口配置信息表查询该物理输出点对应的逻辑输出点,得到该逻辑输出点对应的输出功能信息后,输出端口再根据该输出功能信息由微控制器控制输出。
本发明可在不更改微处理器的嵌入式软件的基础上,通过人机界面的端口配置,实现输入输出端口功能的定义与配置,以满足不同现场与客户的需求。
Claims (10)
1.嵌入式微控制器端口自定义方法,其特征在于,包括以下步骤:
建立端口配置信息表的步骤;
微处理器接收修改端口功能的指令的步骤;
微处理器判断是否可作此功能定义的步骤;
将修改端口功能的指令映射到端口配置信息表的步骤;
端口映射实现的步骤。
2.根据权利要求1所述的嵌入式微控制器端口自定义方法,其特征在于,所述的建立端口配置信息表的步骤包括原始建立端口配置信息表和根据用户指令更新端口配置信息表。
3.根据权利要求2所述的嵌入式微控制器端口自定义方法,其特征在于,所述的原始建立端口配置信息表为首次使用时初始化端口定义的默认值。
4.根据权利要求2所述的嵌入式微控制器端口自定义方法,其特征在于,所述的根据用户指令更新端口配置信息表包括以下步骤:
微控制器接收修改端口功能的指令的步骤;
将接收到的修改端口的功能送到端口配置信息表进行比对的步骤;
根据比对结果确定是否可进行端口功能定义的步骤;
如比对结果可修改该端口功能,则对端口配置信息表进行修改,输入增加的配置信息,然后再将该新增的配置信息输出到存储器,形成新的端口配置信息表;否则原端口功能不作更改。
5.根据权利要求4所述的嵌入式微控制器端口自定义方法,其特征在于,所述的输入端口的功能定义是唯一的;输入端口功能做修改时应查询是否已经有其他输入定义为此功能,若有,则提醒用户不可作此定义。
6.根据权利要求4所述的嵌入式微控制器端口自定义方法,其特征在于,所述的输出端口重定义可与其他端口重复。
7.根据权利要求1所述的嵌入式微控制器端口自定义方法,其特征在于,所述的端口映射实现的步骤包括:
输入端口的实现:微控制器首先根据端口配置信息表查询该输入端口的物理输入点对应的逻辑输入点,即可得到该逻辑输入点对应的输入端口的功能;
输出端口的实现:微控制器首先根据端口配置信息表查询该物理输出点对应的逻辑输出点,得到该逻辑输出点对应的输出功能信息后,输出端口再根据该输出功能信息由微控制器控制输出。
8.根据权利要求1所述的嵌入式微控制器端口自定义方法,其特征在于,还包括端口配置信息自动纠错的步骤,该步骤为:对输入端口和输出端口的配置分别作校验,若校验出错,则端口配置恢复为默认值。
9.根据权利要求1~8中任一项所述的嵌入式微控制器端口自定义方法,其特征在于,所述的端口配置信息表存储在所述微处理器的存储器中。
10.根据权利要求9所述的嵌入式微控制器端口自定义方法,其特征在于,所述的存储器为EEPROM存储器,其中存储了端口配置信息表的每个输入端口和输出端口功能的存储地址,以及对输入端口或输出端口的配置分别作CRC校验值的存储地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103888177A CN102521025B (zh) | 2011-11-30 | 2011-11-30 | 嵌入式微控制器端口自定义方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103888177A CN102521025B (zh) | 2011-11-30 | 2011-11-30 | 嵌入式微控制器端口自定义方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102521025A true CN102521025A (zh) | 2012-06-27 |
CN102521025B CN102521025B (zh) | 2013-11-27 |
Family
ID=46291960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103888177A Active CN102521025B (zh) | 2011-11-30 | 2011-11-30 | 嵌入式微控制器端口自定义方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102521025B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107924356A (zh) * | 2015-07-28 | 2018-04-17 | 密克罗奇普技术公司 | 零开销代码覆盖分析 |
CN108508812A (zh) * | 2018-05-15 | 2018-09-07 | 广东嘉腾机器人自动化有限公司 | 一种agv控制器io端口复用配置系统及其方法 |
CN108700855A (zh) * | 2017-03-09 | 2018-10-23 | 深圳市大疆创新科技有限公司 | F通道控制方法及装置 |
CN110457107A (zh) * | 2019-08-09 | 2019-11-15 | 珠海格力电器股份有限公司 | 组态软件操作指令管理方法、装置和系统 |
CN110764840A (zh) * | 2019-09-29 | 2020-02-07 | 北京东软望海科技有限公司 | 一种无线调试安卓设备的方法、装置及系统 |
CN114253223A (zh) * | 2020-09-25 | 2022-03-29 | 深圳市英维克信息技术有限公司 | 一种控制器端口数据处理方法、装置、设备及存储介质 |
CN114488904A (zh) * | 2022-02-11 | 2022-05-13 | 无锡绿科源电子科技有限公司 | 电动车控制器功能端口配置方法、装置及控制设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192944A (zh) * | 2006-11-21 | 2008-06-04 | 中兴通讯股份有限公司 | 一种通信设备端口信息管理方法和系统 |
-
2011
- 2011-11-30 CN CN2011103888177A patent/CN102521025B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192944A (zh) * | 2006-11-21 | 2008-06-04 | 中兴通讯股份有限公司 | 一种通信设备端口信息管理方法和系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107924356A (zh) * | 2015-07-28 | 2018-04-17 | 密克罗奇普技术公司 | 零开销代码覆盖分析 |
CN107924356B (zh) * | 2015-07-28 | 2021-10-08 | 密克罗奇普技术公司 | 零开销代码覆盖分析 |
CN108700855A (zh) * | 2017-03-09 | 2018-10-23 | 深圳市大疆创新科技有限公司 | F通道控制方法及装置 |
CN108508812A (zh) * | 2018-05-15 | 2018-09-07 | 广东嘉腾机器人自动化有限公司 | 一种agv控制器io端口复用配置系统及其方法 |
CN108508812B (zh) * | 2018-05-15 | 2024-04-09 | 广东嘉腾机器人自动化有限公司 | 一种agv控制器io端口复用配置系统及其方法 |
CN110457107A (zh) * | 2019-08-09 | 2019-11-15 | 珠海格力电器股份有限公司 | 组态软件操作指令管理方法、装置和系统 |
CN110764840A (zh) * | 2019-09-29 | 2020-02-07 | 北京东软望海科技有限公司 | 一种无线调试安卓设备的方法、装置及系统 |
CN110764840B (zh) * | 2019-09-29 | 2023-11-03 | 望海康信(北京)科技股份公司 | 一种无线调试安卓设备的方法、装置及系统 |
CN114253223A (zh) * | 2020-09-25 | 2022-03-29 | 深圳市英维克信息技术有限公司 | 一种控制器端口数据处理方法、装置、设备及存储介质 |
CN114488904A (zh) * | 2022-02-11 | 2022-05-13 | 无锡绿科源电子科技有限公司 | 电动车控制器功能端口配置方法、装置及控制设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102521025B (zh) | 2013-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521025B (zh) | 嵌入式微控制器端口自定义方法 | |
EP3474136A1 (en) | Method and apparatus for use in converting building block programming into program code | |
US9311110B2 (en) | Techniques to initialize from a remotely accessible storage device | |
WO2017084565A1 (zh) | 存储数据访问方法及相关的控制器、设备、主机和系统 | |
CN105718281B (zh) | 一种触摸屏固件升级方法及装置 | |
CN108605220B (zh) | 一种嵌入式通用集成电路卡的应用处理方法及装置 | |
CN107004032A (zh) | 镜像文件转换方法及装置 | |
CN104102510B (zh) | 一种用于iec61850网络处理器芯片的集成配置系统 | |
CN103678187B (zh) | 一种微控制单元及其控制方法 | |
WO2021057064A1 (zh) | 基于人工智能的数据交互转换方法、装置、设备及介质 | |
CN105354071A (zh) | 一种嵌入式软件兼容硬件的方法 | |
CN105260138A (zh) | 读写控制系统及方法 | |
CN103632185A (zh) | 一种具有扩展功能的掩膜智能卡 | |
CN101840378B (zh) | 一种访问固态硬盘的方法、控制装置和固态硬盘 | |
CN109297150A (zh) | 空调控制方法、装置、系统、空调、终端及可读存储介质 | |
WO2020113421A1 (zh) | 一种挂载文件系统的方法、终端设备及存储介质 | |
US20220312526A1 (en) | Dual-connectivity mode launching method, mobile terminal, and readable storage medium | |
JP2018502392A (ja) | レジスタを備えている複数のスレーブデバイスにネットワークを介してマスタデバイスがアクセスするための方法 | |
CN105373038A (zh) | 一种可编程模拟量输入模块 | |
US20130103886A1 (en) | Dual-firmware for next generation emulation | |
CN105159613B (zh) | 一种emmc控制系统及其访问方法 | |
CN107644092A (zh) | 照片管理方法、照片管理装置及智能终端 | |
CN103902298A (zh) | 一种指令集固件刷写状态信息的设置方法和装置 | |
CN113553079A (zh) | 一种物联设备的升级方法、装置、电子设备及存储介质 | |
CN109962788B (zh) | 多控制器调度方法、装置和系统及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |