前言3 1开发环境搭建 2CCS工程编译与加载 3FreeRTOS与Baremetal案例评估板简介 创龙科技TL62xEVM是一款基于TISitara系列AM62x单双四核ARMCortexA53单核ARMCortexM4F异构多核处理器设计的高性能低功耗工业评估板,由核心板和评估底板组成。处理器ARMCortexA53(64bit)主处理单元主频高达1。4GHz,ARMCortexM4F实时处理单元主频高达400MHz,采用16nm最新工艺,具有可与FPGA高速通信的GPMC并口,同时支持双屏异显、3D图形加速器。核心板经过专业的PCBLayout和高低温测试验证,稳定可靠,可满足各种工业应用环境。 评估板接口资源丰富,引出3xEthernet(两路支持TSN)、3xCANFD、9xUART、多路DIDO、GPMC、USB、MIPI、LVDSLCD、TFTLCD、HDMI等接口,板载WIFI模块,支持4G模块,可选配外壳直接应用于工业现场,方便用户快速进行产品方案评估与技术预研。 评估板正面图前言 本文主要介绍基于AM64x的FreeRTOS、Baremetal(裸机)案例使用说明。本文同时提供了CortexA53、CortexM4F核心对应的CCS工程。 适用开发环境: Windows开发环境:Windows764bit、Windows1064bit 虚拟机:VMware15。5。5 Linux开发环境:Ubuntu18。04。464bit LinuxProcessorSDK:tiprocessorsdklinuxrtam64xxevm08。01。00。39 UBoot:UBoot2021。01 CCS版本:CCS11。2。0 MCUSDK:mcuplussdkam64x08030018 SysConfig:sysconfig1。12。12446 GCCAARCH64Compiler:gccarm9。22019。12mingww64i686aarch64noneelf FreeRTOS案例位于4软件资料DemoRTOSdemos目录下,Baremetal案例位于4软件资料DemoBaremetaldemos目录下。案例project目录分别存放CortexA53、CortexM4F核心对应的CCS工程源码,bin目录分别存放CortexA53、CortexM4F核心对应的程序可执行文件。 表1 RTOSdemos ledflash uartecho Baremetaldemos ledflash uartecho 本文档默认使用TLXDS200仿真器进行程序加载,如要求更高的加载、固化、调试速度,或具有网络远程调试、Trace等功能,推荐使用创龙科技的TLXDS560V2仿真器。开发环境搭建 本章节主要介绍FreeRTOS、Baremetal(裸机)案例的开发环境搭建。CCS环境安装安装CCS11。2。0工具 请将产品资料4软件资料ToolsWindowsCCS11。2。0。00007win64。zip压缩包解压至Windows非中文路径目录下,并双击解压目录中的 进行安装。 在弹出的CCS安装界面中,勾选 选项,点击Next。 图1 在弹出界面中选择安装目录,可根据实际情况修改。点击Next,进入安装环境检测界面。 图2 图3 备注:如出现如下界面,则表示环境检查未通过。请尝试关闭Windows防火墙,再重新安装。 图4 进入如下界面中,选择需添加的组件。勾选SitaraAM3x,AM4x,AM5xandAM6xMPUs和SitaraAM2xMCUs选项,点击Next。 图5 在后续界面中,请继续点击Next选项,直至安装完成。 图6 图7 安装MCUSDK组件 请将产品资料4软件资料ToolsWindowsmcuplussdkam64x08030018all。zipMCUSDK组件压缩包解压至CCS安装目录。 图8 双击打开CCS11。2。0,点击WindowPreferences。 图9 打开Products选项,确保Productdiscoverypath选项框已存在MCUSDK的安装目录。如该安装目录不存在,请点击Add。。。添加,然后点击Refresh,即可在Discoveredproducts选项框显示。 图10 安装SysConfig工具 SysConfig(SystemConfiguration)是一个综合的图形化配置工具集合,用于配置引脚、外设、子系统和其他组件。该工具的输出文件包括C头文件和代码文件,可用于配置CCS工程。 双击4软件资料ToolsWindowssysconfig1。12。12446setup。exe,将SysConfig工具安装至CCS安装目录下。 图11 双击打开CCS11。2。0,点击菜单栏WindowPreferences,打开Products选项,点击install。。。添加sysconfig1。12。1工具所在路径,然后点击Refresh,即可在Discoveredproducts选项框显示,最后点击ApplyandClose完成。 图12 图13 安装GCCAARCH64Compiler 将产品资料4软件资料ToolsWindowsgccarm9。22019。12mingww64i686aarch64noneelf。tar压缩包解压至CCS安装目录,该交叉编译工具链用于CortexA53端程序编译。 备注:CortexM4F端工程使用CCS工具自带的交叉编译工具链。 图14 双击打开CCS11。2。0,点击WindowPreferences,导入GCCAARCH64Compiler。 图15 打开BuildCompilers选项,确保Compilers选项框已存在GCCAARCH64Compiler工具链的安装目录。如该安装目录不存在,请点击Add。。。添加,然后点击Refresh,即可在Discoveredtools选项框显示。 图16 安装GCCARM(R5F)Compiler 将产品资料4软件资料ToolsWindowsgccarmnoneeabi72017q4majorwin32。zip压缩包解压至CCS安装目录,该交叉编译工具链用于CortexR5F端程序编译。 图17 点击WindowPreferences,添加GCCARM(R5F)Compiler工具链。 图18 打开BuildCompilers选项,确保Compilers选项框已存在GCCARM(R5F)Compiler的安装目录。如该安装目录不存在,请点击Add。。。添加,然后点击Refresh,即可在Discoveredtools选项框显示。 图19安装Python 使用CCS编译CCS工程时,需使用Python工具进行命令解析。 请双击4软件资料ToolsWindowspython3。9。1amd64。exe安装包,勾选AddPython3。9toPATH选项,点击InstallNow进行安装。 图20 安装完成如下图所示。 图21 打开WindowsCMD命令行,执行如下命令,可查看Python是否已安装成功。 CMDpythonversion 图22 Python安装过程中,一般会附带安装pip包管理器,执行如下命令进行确认。 CMDpythonmpipversion 图23 执行如下命令,安装Python增量包,以支持部分程序固化功能。 CMDpythonmpipinstallpyserialxmodemtqdmproxy 图24CCS工程编译与加载 本章节主要演示FreeRTOS、Baremetal(裸机)案例CCS工程的导入和编译方法。工程导入 打开CCS11。2。0,点击ProjectImportCCSProjects。。。,导入FreeRTOS或Baremetal(裸机)案例CCS工程。 图25 选择CCS工程所在文件夹,选中CCS工程,选完后点击Finish。 图26环境配置 右键选中CCS工程,弹出菜单列表中选择Properties,打开工程属性界面。 图27 点击GeneralProducts,确认已包含SysConfig1。12。1及MCUSDKforAM64x组件。如未存在,请点击Add。。。选项添加。 图28 点击LinkedResourcesPathVariables,确认MCUSDK组件、交叉编译工具链等已全部配置为实际安装路径(如下图所示)。具体说明如下所示: CCSBASEROOT:CCS安装目录的ccsbase文件夹绝对路径 CCSINSTALLROOT:CCS安装目录绝对路径 CGTOOLROOT:交叉编译工具链安装目录绝对路径(请根据实际工程进行配置) COMTIMCUPLUSSDKAM64XINSTALLDIR:MCUSDK安装目录绝对路径 MCUPLUSSDKPATH:MCUSDK安装目录绝对路径 PROJECTLOC:CCS工程目录绝对路径 WORKSPACELOC:workspace目录绝对路径 图29工程编译 右键点击CCS工程,弹出菜单中选择RebuildProject进行编译。 图30 编译成功后,Console窗口将打印BuildFinished信息,并在Debug目录下生成程序可执行文件。 图31 图32CPU初始化 本小节主要讲述如何调用GEL脚本初始化CPU的方法。 在Windows右键我的电脑,选择属性(R)高级系统设置,打开如下系统属性界面。 图33 图34 图35 点击环境变量(N),打开如下界面。点击系统变量(S)的新建(W),添加MCUSDK安装路径,具体如下: 变量名(N):MCUPLUSSDKAM64XPATH 变量值(V):D:timcuplussdkam64x08030018(MCUSDK实际安装路径) 图36 打开CCS,点击菜单ViewTargetConfigurations打开仿真器配置界面。 图37 按照如下配置新建am64xxds200。ccxml仿真配置文件。Connection选择对应的仿真器型号,在BoardorDevice下拉框中选择AM64xGPEVM,点击Save保存。 图38 请将仿真器与评估板TIRevBJTAG接口进行连接,将评估板上电。在ccxml配置文件窗口中,点击TestConnection,测试仿真器与评估板之间是否已连接成功。连接成功将打印如下类似信息。 图39 图40 在TargetConfigrations配置窗口中,右击ccxml仿真配置文件,在弹出的界面中点击LaunchSelectedConfiguration进入Debug界面。 图41 点击ViewScriptingConsole选项,打开ScriptingConsole窗口。 图42 在ScriptingConsole窗口执行如下命令,调用GEL脚本初始化CPU,打印如下类似信息说明CPU初始化成功,即可正常加载运行程序。 js:loadJSFileD:imcuplussdkam64x08030018oolsccsloadam64xloaddmsc。js 图43 程序加载 在Debug窗口中,右击选中CortexA530核心,点击ConnectTarget进行连接。成功连接则显示Suspended状态,此时CCS与CortexA530核心已正常连接。如需连接其他核心,操作方法类似。 图44 点击RunLoadLoadProgram进入程序加载界面。 图45 在如下加载界面中,选择对应的CCS工程。out格式可执行文件。 图46 点击RunResume,即可运行程序。本次加载运行ledflash程序,可看到评估底板LED以0。5s的时间间隔进行闪烁。 图47 FreeRTOS与Baremetal案例ledflash案例案例功能 案例功能:控制评估底板用户LED每隔0。5s闪烁一次。案例测试 请加载运行ledflash程序,运行成功后,串口调试终端将会打印如下信息,同时评估底板用户LED将会每隔0。5s闪烁一次。 图48 GPIO配置说明 请参考CCS工程编译与加载章节导入并编译案例工程,双击打开工程界面的。syscfg文件。 图49 点击GPIO,弹出如下GPIO配置界面。 图50 用户可根据实际应用配置GPIO引脚,在代码中调用已配置的GPIO引脚是以。syscfg配置文件中的Name为标识。本案例Name为GPIOLED1,对应代码中的GPIOLED1BASEADDR、GPIOLED1PIN、GPIOLED1DIR配置。关键代码 配置GPIO。 图51 控制LED每隔0。5s状态翻转。 图52 uartecho案例案例功能 案例功能:实现串口回显功能。案例测试 请加载运行uartecho程序,程序运行后,等待串口输入8个字符,然后回显输入字符。串口调试终端将会打印如下类似信息。 图53 UART配置说明 请参考CCS工程编译与加载章节导入并编译案例工程,双击打开工程界面的。syscfg文件。 图54 点击UART,弹出如下UART配置界面。 图55 用户可根据实际应用配置UART,在代码中调用已配置的UART引脚是以。syscfg配置文件中的Name为标识。本案例Name为CONFIGUARTCONSOLE,对应代码中的CONFIGUARTCONSOLE配置。关键代码 配置串口。 图56 使用阻塞模式。接收完数据后,UARTread返回;发送完数据后,UARTwrite返回。 图57