前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TI Sitara系列 AM64x开发板——FreeRTOS、Baremetal案例开发案例

TI Sitara系列 AM64x开发板——FreeRTOS、Baremetal案例开发案例

原创
作者头像
创龙科技Tronlong
发布2022-11-27 14:36:43
1K0
发布2022-11-27 14:36:43
举报

前 言 3

1 开发环境搭建

2 CCS工程编译与加载

3 FreeRTOS与Baremetal案例

评估板简介

创龙科技TL62x-EVM是一款基于TI Sitara系列AM62x单/双/四核ARM Cortex-A53 + 单核ARM Cortex-M4F异构多核处理器设计的高性能低功耗工业评估板,由核心板和评估底板组成。处理器ARM Cortex-A53(64-bit)主处理单元主频高达1.4GHz,ARM Cortex-M4F实时处理单元主频高达400MHz,采用16nm最新工艺,具有可与FPGA高速通信的GPMC并口,同时支持双屏异显、3D图形加速器。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。

评估板接口资源丰富,引出3x Ethernet(两路支持TSN)、3x CAN-FD、9x UART、多路DI/DO、GPMC、USB、MIPI、LVDS LCD、TFT LCD、HDMI等接口,板载WIFI模块,支持4G模块,可选配外壳直接应用于工业现场,方便用户快速进行产品方案评估与技术预研。

评估板正面图

前 言

本文主要介绍基于AM64x的FreeRTOS、Baremetal(裸机)案例使用说明。本文同时提供了Cortex-A53、Cortex-M4F核心对应的CCS工程。

适用开发环境:

Windows开发环境:Windows 7 64bit、Windows 10 64bit

虚拟机:VMware15.5.5

Linux开发环境:Ubuntu 18.04.4 64bit

Linux Processor SDK:ti-processor-sdk-linux-rt-am64xx-evm-08.01.00.39

U-Boot:U-Boot-2021.01

CCS版本:CCS11.2.0

MCU+ SDK:mcu_plus_sdk_am64x_08_03_00_18

SysConfig:sysconfig-1.12.1_2446

GCC AARCH64 Compiler:gcc-arm-9.2-2019.12-mingw-w64-i686-aarch64-none-elf

FreeRTOS案例位于“4-软件资料\Demo\RTOS-demos\”目录下,Baremetal案例位于“4-软件资料\Demo\Baremetal-demos\”目录下。案例project目录分别存放Cortex-A53、Cortex-M4F核心对应的CCS工程源码,bin目录分别存放Cortex-A53、Cortex-M4F核心对应的程序可执行文件。

表 1

RTOS-demos

led_flash

uart_echo

Baremetal-demos

led_flash

uart_echo

本文档默认使用TL-XDS200仿真器进行程序加载,如要求更高的加载、固化、调试速度,或具有网络远程调试、Trace等功能,推荐使用创龙科技的TL-XDS560V2仿真器。

开发环境搭建

本章节主要介绍FreeRTOS、Baremetal(裸机)案例的开发环境搭建。

CCS环境安装

安装CCS11.2.0工具

请将产品资料“4-软件资料\Tools\Windows\CCS11.2.0.00007_win64.zip”压缩包解压至Windows非中文路径目录下,并双击解压目录中的

进行安装。

在弹出的CCS安装界面中,勾选

选项,点击Next。

图 1

在弹出界面中选择安装目录,可根据实际情况修改。点击Next,进入安装环境检测界面。

图 2

图 3

备注:如出现如下界面,则表示环境检查未通过。请尝试关闭Windows防火墙,再重新安装。

图 4

进入如下界面中,选择需添加的组件。勾选"Sitara AM3x,AM4x,AM5x and AM6x MPUs"和"Sitara AM2x MCUs"选项,点击Next。

图 5

在后续界面中,请继续点击Next选项,直至安装完成。

图 6

图 7

安装MCU+ SDK组件

请将产品资料“4-软件资料\Tools\Windows\mcu_plus_sdk_am64x_08_03_00_18_all.zip”MCU+ SDK组件压缩包解压至CCS安装目录。

图 8

双击打开CCS11.2.0,点击"Window -> Preferences"。

图 9

打开Products选项,确保"Product discovery path"选项框已存在MCU+ SDK的安装目录。如该安装目录不存在,请点击''Add..."添加,然后点击Refresh,即可在"Discovered products"选项框显示。

图 10

安装SysConfig工具

SysConfig(System Configuration)是一个综合的图形化配置工具集合,用于配置引脚、外设、子系统和其他组件。该工具的输出文件包括C头文件和代码文件,可用于配置CCS工程。

双击“4-软件资料\Tools\Windows\sysconfig-1.12.1_2446-setup.exe”,将SysConfig工具安装至CCS安装目录下。

