AC52 系列power_up工程增加UBOOT阶段检测IO口状态使用说明文档
📎 原始文档:https://www.kdocs.cn/l/cjjaTC1IugIV AC52系列power_up工程增加UBOOT阶段检测IO口状态使用说明文档
目 录
TOC \o "1-3" \h \u HYPERLINK \l _Toc3672 一、概述 PAGEREF _Toc3672 2
HYPERLINK \l _Toc25018 二、power_up_project工程的配置步骤 PAGEREF _Toc25018 2
HYPERLINK \l _Toc32733 三、主工程的配置步骤 PAGEREF _Toc32733 4
一、概述
本文档基于杰理AC52系列公版SDK,提供power_up_project工程sdk,用户可在power_up_project工程代码中添加读取特定IO口开机的最早电平状态,并通过rtc_ram_write接口保存在rtc中,等代码执行到应用层后,再通过rtc_ram_read接口读取到rtc ram在power_up阶段保存的IO口上电的状态。此功能主要为了解决用户在系统上电时能够最早获取到IO口的电平状态,供应用层读到保存的IO口状态后做其它的应用业务逻辑使用,下文是详细的使用与配置步骤。
二、power_up_project工程的配置步骤
如下是关于power_up_projec工程的详细配置步骤与使用:
- .获取到power_up_project工程源码,源码见如下附件1所示: EMBED Package
附件1 power_up_project工程 - .将power_up_project工程sdk放置在主工程的如下目录路径中,路径如下图2-1所示。编译此工程将生成power_up文件,此文件会链接到uboot的最前段。

图2-1 power_up_project工程位置
- .打开power_up_project工程sdk,在u32 entry(u32 bss_end, u32 memory_size)函数里面添加获取IO状态电平的逻辑代码,将获取结果的变量表示值通过rtc_ram_write接口保存在rtc ram中,后续代码执行到主工程的SDK代码流程后,可通过rtc_ram_read接口读取到在power_up阶段保存的io口电平状态变量值,如下如2-2所示:

图2-2 保存IO状态值到rtc_ram
三、主工程的配置步骤
如下是关于主工程的详细配置步骤与使用:
(1).将sdk_read_flag.c应用代码添加到主工程SDK里面(如:AC521X_release_sdk_V1.1.4版本sdk),sdk_read_flag.c如下附件2所示。在应用层任意地方调用u8 read_ram_keyflag(void)函数,该函数会去读取power_up_project工程里面保存在rtc ram里面的IO口电平状态结果。如下图3-1所示:
EMBED Package
附件2 添加到主工程的文件

图3-1 应用层读保存的rtc_ram
(2).在主工程sdk路径下\cpu\AC521x\tools,修改下载处理脚本文件:#下载代码.bat的内容,如下图3-2所示:

图3-2 \#下载代码.bat修改
P处理内容如下:
apu_make.exe -addr 0x1000000 -infile sdram.bin -ofile sdram.apu -compress
isd_download.exe -cfg isd_tools.cfg -bootfix 0xf02000 uboot 0xf0de00 power_up -input uboot.boot ver.bin sdram.apu -resource res audlogo 32-disk norflash -div 2 -dev dv15 -boot 0xf02000 -aline 4096 -reboot
(3).将power_up_project工程编译生成的power_up文件复制到主工程\cpu\AC521x\tools路径下,并在tools文件里面删除默认power_up.bin文件,否则下载烧录时power_up将无法正常下载烧录进去。
(4).在主工程SDK路径下\cpu\AC521x\tools,双击download.bat,即可将power_up_project工程编译生成的power_up文件和主工程代码生成的文件一并烧录到flash里面;在主工程代码里面调用u8 read_ram_keyflag(void)函数,即可读到uboot启动阶段调用power_up文件返回的检测IO状态结果。如下图3-3所示:
图3-3 调用read_ram_keyflag读取保存io状态值
Tips说明:关于金山文档插入的附件获取步骤说明如下:
HYPERLINK "kw:filelink?appid=APP6D7DFC94&_type=file&extraAttrs=dW5kZWZpbmVk&fType=otl&fid=286302897834&fname=金山文档插入的附件获取步骤说明.otl&shareLink=https:/kdocs.cn/l/cq8dpKXi7WO5&_from=docsSelector" 📄金山文档插入的附件获取步骤说明
杰理科技 2024.05.11