CN116483768A - 使用嵌入式串口编程芯片数据的方法、系统和芯片设备 - Google Patents

使用嵌入式串口编程芯片数据的方法、系统和芯片设备 Download PDF

Info

Publication number
CN116483768A
CN116483768A CN202310445813.0A CN202310445813A CN116483768A CN 116483768 A CN116483768 A CN 116483768A CN 202310445813 A CN202310445813 A CN 202310445813A CN 116483768 A CN116483768 A CN 116483768A
Authority
CN
China
Prior art keywords
serial port
baud rate
data
chip
slave
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.)
Pending
Application number
CN202310445813.0A
Other languages
English (en)
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.)
Praran Semiconductor Shanghai Co ltd
Original Assignee
Praran Semiconductor Shanghai 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 Praran Semiconductor Shanghai Co ltd filed Critical Praran Semiconductor Shanghai Co ltd
Priority to CN202310445813.0A priority Critical patent/CN116483768A/zh
Publication of CN116483768A publication Critical patent/CN116483768A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • 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
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明公开了一种使用嵌入式串口编程芯片数据的方法、系统和芯片设备,其中方法包括:接收由主机发送的请求连接信息;当从机的芯片引脚识别到所述请求接收信息的数据起始位时,将芯片引脚对应的嵌入式串口作为目标串口;控制目标串口自动检测所述目标串口的串口波特率,并判断串口波特率是否在有效范围之内;若串口波特率在所述有效范围之内,则向主机发送同意连接信息,与主机完成连接;以便主机按照规定协议编程从机存储器中的数据。本发明涉及芯片技术领域,利用多组嵌入式串行接口和检测对应的串口波特率解决了芯片在串行调试接口不能使用的情况下,通过嵌入式串行接口对存储器的数据进行编程。

Description