图 11

双击打开CCS11.2.0,点击菜单栏"Window -> Preferences",打开Products选项,点击"install..."添加sysconfig1.12.1工具所在路径,然后点击Refresh,即可在"Discovered products"选项框显示,最后点击"Apply and Close"完成。

图 12

图 13

安装GCC AARCH64 Compiler

将产品资料“4-软件资料\Tools\Windows\gcc-arm-9.2-2019.12-mingw-w64-i686-aarch64-none-elf.tar”压缩包解压至CCS安装目录,该交叉编译工具链用于Cortex-A53端程序编译。

备注:Cortex-M4F端工程使用CCS工具自带的交叉编译工具链。

图 14

双击打开CCS11.2.0,点击"Window -> Preferences",导入GCC AARCH64 Compiler。

图 15

打开"Build -> Compilers"选项,确保Compilers选项框已存在GCC AARCH64 Compiler工具链的安装目录。如该安装目录不存在,请点击"Add..."添加,然后点击Refresh,即可在"Discovered tools"选项框显示。

图 16

安装GCC ARM (R5F) Compiler

将产品资料“4-软件资料\Tools\Windows\gcc-arm-none-eabi-7-2017-q4-major-win32.zip”压缩包解压至CCS安装目录,该交叉编译工具链用于Cortex-R5F端程序编译。

图 17

点击"Window -> Preferences",添加GCC ARM (R5F) Compiler工具链。

图 18

打开"Build -> Compilers"选项,确保Compilers选项框已存在GCC ARM (R5F) Compiler的安装目录。如该安装目录不存在,请点击"Add..."添加,然后点击Refresh,即可在"Discovered tools"选项框显示。

图 19

安装Python

使用CCS编译CCS工程时,需使用Python工具进行命令解析。

请双击“4-软件资料\Tools\Windows\python-3.9.1-amd64.exe”安装包,勾选"Add Python 3.9 to PATH"选项,点击"Install Now"进行安装。

图 20

安装完成如下图所示。

图 21

打开Windows CMD命令行,执行如下命令,可查看Python是否已安装成功。

CMD# python --version

图 22

Python安装过程中,一般会附带安装pip包管理器,执行如下命令进行确认。

CMD# python -m pip --version

图 23

执行如下命令,安装Python增量包,以支持部分程序固化功能。

CMD# python -m pip install pyserial xmodem tqdm --proxy=

图 24

CCS工程编译与加载

本章节主要演示FreeRTOS、Baremetal(裸机)案例CCS工程的导入和编译方法。

工程导入

打开CCS11.2.0,点击"Project -> Import CCS Projects...",导入FreeRTOS或Baremetal(裸机)案例CCS工程。

图 25

选择CCS工程所在文件夹,选中CCS工程,选完后点击Finish。

图 26

环境配置

右键选中CCS工程,弹出菜单列表中选择Properties,打开工程属性界面。

图 27

点击"General -> Products",确认已包含"SysConfig1.12.1"及"MCU+ SDK for AM64x"组件。如未存在,请点击"Add..."选项添加。

图 28

点击"Linked Resources -> Path Variables",确认MCU+ SDK组件、交叉编译工具链等已全部配置为实际安装路径(如下图所示)。具体说明如下所示:

CCS_BASE_ROOT:CCS安装目录的ccs_base文件夹绝对路径

CCS_INSTALL_ROOT:CCS安装目录绝对路径

CG_TOOL_ROOT:交叉编译工具链安装目录绝对路径(请根据实际工程进行配置)

COM_TI_MCU_PLUS_SDK_AM64X_INSTALL_DIR:MCU+ SDK安装目录绝对路径

MCU_PLUS_SDK_PATH:MCU+ SDK安装目录绝对路径

PROJECT_LOC:CCS工程目录绝对路径

WORKSPACE_LOC:workspace目录绝对路径

图 29

工程编译

右键点击CCS工程,弹出菜单中选择"Rebuild Project"进行编译。

图 30

编译成功后,Console窗口将打印"Build Finished"信息,并在Debug目录下生成程序可执行文件。

图 31

图 32

CPU初始化

本小节主要讲述如何调用GEL脚本初始化CPU的方法。

在Windows右键“我的电脑”,选择“属性(R) -> 高级系统设置”,打开如下系统属性界面。

图 33

图 34

图 35

点击“环境变量(N)…”,打开如下界面。点击“系统变量(S)”的“新建(W)…”,添加MCU+ SDK安装路径,具体如下:

变量名(N):MCU_PLUS_SDK_AM64X_PATH

变量值(V):D:/ti/mcu_plus_sdk_am64x_08_03_00_18(MCU+ SDK实际安装路径)

图 36

