0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AM243x-LP快速上手—Booting SBL和板载OSPI Flash烧录

德州仪器 来源:德州仪器 作者:德州仪器 2022-02-15 13:36 次阅读

1. 摘要:

AM243x 是TI Sitara产品线最新推出的高性能MCU+产品,是一种性能强劲的多核异构MCU,拥有4颗800MHz 主频的Cortex R5F核心和1颗400MHz 主频的Cortex M4F,以及专门针对多协议工业通信总线的2个PRU_ICSSG(2× Gigabit Industrial Communication Subsystems)模块,可以实现Profinet IRT,Profinet RT,EtherNet/IP,EtherCAT等通信方式。

在这类多核异构MCU / CPU产品开发中,由于芯片电源轨上的复杂性以及外设的丰富程度,不可避免的会接触到系统复杂的boot环节,以及多核调试带来的挑战,本文以AM243x-LP评估板为例,对AM243x的booting相关内容进行了初步的介绍,并完整演示了RBL-SBL-APP的整个启动过程以及程序烧录的方法。

Abstract

This article takes the AM243x multi-core chip architecture as the entry point, briefly introduces the AM243x startup process, including Power up sequence, Boot Mode selection, ROM boot process, SBL process, SBL compiling, and SYSFW introduction. Taking the ADC demo as an example, combined with the AM243x-LP evaluation board, a complete demonstration of the RBL -> SBL -> APP startup process, briefly introduces the environment setup and operation process of programming external OSPI Flash in UART mode, which is convenient for users to quickly start the application development on AM243x chips.

2.AM243x 上电后的Booting环节:

下图是AM243x完整的boot流程:

ROWER ON -> ROM Bootloader(RBL) -> Secondary Bootloader(SBL) -> Application Binary。 上电后,芯片进行内部逻辑的初始化,之后先执行ROM中的BOOT代码,再执行用户自定义的二级BOOT代码,最后执行应用程序.

pYYBAGILEB6AWfW6AAAef6cmfU4697.png

Figure 1 BOOT 启动流程

2.1 上电时序和启动方式介绍

AM243x 芯片拥有多个电源域,为不同的内部逻辑和外设供电,,下图是AM243x的上电时序图,可以在datasheet找到更详细的介绍。

poYBAGILECCARPybAAAaveAtY3E466.png

Figure 2 Power Sequence

在满足供电时序的情况下,MCU_PORz信号最终释放了对内核复位的控制, MCU_PORz的上升沿会锁存SYS_BOOTMODE[0:15]这些管脚的上下拉状态,并由此确定芯片的启动模式和启动介质,然后由ROM Bootloader来读取启动信息

AM243x 有两种主要的启动方式:Host boot modes 和 Memory boot modes。

  • Host boot modes:MCU从不同的外设进行启动,比如从UART、Ethernet、USB接口启动;
  • Memory boot modes:MCU从不同的外部存储介质,比如QSPI Flash、I2C EEPROM、SD卡、U盘等存储器启动;

注意:AM243x 有Primary Boot和Backup Boot功能,这意味着AM243x在Primary Boot失败的情况下可以用 Backup Boot 来启动,这个可以由 BOOTMODE 管脚进行设置。

关于 BOOTMODE 管脚配置,我们可以看到是由16根信号线组成,其中高两位为Reserved。其16bit对应的是BOOTMODE 00-15这16根信号线,原理图中对应的管脚为GPMC0_AD0 – 15。

poYBAGILECGAIcUcAAAgjBOjdKk210.png

Figure 3 BOOTMODE Pin Mapping

PLL Config 针对不同的外部晶振频率进行配置。

pYYBAGILECOATOLUAAAh7b5C4eQ842.png

Figure 4 PLL Reference Clock Selection

Primary Boot 模式如下:

poYBAGILECSAO-eGAAAmwRBz6Pk840.png

pYYBAGILECWAIg1TAAAwJN2SSHs521.png

Figure 5 Primary Boot Mode Selection

Backup Boot 模式如下:(注意Backup模式下可启动的方式较少)