使用嵌入式串口编程芯片数据的方法、系统和芯片设备
技术领域
本发明涉及芯片技术领域,具体而言,涉及使用嵌入式串口编程芯片数据的方法、系统和芯片设备。
背景技术
串行线调试(Serial Wire Debug,简称SWD)是ARM目前支持的两种调试端口之一。基于ARM Core Sight调试构架,SWD可以通过传输数据包来读写芯片的寄存器。它的物理层由两条线组成,分别是:SWDIO:双向数据线;SWCLK:host驱动的时钟线。芯片实际使用过程中会有以下两种情况导致SWD接口不能使用:
1、SWD接口软件上复用成其他外设引脚;
2、SWD接口物理上未封装出来(用户实际的产品一般会将嵌入式串行接口开放出来)。
在芯片的串行调试接口不能使用的情况下,想要对芯片的存储器进行编程时就会很困难。
串口(UART)是嵌入式里最基础最常用也最简单的一种通讯(数据传输)方式,通过物理接口的形式将主机与从机相连接。串口没有主从机概念,并且没有专门的时钟信号SCK,所以串口通信也属于异步传输。并且在异步传输时,通信双方必须使用一致的波特率才能完成正确的数据传输。
发明内容
为了解决上述技术问题,本发明提供使用嵌入式串口编程芯片数据的方法、系统和芯片设备,利用多组嵌入式串行接口和检测对应的串口波特解决了芯片在串行调试接口不能使用的情况下,通过嵌入式串行接口对存储器的数据进行编程。
具体的,本发明的技术方案如下:
第一方面,本发明公开使用嵌入式串口编程芯片数据的方法,包括:
接收由主机发送的请求连接信息;
根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口;
启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内;
若所述目标串口的波特率在所述有效范围之内,则向所述主机发送同意连接信息,与所述主机完成连接;以便所述主机按照规定协议编程所述从机存储器中的数据。
在一些实施方式中,所述的根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口;具体包括:
监测所述从机的各芯片引脚是否接收到指定的变化电平;
当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口。
在一些实施方式中,所述的当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口;包括:
当所述从机芯片的第一引脚上检测到电平变化后,将第一组串口作为目标串口;
当所述从机芯片的第二引脚上检测到电平变化后,将第二组串口作为目标串口;
当所述从机芯片的第三引脚上检测到电平变化后,将第三组串口作为目标串口。
在一些实施方式中,所述的启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内;包括如下步骤:
启动所述目标串口的波特率寄存器,获取所述波特率寄存器的变化值;
根据所述波特率寄存器的变化值计算出所述目标串口的串口波特率;
判断所述串口波特率是否在所述有效范围之内;
若所述串口波特率不在所述有效范围之内,则执行系统复位,与所述主机连接失败。
在一些实施方式中,所述的主机按照规定协议编程所述从机存储器中的数据;包括以下任意一项或多项步骤:
下载所述从机存储器中的代码及选项字节;
读取所述从机存储器中的数据,具体包括:系统存储器数据、主闪存储器数据、静态存储器数据和选项字节;
擦除所述从机快闪存储器中的数据,擦除方式包括:全擦除、扇区擦除、页面擦除;
编写所述从机存储器中的数据,具体包括:快闪存储器数据、静态存储器数据和选项字节;
跳转运行所述从机中快闪存储器或静态存储器中的应用程序代码。
第二方面,本发明还公开使用嵌入式串口编程芯片数据的系统,包括:
信息收发模块,用于接收由主机发送的请求连接信息;
串口识别模块,用于根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口;
波特率检测模块,用于启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内;
所述信息收发模块,还用于若所述目标串口的波特率在所述有效范围之内,则向所述主机发送同意连接信息,与所述主机完成连接;以便所述主机按照规定协议编程所述从机存储器中的数据。
在一些实施方式中,所述串口识别模块,还用于:
监测所述从机的各芯片引脚是否接收到指定的变化电平;当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口。
在一些实施方式中,所述串口识别模块,具体用于:
当所述从机芯片的第一引脚上检测到电平变化后,将第一组串口作为目标串口;
当所述从机芯片的第二引脚上检测到电平变化后,将第二组串口作为目标串口;
当所述从机芯片的第三引脚上检测到电平变化后,将第三组串口作为目标串口。
在一些实施方式中,所述波特率检测模块,包括:
检测子模块,用于启动所述目标串口的波特率寄存器,获取所述波特率寄存器的变化值;
推算子模块,用于根据所述波特率寄存器的变化值计算出所述目标串口的串口波特率;
判断子模块,用于判断所述串口波特率是否在所述有效范围之内;
复位子模块,用于若所述串口波特率不在所述有效范围之内,则执行系统复位,与所述主机连接失败。
第三方面,本发明还公开一种芯片设备,其特征在于,包括上述任一项使用嵌入式串口编程芯片数据的系统。
与现有技术相比,本发明至少具有以下一项有益效果:
1、在从机MCU在SWD接口不能使用的情况下,可以通过嵌入式串行接口对从机的存储器数据进行编程。
2、从机可以通过接收引脚上的电平变化自动识别采用哪组串口。
3、决定使用的串口后,通过自动波特率检测功能判断通讯的波特率是否有效,可以提高通信效率。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对本发明的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1为本发明使用嵌入式串口编程芯片数据的方法的一个实施例的流程图;
图2为本发明使用嵌入式串口编程芯片数据的方法的另一个实施例的流程图;
图3为本发明使用嵌入式串口编程芯片数据的方法的另一个实施例的流程图;
图4为本发明使用嵌入式串口编程芯片数据的系统的一个实施例的结构框图;
图5为本发明使用嵌入式串口编程芯片数据的系统的另一个实施例的结构框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本申请。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所述描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其他特征、整体、步骤、操作、元素、组件和/或集合的存在或添加。
为使图面简洁,各图中只示意性地表示出了与发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在本文中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体的连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
具体实现中,本申请实施例中描述的终端设备包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机、家教机或平板计算机之类的其他便携式设备。还应当理解的是,在某些实施例中,所述终端设备并非便携式通信设备,而是具有触摸敏感表面(例如:触摸屏显示器和/或触摸板)的台式计算机。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
参考说明书附图1,本发明提供的使用嵌入式串口编程芯片数据的方法的一个实施例,包括如下步骤:
S100,接收由主机发送的请求连接信息。
具体的,主机与从机之间通过串口相连接,所述主机也称调试机,通常是电脑或其他调试设备;所述从机为被调试机,在本发明中指代的是MCU芯片。主机需要对从机中的数据进行编程。
S200,根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口。
具体的,为了使接收器能够识别传输数据的开始和结束,发射器应对传输数据的开始或结束数据设置一些指示。起始位是数据“0”,停止(结束)位是数据“1”,它们分别添加在传输数据之前和之后。在数据传输之前,发射器(主机)或接收器(从机)的分配已经完成。如果数据线变为“0”(数据线通常为“1”),则接收器会识别到发射器将要发送数据并准备开始接收传输数据。
在实际应用中,主机向从机通过串口发送数据“0x7F”作为请求连接信息,当对应的接收引脚检测到引脚上的电平由高电平转化为低电平时,可以确定所述引脚对应的串口为从机与主力之间连接的串口(目标串口)。
S300,启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内。
具体的,软件约定波特率的有效范围在1200bit/s~1000000bit/s。如果自动波特率检测到的波特率无效引导程序会执行系统复位。正常情况下,我们都是为两个串口设备事先约定好波特率,比如MCU与上位机通信时,在MCU预设的程序里按一个固定的波特率去初始化UART外设,然后上位机串口调试助手也设置一个固定的波特率,双方再联合工作。
自动波特率检测在以下两个场景是有用处的:(1)系统通信速率提前未确认;(2)系统正在使用相对低精度的时钟源,该机制允许在不测量时钟偏差的情况下,获得正确的波特率。
若波特率不在有效范围之内,就表明正在使用的这个串口不具备使用条件,会产生数据通信错误。
S400,若所述目标串口的波特率在所述有效范围之内,则向所述主机发送同意连接信息,与所述主机完成连接。以便所述主机按照规定协议编程所述从机存储器中的数据。
具体的,主机可对从机的芯片数据进行编程,通过嵌入式串行接口实现了以下主要功能:
1、读取系统存储器、Main Flash(主闪存储器)、SRAM(静态存储器)和选项字节四块存储器的数据;
2、支持全擦除、扇区擦除、页面擦除三种擦除方式擦除FLASH(快闪存储器);
3、写FLASH(快闪存储器)、SRAM(静态存储器)、选项字节三块存储区域;
4、跳转运行内部FLASH(快闪存储器)或SRAM(静态存储器)的应用程序代码。
本发明使用嵌入式串口编程芯片数据的方法的另一个实施例,如说明书附图2所示,在上述方法的一个实施例的基础上,步骤S200,根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口。包括如下子步骤:
S210,监测所述从机的各芯片引脚是否接收到指定的变化电平。
S220,当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口。
具体的,所述S220,当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口,包括:
当所述从机芯片的第一引脚上检测到电平变化后,将第一组串口作为目标串口。
具体的,当从机MCU的PA3引脚上检测到电平由高变低后引导程序使用第一组串口(PA2/PA3)。
当所述从机芯片的第二引脚上检测到电平变化后,将第二组串口作为目标串口。
具体的,当从机MCU的PA10引脚上检测到电平由高变低后引导程序使用第二组串口(PA9/PA10)。
当所述从机芯片的第三引脚上检测到电平变化后,将第三组串口作为目标串口。
具体的,当从机MCU的PA15引脚上检测到电平由高变低后引导程序使用第三组串口(PA14/PA15)。
本发明使用嵌入式串口编程芯片数据的方法的另一个实施例,如说明书附图3所示,在上述方法的一个实施例的基础上,所示步骤S300,启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内。具体包括如下子步骤:
S310,启动所述目标串口的波特率寄存器,获取所述波特率寄存器的变化值。
具体的,引导程序通过数据0x7F的数据位代替起始位进行自动波特率的检测。将数据0x7F转换为二进制,在二进制数的第八位时开始检测波特率。
S320,根据所述波特率寄存器的变化值计算出所述目标串口的串口波特率。
具体的,波特率寄存器与串口波特率的换算公式如下:
波特率寄存器的变化值:BRR=((SYSCLK+BAUDRATE/2)/BAUDRATE)
其中,SYSCLK表示MCU系统时钟,BAUDRATE表示目标串口的串口波特率。
例如:MCU系统时钟选用24MHz,那么1200波特率对应的BRR值就为0x4E20,1000000波特率对应的BRR值就为0x0018,软件约定只有在1200~1000000范围内的波特率才有效,那么BRR寄存器的值的有效范围则是0x0018~0x4E20。
S330,判断所述串口波特率是否在所述有效范围之内。
具体的,波特率的有效范围由软件约定,如果自动波特率检测到的波特率有效,则继续进行串口通信连接。
S340,若所述串口波特率不在所述有效范围之内,则执行系统复位,与所述主机连接失败。
本发明方法的另一实施例,在上述任一实施例的基础上,所述的主机按照规定协议编程所述从机存储器中的数据。包括以下任意一项或多项步骤:
(1)下载所述从机存储器中的代码及选项字节。
(2)读取所述从机存储器中的数据,具体包括:系统存储器数据、主闪存储器数据、静态存储器数据和选项字节。
具体的,主机通过嵌入式串口读取从机系统存储器、Main Flash、SRAM和选项字节四块存储器的数据。
(3)擦除所述从机快闪存储器中的数据,擦除方式包括:全擦除、扇区擦除、页面擦除。
具体的,支持主机以全擦除、扇区擦除、页面擦除三种擦除方式擦除从机的FLASH。
(4)编写所述从机存储器中的数据,具体包括:快闪存储器数据、静态存储器数据和选项字节。
具体的,主机通过嵌入式串口编写从机FLASH、SRAM、选项字节三块存储区域。
(5)跳转运行所述从机中快闪存储器或静态存储器中的应用程序代码。
具体的,主机可以跳转从机运行内部FLASH或SRAM的应用程序代码。
基于相同的技术构思,本发明还公开了使用嵌入式串口编程芯片数据的系统,该系统可采用上述任一使用嵌入式串口编程芯片数据的方法实施例来实现,具体的,本申请的使用嵌入式串口编程芯片数据的系统实施例,如说明书附图4所示,包括:
信息收发模块10,用于接收由主机发送的请求连接信息。
具体的,主机与从机之间通过串口相连接,所述主机也称调试机,通常是电脑或其他调试设备;所述从机为被调试机,在本发明中指代的是MCU芯片。主机需要对从机中的数据进行编程。
串口识别模块20,用于根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口。
具体的,为了使接收器能够识别传输数据的开始和结束,发射器应对传输数据的开始或结束数据设置一些指示。起始位是数据“0”,停止(结束)位是数据“1”,它们分别添加在传输数据之前和之后。在数据传输之前,发射器(主机)或接收器(从机)的分配已经完成。如果数据线变为“0”(数据线通常为“1”),则接收器会识别到发射器将要发送数据并准备开始接收传输数据。
在实际应用中,主机向从机通过串口发送数据“0x7F”作为请求连接信息,当对应的接收引脚检测到引脚上的电平由高电平转化为低电平时,可以确定所述引脚对应的串口为从机与主力之间连接的串口(目标串口)。
波特率检测模块30,用于启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内。
具体的,软件约定波特率的有效范围在1200bit/s~1000000bit/s。如果自动波特率检测到的波特率无效引导程序会执行系统复位。
自动波特率检测在以下两个场景是有用处的:(1)系统通信速率提前未确认;(2)系统正在使用相对低精度的时钟源,该机制允许在不测量时钟偏差的情况下,获得正确的波特率。
若波特率不在有效范围之内,就表明正在使用的这个串口不具备使用条件,会产生数据通信错误。
所述信息收发模块10,还用于若所述目标串口的波特率在所述有效范围之内,则向所述主机发送同意连接信息,与所述主机完成连接。以便所述主机按照规定协议编程所述从机存储器中的数据。
具体的,如果自动波特率检测到的波特率无效引导程序会执行系统复位。
在本实施例的另一实施方式中,所述串口识别模块,还用于:监测所述从机的各芯片引脚是否接收到指定的变化电平。当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口。
具体的,包括:当从机MCU的PA3引脚上检测到电平由高变低后引导程序使用第一组串口(PA2/PA3)。
当从机MCU的PA10引脚上检测到电平由高变低后引导程序使用第二组串口(PA9/PA10)。
当从机MCU的PA15引脚上检测到电平由高变低后引导程序使用第三组串口(PA14/PA15)。
本发明提供的使用嵌入式串口编程芯片数据的系统的另一实施例,如说明书附图5所示,在上述系统实施例的基础上,所述波特率检测模块30,包括:
检测子模块31,用于启动所述目标串口的波特率寄存器,获取所述波特率寄存器的变化值。
具体的,引导程序通过数据0x7F的数据位代替起始位进行自动波特率的检测。将数据0x7F转换为二进制,在二进制数的第八位时开始检测波特率。
推算子模块32,用于根据所述波特率寄存器的变化值计算出所述目标串口的串口波特率。
判断子模块33,用于判断所述串口波特率是否在所述有效范围之内。
具体的,波特率的有效范围由软件约定,如果自动波特率检测到的波特率有效,则继续进行串口通信连接。
复位子模块34,用于若所述串口波特率不在所述有效范围之内,则执行系统复位,与所述主机连接失败。
本发明的使用嵌入式串口编程芯片数据的方法、系统和芯片设备具有相同的技术构思,三者的实施例的技术细节可相互适用,为减少重复,此次不再赘述。
本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框,以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.使用嵌入式串口编程芯片数据的方法,其特征在于,由从机执行,包括如下步骤:
接收由主机发送的请求连接信息;
根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口;
启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内;
若所述目标串口的波特率在所述有效范围之内,则向所述主机发送同意连接信息,与所述主机完成连接;以便所述主机按照规定协议编程所述从机存储器中的数据。
2.如权利要求1所述的使用嵌入式串口编程芯片数据的方法,其特征在于,所述的根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口;具体包括:
监测所述从机的各芯片引脚是否接收到指定的变化电平;
当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口。
3.如权利要求2所述的使用嵌入式串口编程芯片数据的方法,其特征在于,所述的当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口;包括:
当所述从机芯片的第一引脚上检测到电平变化后,将第一组串口作为目标串口;
当所述从机芯片的第二引脚上检测到电平变化后,将第二组串口作为目标串口;
当所述从机芯片的第三引脚上检测到电平变化后,将第三组串口作为目标串口。
4.如权利要求1所述的使用嵌入式串口编程芯片数据的方法,其特征在于,所述的启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内;包括如下步骤:
启动所述目标串口的波特率寄存器,获取所述波特率寄存器的变化值;
根据所述波特率寄存器的变化值计算出所述目标串口的串口波特率;
判断所述串口波特率是否在所述有效范围之内;
若所述串口波特率不在所述有效范围之内,则执行系统复位,与所述主机连接失败。
5.如权利要求1所述的使用嵌入式串口编程芯片数据的方法,其特征在于,所述的主机按照规定协议编程所述从机存储器中的数据;包括以下任意一项或多项步骤:
下载所述从机存储器中的代码及选项字节;
读取所述从机存储器中的数据,具体包括:系统存储器数据、主闪存储器数据、静态存储器数据和选项字节;
擦除所述从机快闪存储器中的数据,擦除方式包括:全擦除、扇区擦除、页面擦除;
编写所述从机存储器中的数据,具体包括:快闪存储器数据、静态存储器数据和选项字节;
跳转运行所述从机中快闪存储器或静态存储器中的应用程序代码。
6.使用嵌入式串口编程芯片数据的系统,其特征在于,包括:
信息收发模块,用于接收由主机发送的请求连接信息;
串口识别模块,用于根据识别到的所述请求连接信息的数据起始位,确定接收所述请求连接信息的目标串口;
波特率检测模块,用于启动所述目标串口的波特率自动检测功能,并判断检测到的所述目标串口的波特率是否在有效范围之内;
所述信息收发模块,还用于若所述目标串口的波特率在所述有效范围之内,则向所述主机发送同意连接信息,与所述主机完成连接;以便所述主机按照规定协议编程所述从机存储器中的数据。
7.如权利要求6所述的使用嵌入式串口编程芯片数据的系统,其特征在于,所述串口识别模块,还用于:
监测所述从机的各芯片引脚是否接收到指定的变化电平;当监测到所述从机的芯片引脚中有接收到指定的变化电平时,将接收到变化电平的芯片引脚对应的嵌入式串口作为目标串口。
8.如权利要求7所述的使用嵌入式串口编程芯片数据的系统,其特征在于,所述串口识别模块,具体用于:
当所述从机芯片的第一引脚上检测到电平变化后,将第一组串口作为目标串口;
当所述从机芯片的第二引脚上检测到电平变化后,将第二组串口作为目标串口;
当所述从机芯片的第三引脚上检测到电平变化后,将第三组串口作为目标串口。
9.如权利要求6所述的使用嵌入式串口编程芯片数据的系统,其特征在于,所述波特率检测模块,包括:
检测子模块,用于启动所述目标串口的波特率寄存器,获取所述波特率寄存器的变化值;
推算子模块,用于根据所述波特率寄存器的变化值计算出所述目标串口的串口波特率;
判断子模块,用于判断所述串口波特率是否在所述有效范围之内;
复位子模块,用于若所述串口波特率不在所述有效范围之内,则执行系统复位,与所述主机连接失败。
10.一种芯片设备,其特征在于,包括上述权利要求6-9任一项中所述的一种使用嵌入式串口编程芯片数据的系统。
CN202310445813.0A 2023-04-24 2023-04-24 使用嵌入式串口编程芯片数据的方法、系统和芯片设备 Pending CN116483768A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310445813.0A CN116483768A (zh) 2023-04-24 2023-04-24 使用嵌入式串口编程芯片数据的方法、系统和芯片设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310445813.0A CN116483768A (zh) 2023-04-24 2023-04-24 使用嵌入式串口编程芯片数据的方法、系统和芯片设备

