工具/软件:TI-RTOS
我正在使用 TM4C123GH6PM 开发 TIRTOS 平台。 我想使用类和对象的概念创建使用 C++的 LED 切换。 下面是我使用一个 IDLE 函数并尝试切换 LED 的代码。 我的代码位于.cpp 扩展名上。 我已从编译中排除 empty.c 文件、因为它不支持类和对象。
#include //mand强制-对于 BIOS 类型
#include、必须首先包含 //mandedis-如果您调用诸如 BIOS_start()
#include 之类的 API //needed 用于任何 Log_info()调用
#include 用于静态定义的对象/句柄
#include 的//头文件
#include
#include "inc/hw_types.h"
#include "inc/hw_memmap.h"
#include "driverlib/sysctl.h"
#include "driverlib/gpio.h"
#include "inc/hw_ints.h"
#include "driverlib/interrupt.h"
#include "driverlib/timer.h"
void hardware_init (void);
void ledToggle1 (void);
void main (void)
{
hardware_init (); //通过 Xware
BIOS_start()初始化硬件; //启动 BIOS 调度程序(从不返回)
类 LED_Status
{
public:
int on;
int off;
};
LED_Status;
status.on=8;
status.off=0;
}
void hardware_init (void)
{
//将 CPU 时钟设置为40MHz。 400MHz PLL/2 = 200 DIV 5 = 40MHz
SysCtlClockSet (SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTAL_16MHz|SYSCTL_MAIN);
//添加 Tiva-C GPIO 设置-启用端口、为输出
设置引脚1-3 (SysCtl)引脚、以输出状态为1 (GPIO_P0_GPIOPTF);// GPIOPTL (P0_IN_IN_IN_IN_IN_TOP0_INL);// GPIOPTL (P0_IN_IN_IN_IN_IN_IN_IN_TOP0_IN_IN_IN_IN_IN_IN_INL);GPIOPTL (IN_IN_IN_IN_IN_IN_TOP0_IN_IN_IN_IN_IN_IN_IN_IN_IN_IN_IN_IN_INTRL (IN_IN_IN_INTRL
编译.cp 文件时出现以下错误。
说明资源路径位置类型
#10010链接期间遇到错误;"rtos1.out"未构建 rtos1 C/C++问题
#10234-D 未解析的符号仍然是 rtos1 C/C++问题
未解析的符号 ledToggle1、首先在 E:\DG\rtos1\Debug\configPkg\package\cg\empty_pem4f.oem4f rtos1 C/C++ problem 中引用
未解析的符号 main、首先在 C:\ti\ccsv6\tools\compiler\ti-cgt-arm_5.2.5\lib\rtsv7M4_T_le_v4SPD16_eabi.lib 中引用 rtos1 C/C++问题
如何解决这个问题。 我必须使用 C++概念、如类和对象。
此代码在非 RTOS .cpp 文件上运行正常、但在这里不起作用