pYYBAGILECeAUsCwAAAooG3eGjc721.png

Figure 6 Backup Mode Selection

注意:由于ROM Code对不同的启动接口或介质使用的管脚是固定的,在设计的过程中需要注意选择对应的管脚,详细的管脚信息可以在Technical Reference Manual中查看。

2.2 ROM启动过程介绍

AM243x的ROM Code分为两部分,分别是DMSC ROM code和Public ROM code,这里DMSC的全称为Device Management Security Controller,内部是一个主频250MHz 的Cortex M3协处理器, DMSC模块是芯片启动的主控制器.

  • DMSC ROM code:DMSC ROM 的代码会涉及到以下几个部分:
  1. 设备管理;
  2. 在 BOOT_CFG中配置boot vectors,控制 R5内核的reset释放, 需特别指出,启动过程中DMSC是R5内核的控制者;
  3. 通过主DMSS(Data Movement Subsystem)和Secure Proxy进行IPC的配置;
  4. 对R5内核和SA2UL(Security Accelerator)的PLL进行配置;
  5. X509认证的解析;
  6. SHA512算法对image integrity check的SA2UL配置;

Public ROM code:下图是Public ROM code的框架。

pYYBAGILECiAS6hEAABCCGlVbYo916.png

Figure 7 Public ROM Code Architecture

Main Module是整个Public ROM code的顶层代码循环,它可以调用X509密码认证模块、Log Trace模块、System模块以及外设驱动的相关功能代码,在这里会重复执行直到MCU接收到完整的boot image,也可以被 DMSC置于sleep模式;

芯片上电后一级启动过程可以分为三部分:

  1. Hardware 部分:这里主要指电源的上电过程,以及芯片内部逻辑的初始化;
  2. DMSC部分:DMSC ROM Code 会首先配置启动过程中看门狗WDT的溢出时间为180秒,接下来配置MCU PLL,根据不同Boot Mode进行相应的Firewall配置,MCU的Secure Proxy/Ring Accelerator,然后DMSC会给MCU发送Boot Mode Info,最终DMSC释放R5内核的Reset信号,R5内核开始工作;
  3. R5 内核部分:R5 内核拿到DMSC发送的Boot Device Info(由BOOTMODE管脚的配置决定)后,通过对应的Boot模式开始启动,R5内核会请求DMSC对接收到的image代码进行image integrity check,如果成功则继续向下执行,如果Primary Boot的image无效,R5会切换到Backup Mode 进行boot image接收并再次调用DMSC进行image integrity check,这样重复执行调用,直到180秒看门狗溢出为止,这时MCU会被复位,重复上面的所有流程。

当image integrity check成功后,R5内核会对Main Domain的PLL进行配置,接下来DMSC会停止Clock并且Reset R5,R5在复位结束后开始执行Boot Image(这里在RAM里面的Boot Image不受R5复位的影响,处于保持状态),整个Boot流程完成,芯片开始二级BOOT流程。

poYBAGILECqAZ1n6AABMpUGNOkM377.png

Figure 8 Boot Process

2.3 二级SBL启动过程介绍

SBL的全称是Second boot loader,用于完成芯片的一些初始配置,拷贝DMSC的SYSFW到片内RAM以及加载多核应用代码。 下图是一个典型的SBL流程. DMSC模块会再次启动WDT看门狗并设定开门狗溢出时间为180秒。 R5 core 0执行SBL代码,先拷贝FLASH上的DMSC SYSFW到片内RAM, DMSC ROM代码对SYSFW image 进行完整性检查后,将SYSFW加载到DMSC模块,之后DMSC模块会跳出DMSC ROM代码,改为执行DMSC SYSFW代码。 SBL会继续加载和解析R5核的应用代码并根据Image信息设定启动地址,完成后会请求DMSC 释放其他R5核的复位信号,所有内核开始执行程序.

poYBAGILECuAPL8eAABBb2aoa10247.png

poYBAGILECyACO7GAAA-i0auHoA837.png

Figure 9 SBL Boot Process

3.AM243x-LP 使用介绍:

AM243x-LP评估板提供了丰富的功能和接口,XDS110调试器也被集成在电路板上面,方便用户的烧录调试,同时USB转UART功能也通过同一USB接口实现,用于串口log信息的打印。

pYYBAGILEC6AfvfOAAC0QM2J5dY421.png

Figure 10 System Architecture

评估板上的另一个USB Type C接口用来供电,整板的电流会在2A左右,这里建议先连接Micro USB,建立串口连接后,然后再连接USB Type C接口。USB Type C的连接线需要使用标准的全功能连接线,否则无法与评估板上的CC逻辑控制器TUSB320LAIRWBR进行正常通信,造成输出电流配置不正常,无法正确对评估板供电。

poYBAGILEDCAc_bVAAEFF2_2rCs483.png

Figure 11 AM243x-LP Board

正常连接两根USB线之后,板子上会有4个LED灯点亮,分别是LD6、LD7、LD8和LD11四个绿色LED灯。LD9红色灯会在USB Type C插入的瞬间亮一次,之后熄灭,如果常亮,则代表供电有问题。

pYYBAGILEDGABcXNAAIvOaKmdU0469.png

pYYBAGILEDOAQSAVAAIWW7XLFvE660.png

Figure 12 AM243x-LP Board LED Status

在Micro USB线连接后,Windows系统会进行XDS110的驱动安装(CCS安装时会自带驱动),安装完成后,会在设备管理器里面出现两个对应设备,如下图。

pYYBAGILEDSAXICJAAA_uY05nPA676.png

Figure 13 AM243x-LP Board USB Port

User UART对应的是用户可用的USB转串口打印log的端口,在AM243x-LP评估板中对应的是AM243x的MAIN_UART0接口。

下图是AM243x-LP评估板上的四个按键,其功能分别如下:

poYBAGILEDaAE_KsAAII8XqLjBw503.png

pYYBAGILEDeAcbB3AAAl7KrD1a4661.png

Figure 14 AM243x-LP Board Push Buttons

在理解这几种不同的Reset之前,我们先看看AM243x整个芯片构成的两个Domain,分别是MCU Domain和Main Domain,它们分别由下面的子模块构成。

pYYBAGILEDmARLBMAABgBxz4LxQ738.png

poYBAGILEDqAWowjAAAsXCaZqRs285.png

pYYBAGILEDyAXgE9AAAhPxhf72w281.png

Figure 15 AM243x Power Domain

我们可以看到在不同的Domain里面包含了不同的模块和外设,这个就决定了不同Domain对不同外设和模块的控制权。在Reset部分,可以通过不同的Reset源对不同的Domain进行独立控制,也可以通过配置改变其控制Domain的范围。

  • MCU_PORz:可以看作整个芯片(MCU+MAIN)的冷启动复位,可以进行动态Boot Mode更改而不用断电;
  • MCU_RESETz:MCU Domain的热复位;
  • SoC_RESET_REQz: Main Domain的热复位;

在AM243x-LP评估板上可以由8位拨码开关来更改Boot配置,其中第8位没有使用,是悬空状态,下面的表格列出了这7位配置对应的Boot Mode情况。

pYYBAGILED2AWfy6AAAwWMuD0K0835.png

Figure 16 AM243x LP Boot Mode Selection Table

其中常用的三种模式如下图所示:

poYBAGILED-AV9NpAAIASrx_weo088.pngpoYBAGILEEGAFkjTAAH7D0Y12Sw284.pngpoYBAGILEEKAbjMhAAH2EtmfrCA280.png

Figure 17-1 AM243x LP Boot Mode Switch

关于 Backup Boot Mode,在AM243x-LP是默认配置为NONE模式(BOOTMODE13:10 = x 0 0 0),这里暂时不用关心。

pYYBAGILEESAJVzsAAA8YfsPih4136.png

Figure 17-2 AM243x LP Boot Mode Switch (Backup Mode Configuration)

可以在断电状态下更改拨码开关的配置,然后重新上电。或者在通电的情况下改变拨码开关,然后用SW1按钮实现MCU_PORz冷复位以使得新的Boot Mode生效。