Publications (1)

Publication Number Publication Date
CN116483768A true CN116483768A (zh) 2023-07-25

Family

ID=87211420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310445813.0A Pending CN116483768A (zh) 2023-04-24 2023-04-24 使用嵌入式串口编程芯片数据的方法、系统和芯片设备

Country Status (1)

Country Link
CN (1) CN116483768A (zh)

Similar Documents

Publication Publication Date Title
EP2474916A1 (en) Device identifier selection
WO2011012919A1 (en) Device identifier selection
CN110046104B (zh) 记忆卡控制器、记忆卡、方法以及电子装置
CN104021060A (zh) Bmc串口调试系统及方法
CN115033444B (zh) 基于8051core在线调试电路控制装置
CN104021101A (zh) 基于lpc1768平台的usb接口系统及实现方法
CN103544994A (zh) 快闪存储器控制器、快闪存储器侦错方法
CN101739322B (zh) 嵌入式系统的测试装置及方法
CN109684152B (zh) 一种risc-v处理器指令下载方法及其装置
CN101907683B (zh) 数字基带芯片中i2c模块的自动测试方法
US10817405B2 (en) Storage device and debugging system thereof
CN112346665B (zh) 基于pcie的通信方法、装置、设备、系统及存储介质
CN113360161B (zh) 资源升级方法及相关产品
CN116483768A (zh) 使用嵌入式串口编程芯片数据的方法、系统和芯片设备
KR20190060424A (ko) 에러 테스트를 위한 메모리 시스템
CN100399752C (zh) 数字通信信号处理单板的测试系统及其方法
US20130151900A1 (en) Debug system and method
CN101206613A (zh) 高速基本输入/输出系统调试卡
CN113160875B (zh) 芯片测试系统和测试方法
CN117555607A (zh) 嵌入式多媒体卡的开卡方法及相关设备
CN111596199B (zh) 一种测试芯片、集成电路测试方法及系统和检测设备
KR20110089129A (ko) 통신 인터페이스용 비트 반전을 위한 시스템, 장치 및 방법
CN111371799B (zh) Mctp控制器收发数据的控制方法、装置及设备
CN114513436A (zh) Sdio设备传输速率的检测方法、系统及存储介质
US12015508B2 (en) System and operating method thereof

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