打开CCS,点击菜单"View -> Target Configurations"打开仿真器配置界面。

图 37

按照如下配置新建am64x-xds200.ccxml仿真配置文件。Connection选择对应的仿真器型号,在"Board or Device"下拉框中选择AM64x_GP_EVM,点击Save保存。

图 38

请将仿真器与评估板TI Rev B JTAG接口进行连接,将评估板上电。在ccxml配置文件窗口中,点击"Test Connection",测试仿真器与评估板之间是否已连接成功。连接成功将打印如下类似信息。

图 39

图 40

在"Target Configrations"配置窗口中,右击ccxml仿真配置文件,在弹出的界面中点击"Launch Selected Configuration"进入Debug界面。

图 41

点击View -> Scripting Console选项,打开Scripting Console窗口。

图 42

在"Scripting Console"窗口执行如下命令,调用GEL脚本初始化CPU,打印如下类似信息说明CPU初始化成功,即可正常加载运行程序。

js:> loadJSFile "D:\ti\mcu_plus_sdk_am64x_08_03_00_18\tools\ccs_load\am64x\load_dmsc.js"

图 43

程序加载

在Debug窗口中,右击选中CortexA53_0核心,点击"Connect Target"进行连接。成功连接则显示Suspended状态,此时CCS与CortexA53_0核心已正常连接。如需连接其他核心,操作方法类似。

图 44

点击"Run -> Load -> Load Program…"进入程序加载界面。

图 45

在如下加载界面中,选择对应的CCS工程*.out格式可执行文件。

图 46

点击"Run -> Resume",即可运行程序。本次加载运行led_flash程序,可看到评估底板LED以0.5s的时间间隔进行闪烁。

图 47

FreeRTOS与Baremetal案例

led_flash案例

案例功能

案例功能:控制评估底板用户LED每隔0.5s闪烁一次。

案例测试

请加载运行led_flash程序,运行成功后,串口调试终端将会打印如下信息,同时评估底板用户LED将会每隔0.5s闪烁一次。

图 48

GPIO配置说明

请参考“CCS工程编译与加载”章节导入并编译案例工程,双击打开工程界面的"*.syscfg"文件。

图 49

点击GPIO,弹出如下GPIO配置界面。

图 50

用户可根据实际应用配置GPIO引脚,在代码中调用已配置的GPIO引脚是以"*.syscfg"配置文件中的Name为标识。本案例Name为GPIO_LED1,对应代码中的GPIO_LED1_BASE_ADDR、GPIO_LED1_PIN、GPIO_LED1_DIR配置。

关键代码

配置GPIO。

图 51

控制LED每隔0.5s状态翻转。

图 52

uart_echo案例

案例功能

案例功能:实现串口回显功能。

案例测试

请加载运行uart_echo程序,程序运行后,等待串口输入8个字符,然后回显输入字符。串口调试终端将会打印如下类似信息。

图 53

UART配置说明

请参考“CCS工程编译与加载”章节导入并编译案例工程,双击打开工程界面的"*.syscfg"文件。

图 54

点击UART,弹出如下UART配置界面。

图 55

用户可根据实际应用配置UART,在代码中调用已配置的UART引脚是以"*.syscfg"配置文件中的Name为标识。本案例Name为CONFIG_UART_CONSOLE,对应代码中的CONFIG_UART_CONSOLE配置。

关键代码

配置串口。

图 56

使用阻塞模式。接收完数据后,UART_read返回;发送完数据后,UART_write返回。

图 57

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 评估板简介
  • 前 言
  • 开发环境搭建
  • CCS环境安装
  • 安装CCS11.2.0工具
  • 安装MCU+ SDK组件
  • 安装SysConfig工具
  • 安装GCC AARCH64 Compiler
  • 安装GCC ARM (R5F) Compiler
  • 安装Python
  • CCS工程编译与加载
  • 工程导入
  • 环境配置
  • 工程编译
  • CPU初始化
  • 程序加载
  • FreeRTOS与Baremetal案例
  • led_flash案例
  • 案例功能
  • 案例测试
  • GPIO配置说明
  • 关键代码
  • uart_echo案例
  • 案例功能
  • 案例测试
  • UART配置说明
  • 关键代码
相关产品与服务
远程调试
远程调试(Remote Debugging,RD)在云端为用户提供上千台真实手机/定制机/模拟器设备,快速实现随时随地测试。运用云测技术对测试方式、操作体验进行了优化,具备多样性的测试能力,包括随时截图和记录调试日志,稳定的支持自动化测试, 设备灵活调度,用例高效执行, 快速定位产品功能和兼容性问题。云手机帮助应用、移动游戏快速发现和解决问题,节省百万硬件费用,加速敏捷研发流程。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档