4. SDK 例程中 SBL 的介绍:

如果要对 SDK 中的 SBL 程序在CCS中进行编译,需要额外安装OpenSSL,可以在下面的地址下载light版本,

https://slproweb.com/download/Win64OpenSSL_Light-3_0_0.exe

在安装的过程中,注意选择 The Windows system directory选项。

poYBAGILEEWAIn1VAAByiSE-2Ck609.png

Figure 18 OpenSSL Installation

安装完成后,需要在windows系统的Path变量中加入下面的路径。

C:\Program Files\OpenSSL-Win64\bin

完成后,即可导入C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\examples\drivers\boot 中的例程,并进行编译。这里我们导入的是 sbl_ospi 这个文件夹内的工程。

pYYBAGILEEaAIwaMAABPXMMB-VY316.png

Figure 19 SBL Boot Project

  • SBL NULL:这个SBL只做了MCU的初始化并且把内核至于WFI模式(Wait For Interrupt);
  • SBL OSPI:初始化MCU并且从OSPI Flash 的 0x80000地址读取并启动多核appimage代码;
  • SBL OSPI Multi-Partition:初始化MCU并且从OSPI Flash 不同的偏移地址读取各个内核的代码;
  • SBL UART:初始化MCU并且从UART通过Xmodem协议读取并启动多核appimage代码;
  • SBL UART Uniflash:配合py脚本的flash writer程序,用来烧录OSPI Flash;

4.1 SBL boot image 创建

SBL 与一般的应用程序类似,可以通过CCS来创建并编译,在从 .out文件到boot image的转化过程,其详细情况如下:

虽然SBL工程与应用程序类似,但SBL 的入口地址与用户应用程序的入口地址有所不同。在AM243x 的 ROM code 会把程序的入口地址同时配置给 both R5FSS0-0 和R5FSS0-1两个内核。 考虑到SBL只运行在R5SS0-0上,我们需要把R5FSS0-1置于WFI模式,只运行R5FSS0-0内核,这个操作可以通过增加link参数 -e_vectors_sbl来实现。

poYBAGILEEiAcJPIAAB1Gua3YYM331.png

Figure 20 AM243x Link Command

在进入main()函数之后,首先必须调用Bootloader_socLoadSysFw来加载 SYSFW 到 DMSC 的Cortex M3内核,进行 board config 操作。

备注:SYSFW默认以 .h 头文件的形式被编译链接到SBL,启动过程中会发送到DMSC内核的专有RAM区域,SYSFW的文件内容在 C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\source\drivers\sciclient\soc\am64x_am243x\ sysfw_signed.h 里面。

pYYBAGILEEmAT-91AACWoXsJZiE327.png

Figure 21 Bootloader_socLoadSysFw

在SBL里,vectors默认被链接到0x7000000,而且SBL中不能使用ATCM(A Tightly-Coupled Memory)和BTCM(B Tightly-Coupled Memory)的地址空间,SBL 只能使用 0x70000000到0x70080000这个地址范围的空间,包含code、data、stack之类。

在编译后,SBL的 .out 文件会通过GCC的objcopy转换成 .bin 文件,接下来会通过 Signing Scripts 签名生成可启动的 .tiimage 文件,在这里会使用一个默认的key来签名,即使是非安全启动MCU芯片也需要走这个流程。这个 Signing Script 会用到前面安装的 OpenSSL。

RBL在加载SBL的时候是需要SBL为被签名的格式,可以通过下面的命令来对SBL进行签名。

cd C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\tools\boot\signing

.\x509CertificateGen.ps1 -b {BOOTIMAGE_BIN_NAME} -o {BOOTIMAGE_NAME} -c R5 -l 0x70000000 -k rom_degenerateKey.pem -d DEBUG -j DBG_FULL_ENABLE -m SPLIT_MODE

这里我们用一个例程生成的bin文件来演示一下,首先拷贝CCS生成的bin文件到C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\tools\boot\signing,方便命令行下操作。

