掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明实施例涉及在线应用编程技术,尤其涉及一种基于蓝牙模块的SoC在线应用编程系统。

背景技术

传统的SoC芯片在应用程序部署和更新过程中存在着一些繁琐的流程,需要通过专门的编程接口和软件工具进行开发和调试。同时,由于SoC芯片通常嵌入在设备中,导致在应用程序更新时需要对整个设备进行重新编程或升级。这些流程不仅增加了开发者的工作量,还限制了SoC芯片在线应用的灵活性和可扩展性。因此,为了提高芯片应用编程的便利性和灵活性,需要一种新的技术来实现在线应用编程。

目前,研究SoC在线编程的专利有很多,比如专利号为CN116302012A的《一种交替式IAP升级系统及方法》、专利号为CN110673872B的《一种改进型的IAP升级代码的方法、系统及待升级设备》、专利号为CN113311931B的《一种方便IAP的双复位向量8位MCU架构及其方法》、专利号为CN111832011A的《一种基于IAP的固件安全升级方法及装置》等,又如论文《基于IAP的嵌入式系统在线编程设计》、《基于WiFi的STM32固件远程升级系统》等。这些论文和专利都提出了关于在线应用编程的方法,但都没有真正实现简化编程、提高开发效率的目的。

发明内容

本发明提供一种基于蓝牙模块的SoC在线应用编程系统,以简化编程流程、降低开发难度,实现SoC芯片在线应用的快速部署和动态更新。

本发明实施例提供了一种基于蓝牙模块的SoC在线应用编程系统,包括:

SoC芯片、集成在所述SoC芯片上的蓝牙模块;

所述蓝牙模块和SoC芯片相连,通过蓝牙模块实现SoC在线应用编程的传输。

可选的,所述SoC芯片的管脚连接所述蓝牙模块,用于使能/失能蓝牙模块。

可选的,所述蓝牙模块和SoC芯片之间采用蓝牙串口通信助手通信协议进行通信连接。

可选的,还包括与所述SoC芯片相连的时钟模块、复位模块,以及与SoC芯片和所述蓝牙模块相连的电源。

可选的,还包括与所述蓝牙模块连接的在线编程平台,以供用户通过所述在线编辑平台进行SoC在线应用编程操作。

可选的,所述在线编程平台上还设置有编程接口和工具,以供用户通过编程接口和工具对SoC芯片进行应用程序的编写、调试和上传。

本发明所研究的是一种基于蓝牙模块实现的SoC在线应用编程技术,主要优点有:

便利性:蓝牙技术是一种无线通信技术,可以在设备之间进行短距离的数据传输。相比于其他传输方式(如USB、Wi-Fi),蓝牙模块实现在线应用编程下载更加便捷,无需复杂的连接设置和网络环境要求,用户只需打开蓝牙功能即可进行数据传输。这种便利性使得蓝牙模块成为一种非常方便的在线应用编程下载解决方案。实现下载

兼容性:蓝牙技术是一种广泛应用于各种设备的通信技术,几乎所有移动设备、电脑和智能家居设备都支持蓝牙功能。因此,使用蓝牙模块实现在线应用编程下载具有很好的兼容性,不会受限于特定的设备或操作系统。用户只要设备支持蓝牙功能,就能够使用蓝牙模块进行在线应用编程下载。

安全性:蓝牙技术支持通过配对来确保数据传输的安全性。在进行蓝牙设备配对时,需要输入配对码或确认配对请求,确保只有经过授权的设备才能进行数据传输。这种安全机制可以有效防止未经授权的设备对数据进行访问或攻击,提高了在线应用编程下载的安全性。

实时性:蓝牙模块实现在线应用编程下载可以实现实时的数据传输。蓝牙技术具有较低的延迟和高速传输的特点,可以快速地将数据从一个设备传输到另一个设备。这种实时性可以确保用户在执行在线应用编程下载操作时获取最新的数据,并且减少了传输过程中的等待时间。

所以,蓝牙模块实现在线应用编程下载具有便利性、兼容性、安全性和实时性等优势,为用户提供了一种简单、可靠和高效的在线应用编程下载解决方案。

附图说明

图1本发明实施例中的一种基于蓝牙模块的SoC在线应用编程系统框图;

图2是本发明实施例中的BlueTooth SPP通信协议框图;

图3是本发明实施例中的在线编程软件逻辑示意图;

图4是本发明实施例中的在线编程平台示意图。

实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例

参见图1,本发明提供一种基于蓝牙模块的SoC在线应用编程系统,包括:SoC芯片、集成在所述SoC芯片上的蓝牙模块、与所述SoC芯片相连的时钟模块、复位模块,以及与SoC芯片和所述蓝牙模块相连的电源。

其中,所述蓝牙模块和SoC芯片相连,通过蓝牙模块实现SoC在线应用编程的传输。