pYYBAGILEEuAfqJRAABTQXjcHUc056.png

Figure 22 Signing Files Folder

注意:这里要用到 Windows 10下面的Powershell命令行环境,在开始菜单输入Powershell并执行,即可进入界面,公司电脑有可能对Powershell的执行权限有限制,这个在执行的时候会提示。

.\x509CertificateGen.ps1 -b sbl_ospi_am243x-lp_r5fss0-0_nortos_ti-arm-clang.bin -o sbl_ospi_am243x-lp.tiimage -c R5 -l 0x70000000 -k rom_degenerateKey.pem -d DEBUG -j DBG_FULL_ENABLE -m SPLIT_MODE

至此,我们在这里可以看到最终生成的可以用来启动的SBL的 tiimage 文件。

pYYBAGILEEyAbW5XAAAxpUn27i4379.jpg

Figure 23 Powershell console command execution

poYBAGILEE6AObawAABmTft1tpY913.png

Figure 24 Signing result of tiimage

5. SBL 烧录并引导应用程序运行:

下面我们快速验证一下SBL配合用户应用程序进行boot并运行的情况。

5.1 安装Phython 脚本

板载外部QSPI Flash需要通过python脚本进行烧录,所需的Python 3 环境下载地址如下。

https://www.python.org/downloads/windows/

注意安装Python的时候需要选择把Python的路径加入到系统路径,安装完成后可以在CMD Console下验证是否安装成功。

pYYBAGILEE-AU60aAAB-oRi85BE312.png

Figure 25 Python Installation

poYBAGILEFGAXTz7AAA1ORBuve8041.png

Figure 26 Python Environment Check

接下来需要执行下面的命令安装与串口下载相关的组件,注意需要在管理员模式打开cmd窗口。

pip install --upgrade pip

pip install pyserial xmodem tqdm

pYYBAGILEFKAVEeXAAD3Nc4Z47o829.png

Figure 27 Python toolset installation

5.2 生成应用代码Image

打开 CCS后,导入SDK的ADC驱动例程,路径如下。

C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\examples\drivers\adc\adc_singleshot\am243x-lp\r5fss0-0_freertos

poYBAGILEFOAPxxdAABwwL0d7oU514.png

Figure 28 Import SDK ADC example into CCS

pYYBAGILEFWAGkhyAABxnccdcA8021.png

Figure 29 Confirm the example import

poYBAGILEFaAB5z1AACd8LgxPvg385.png

Figure 30 Build the example

编译完工程后,我们可以看到生成的相关文件,其中.appimage是应用程序要烧录到外部 SPI Flash的文件。

5.3 使用UART 启动模式烧录OSPI SBL文件和应用代码Image

接下来的烧录操作需要在windows的command console里操作,为了方便这个流程,我们可以利用bat文件来直接执行,提高效率。

在ccs的workspace目录中adc_singleshot_am243x-lp_r5fss0-0_freertos_ti-arm-clang工程目录下,我们新建一个文件夹,暂且命名为AM243xProgFlash,如下图:

pYYBAGILEFiAa2SMAAA_M6pM4q4349.png

Figure 31 UART programing script files

在这个文件夹里面,@Prog-Boot+App.bat 是手工创建的,里面执行了简单的python命令,sbl_ospi.release.tiimage、sbl_uart_uniflash.release.tiimag是从 C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\tools\boot\sbl_prebuilt\am243x-lp\ 这个路径拷贝过来的。

其中sbl_ospi.release.tiimage 也可以使用上面我们编译成功的 sbl_ospi 工程的 tiimage 文件。uart_uniflash.py 从C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\tools\boot 拷贝过来。ospi_sbl+app.cfg 是根据 C:\ti\mcu_plus_sdk_am243x_0x_xx_xx_xx\tools\boot\sbl_prebuilt\am243x-lp\default_sbl_ospi.cfg 文件修改的。

下面是 @Prog-Boot+App.bat和 ospi_sbl+app.cfg 两个文件的内容。

@Prog-Boot+App.bat 文件:这里需要注意 COM17 根据自己的情况来修改PC端烧录端口。

@echo off

echo+

echo+

echo **********************************************************************

echo Start to Program "QSPI Bootloader" and "App Image" to QSPI Flash......

echo **********************************************************************

echo+

echo+

python uart_uniflash.py -p COM17 --cfg= ospi_sbl+app.cfg

echo+

echo+

echo ******** Finished!!! ********

echo+

echo+

pause

ospi_sbl+app.cfg 文件:这里注意黄色标识部分的路径和文件名。

#-----------------------------------------------------------------------------#

# #

# DEFAULT CONFIGURATION FILE TO BE USED WITH THE FLASHWRITER SCRIPT #

# #

#-----------------------------------------------------------------------------#

#

# By default this config file,

# - points to pre-built flash writer, bootloader for this LP

# - The application image points to relative path of the ipc echo application image for this LP

# - Make sure this application is built before running this script

# - You can customized this config file to point to your own bootloader and/or application images

# - You can use --operation=flashverify if you just want to verify the flash contents and not flash the file.

#

# First point to sbl_uart_uniflash binary, which function's as a server to flash one or more files

--flash-writer=sbl_uart_uniflash.release.tiimage

# Now send one or more files to flash or flashverify as needed. The order of sending files does not matter

# Program the OSPI PHY tuning attack vector

--operation=flash-phy-tuning-data

# When sending bootloader make sure to flash at offset 0x0. ROM expects bootloader at offset 0x0

--file=sbl_ospi.release.tiimage --operation=flash --flash-offset=0x0

# When sending application image, make sure to flash at offset 0x80000 (default) or to whatever offset your bootloader is configured for

--file=../Debug/adc_singleshot_am243x-lp_r5fss0-0_freertos_ti-arm-clang.appimage --operation=flash --flash-offset=0x80000

# send the XIP image for this application, no need to specify flash offset since flash offset is specified within the image itself

#--file=../Debug/adc_singleshot_am243x-lp_r5fss0-0_freertos_ti-arm-clang.appimage_xip --operation=flash-xip

准备好这些文件后,把AM243x-LP配置为UART boot后上电,双击执行@Prog-Boot+App.bat即可烧录。

poYBAGILEFmAf4uhAACtWPJT7oY201.png

Figure 32 UART Programing Result

5.4 使用UART 启动模式烧录QPSI SBL文件和应用代码Image

烧录完成后,切换AM243x-LP为 QSPI BOOT 模式,用按键SW1 MCU_PORZ复位系统,可以看到串口输出的信息,这里可以看到OSPI Bootloader 的信息和 ADC demo 的信息输出,到此完成了 RBL-SBL-APP 的启动过程。

poYBAGILEFuASkWPAACFK1x1xtM703.png

Figure 33 ADC Program Running Result

6. 总 结:

由于此类多核异构MCU的构架与通用MCU的构架差异较大,在启动和调试带来的挑战也是显而易见的。本文以AM243x的芯片构架为切入点,简要的介绍了AM243x的启动流程以及涉及到的SBL相关内容,以ADC demo为例,结合AM243x-LP评估板,完整演示了RBL-SBL-APP 的启动过程,简要介绍了 UART 模式烧录外部OSPI Flash的环境搭建和操作流程,方便用户快速进入AM243x 芯片的应用开发。

参考文档:

  1. AM243x SitaraMicrocontrollers datasheet (Rev. B)
  2. AM64x/AM243x Technical Reference Manual (Rev. B)
  3. AM243x MCU+ SDK 08.00.00 User Guide
  4. AM243x LP User's Guide
审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    447

    文章

    47788

    浏览量

    409112
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16016

    浏览量

    343587
  • 嵌入式处理
    +关注

    关注

    0

    文章

    341

    浏览量

    9882