具体的,通过在芯片外围电路上集成了一块蓝牙模块,该模块能够支持蓝牙通信协议,并与设备进行蓝牙连接。这样,用户可以通过蓝牙信号与芯片进行通信和控制。

图1中,SoC的管脚连接蓝牙模块,用于使能/失能蓝牙模块;电源、时钟以及复位模块,用于SoC和蓝牙模块工作的基本配置;线应用编程平台可以设置在PC端,用于对SoC的程序进行升级/维护。

本实施例中,为了确保芯片与设备之间的数据传输和控制的准确性和可靠性,我们采用BlueTooth SPP(蓝牙串口通信助手协议)通信协议,具体参见图2。该协议规定了芯片与设备之间的数据格式和通信规则,使双方能够正确地进行数据传输和控制。

本实施例中提供的BlueTooth SPP通信协议具备以下功能:

(1)建立蓝牙设备之间的串口连接:Bluetooth SPP协议允许蓝牙设备之间建立串口连接,使得设备可以像使用串口一样进行数据交换和控制。

(2)实现数据传输和控制:通过Bluetooth SPP协议,蓝牙设备可以在不需要物理串口线的情况下进行数据传输和控制,从而更加方便和灵活。

(3)支持多种串口通信方式:Bluetooth SPP协议支持多种串口通信方式,包括基本的8位数据、无奇偶校验和1个停止位的通信方式,以及自定义的通信方式。

(4)提供可靠的数据传输机制:Bluetooth SPP协议提供了可靠的数据传输机制,包括数据重传和校验等功能,可以确保数据传输的可靠性和正确性。

进一步参见图3,图3为本发明中的软件设计逻辑。在图示流程中,这里以STM32F407为例,SoC复位后,从 0X08000004 地址取出复位中断向量的地址,并跳转到复位中断服务程序,在运行完复位中断服务程序之后跳转到IAP 的main 函数,如上图标号①所示;在执行完IAP以后(即将新的APP 代码写入STM32F407的FLASH中。新程序的复位中断向量起始地址为 0X08000004+N+M),跳转至新写入程序的复位向量表,取出新程序的复位中断向量的地址,并跳转执行新程序的复位中断服务程序,随后跳转至新程序的main 函数,如图标号②和③所示,同样main 函数为一个死循环,并且注意到此时STM32F407的FLASH,在不同位置上,共有两个中断向量表。

在 main 函数执行过程中,如果 CPU 得到一个中断请求,PC 指针仍强制跳转到地址0X08000004 中断向量表处,而不是新程序的中断向量表,如上图标号④所示;程序再根据已经设置的中断向量表偏移量,跳转到对应中断源新的中断服务程序中,如上图标号⑤所示;在执行完中断服务程序后,程序返回main 函数继续运行,如上图标号⑥所示。

进一步的,为了方便用户进行芯片应用程序的编写、调试和上传,本发明的系统还包括与蓝牙模块相连的在线编辑模块,该平台提供了简洁而强大的编程接口和工具,用户可以通过平台直接对芯片进行在线编程操作。平台还提供了调试功能,如断点调试、变量监控等,方便用户进行调试和优化。

此外,为了进一步提升用户的开发体验,本实施例还提供提供了一套完备的编程接口和工具。这些接口和工具可以在在线编程平台上使用,用户可以通过这些接口和工具对芯片进行应用程序的编写、调试和上传。

具体参见图4,本发明开发的一款在线编程平台具体的操作功能包括以下内容:

1)打开PC端蓝牙按钮,用于开启PC端的蓝牙功能,蓝牙开启后,会在信息记录区显示“蓝牙开启成功”字样。

2)关闭PC端蓝牙按钮,用于关闭PC端的蓝牙功能,蓝牙关闭后,会在信息记录区显示“蓝牙关闭成功”字样。

3)蓝牙连接按钮,用于在打开PC端蓝牙功能后,使能PC端的蓝牙和硬件的蓝牙进行连接,完成连接后,会在信息记录区显示“蓝牙连接成功”字样。

4)蓝牙断开按钮,用于断开 PC端蓝牙和硬件蓝牙的连接,完成断开后,会在信息记录区显示“蓝牙断开成功”字样。

5)编程数据显示区,可将用于写入SoC的hex或者bin文件,直接拖拽至编程数据显示区。

6)开始写入按钮,当在编程数据显示区完成数据加载后,点击开始写入按钮,会通过PC端的蓝牙功能将程序数据传递给硬件,成功写入后,会在信息记录区显示“写入成功”字样;否则,会在信息记录区显示“写入失败”字样。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

相关技术
  • 一种嵌入式数据安全系统用SOC芯片的在线调试及上位机通讯模块
  • 一种嵌入式数据安全系统用SOC芯片的在线调试及上位机通讯模块
技术分类

06120116458804