收藏 人收藏

    评论

    相关推荐

    CW32量产烧录工具

    本节主要介绍CW32微控制器的烧录器CW-Writer,以及与之配合的软件CW-Programmer的使用方法。烧录器CW-Writer通过ISP协议,可实现对CW32微控制器FLASH的离线或在
    的头像 发表于 04-25 15:22 394次阅读
    CW32量产<b class='flag-5'>烧录</b>工具

    Ubuntu系统快速上手

    Ubuntu系统快速上手概述和操作说明
    的头像 发表于 04-12 16:25 184次阅读
    Ubuntu系统<b class='flag-5'>快速</b><b class='flag-5'>上手</b>

    rk3288擦除flash重新烧录能够点亮lvds的固件蓝屏。

    求助大佬们,我有一个rk3288的开发板,连接1024x768p的lvds显示屏,使用瑞芯微开发工具v2.62,固件能够正常烧录,但是当擦除flash后,重新烧录同一份固件,却发现lv
    发表于 03-31 19:10

    基于TI AM62x的SPI接口配置

    了空间上的优化和便捷。正因为它简单易用的特点,现在越来越多的芯片选择集成SPI通信协议。 作为TI Sitara™产品线新一代MPU产品,TI AM62x处理器特别配备了多达4路的SPI接口以及1路
    发表于 03-22 15:52

    CY8C5268AXI-LP047怎么烧录elf文件?

    赛普拉斯的芯片,怎么烧录后缀名为 .ELF 文件?要用什么烧录器?用什么样的烧录软件?芯片型号:CY8C5268AXI-LP047
    发表于 02-01 08:25

    在VisionFive2上按官方的文档烧录edk2到QSPI flash失败了的原因?

    按照官方给的VisionFive2的EDK2烧录文档把SPL和JH7110.fd烧到QSPI flash,SPL烧录成功,但是JH7110.fd烧录失败,日志如下: StarFive
    发表于 01-10 06:51

    TCM2-43X+PINTOPIN替代CH-BTM243A PDF资料

    TCM2-43X+PINTOPIN替代CH-BTM243A PDF资料
    发表于 12-12 10:15

    亮钻科技D-3568主板烧录教程

    本固件烧录教程,针对基于瑞芯微平台的主板,以亮钻科技的D-3568主板为例,烧录方式采用常用的USB OTG,整个教程仅3个步骤,紧跟步骤操作,轻松上手
    的头像 发表于 10-27 09:35 1322次阅读
    亮钻科技D-3568主板<b class='flag-5'>烧录</b>教程

    快速上手micro ros在RT-Thread上

    快速上手micro ros && RT-Thread(serial和udp方式)
    的头像 发表于 10-26 16:13 387次阅读
    <b class='flag-5'>快速</b><b class='flag-5'>上手</b>micro ros在RT-Thread上

    JTAG在FLASH烧录中的“江湖”

    首先,我们来看看JTAG烧录FLASH的层次结构
    的头像 发表于 10-19 11:35 829次阅读
    JTAG在<b class='flag-5'>FLASH</b><b class='flag-5'>烧录</b>中的“江湖”

    在keil里如何烧录data flash数据的?

    data flash当eeprom用时keil配置好data flash,编译的文件使用keil 在线下载能保存数据,但是使用烧录工具下载时掉电后数据不能保存 1、如何设置data flas
    发表于 06-13 07:48

    Flash基本操作——Flash基础(2)#多媒体技术

    FlaSh
    未来加油dz
    发布于 :2023年05月24日 10:44:22

    Flash基本操作——Flash基础(1)#多媒体技术

    FlaSh
    未来加油dz
    发布于 :2023年05月24日 10:43:53

    MPC5748G LCEVB为什么不能直接在Flash烧录运行程序?

    程序烧录Flash 中同时使用 Build Release 和 Debug Release。 但是,每当我在开机期间按下外部复位按钮或执行电源循环时,程序停止运行并且无法继续。 根据这个 URL 我
    发表于 05-24 08:47

    【野火 fireFlasher Mini 脱机烧录器】+与STLINKV3烧录对比

    )。 hex文件大小为266KB,其中主要内容是实现RGB_LCD的刷屏操作。 烧录流程选择为先全部擦除FLASH,然后下载。目标芯片型号为STM32H750XBH6,板载128KB的FL
    发表于 05-22 00:43