This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/EK-TM4C1294XL:EK-TM4C1294XL

Guru**** 2487425 points
Other Parts Discussed in Thread: TM4C1294NCPDT, EK-TM4C1294XL

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/733621/ccs-ek-tm4c1294xl-ek-tm4c1294xl

器件型号:EK-TM4C1294XL
主题中讨论的其他器件:TM4C1294NCPDT

工具/软件:Code Composer Studio

大家好、这是我使用开关打开 LED 的代码、它有一些错误、如果它在该代码之后工作、或者不工作、请帮我解决

#include
#include
#include
#include
#include

#include
#include
void delay (int s);//软件延迟功能
void Setup_GPIO (void);

int main (空)

unsigned long sw1;
void PORTN_init();
void PORTJ_init();
while (1)

GPIO_PORTN_DATA_R &=~0x02;
执行{
SW1=GPIO_PORTJ_AHB_DATA_R & 0x02;
}while (sw1);
执行{
GPIO_PORTN_DATA_R θ^= 0x02;
延迟(1);
SW1=GPIO_PORTJ_AHB_DATA_R & 0x02;
}while (!sw1);



//初始化 PORTJ 和 PORTN (pj1=输入、pn1=输出)
void PORTJ_Int (void);
void PORTN_Int (void);

volatile unsigned long delay;
SYSCTL_RCGCGPIO_R= SYSCTL_RCGCGPIO_R12|SYSCTL_RCGCGPIO_R8;
///delay=sysctl_RCGCGPIO_R12|sysctl_RCGCGPIO_R8;
GPIO_PORTJ_LOCK_R |=Ox4C4F434B;
GPIO_PORTJ_CR_R |=0x01;
GPIO_PORTJ_AMSEL_R &=~Ω(0x01);
GPIO_PORTN_AMSEL_R &=0x00;
GPIO_PORTJ_PCTL_R &=0x00000000;
GPIO_PORTN_PCTL_R &=0x00000000;
GPIO_PORTJ_AHB_DIR_=~0x02;
GPIO_PORTN_DIR_R |= 0x02;
GPIO_PORTJ_AHB_PUR_|= 0x01;
GPIO_PORTJ_AHB_DEN_R |=0x01;
GPIO_PORTN_DEN_R |=0x01;

空延迟(int s)

volatile int i、j;
for (i=0;<s;i++))
for (j=0;j<3180;j++)
{}

这是误差


****为项目开关构建配置调试****

"C:\\ti\\ccsv8\\utils\\bin\\gmake"-k -j 4 all -O

编译文件:"../main.c"
调用:ARM 编译器
"c:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/switch --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include --define=ccs="ccs"--define=part_TM4C1294NCPDT -g --gcc_path="C:--preabi_display=raus_main=raus_abi_diag.abi=raus_main_remonus.abi_decuration="-main.abi_abi_us.cc=us.abi_display_main.us.abi_board.us.abi_display_main.abi_supermonus.us.abi=

>>编译失败
subdir_rules.mk:9:目标'main.obj'的配方失败
"./main.c"、第34行:错误#171:需要声明
1在编译"./main.c"时检测到错误。
gmake:***[main.obj]错误1.
gmake:目标"全部"不会由于错误而重新生成。

****构建完成****

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    #include
    #include
    #include
    #include
    #include

    #include
    #include
    空延迟(int s); //软件延迟功能
    void Setup_GPIO (void);

    int main (空)

    unsigned long sw1;
    void PORTN_init();
    void PORTJ_init();
    while (1)

    GPIO_PORTN_DATA_R &=~0x02;
    执行{
    SW1=GPIO_PORTJ_AHB_DATA_R & 0x02;
    }while (sw1);
    执行{
    GPIO_PORTN_DATA_R θ^= 0x02;
    延迟(1);
    SW1=GPIO_PORTJ_AHB_DATA_R & 0x02;
    }while (!sw1);



    //初始化 PORTJ 和 PORTN (pj1=输入、pn1=输出)
    void PORTJ_AHB_Int (void)
    void PORTN_Int (void)

    volatile unsigned long delay;
    SYSCTL_RCGCGPIO_R= SYSCTL_RCGCGPIO_R12|SYSCTL_RCGCGPIO_R8;
    delay=sysctl_RCGCGPIO_R12|SYSCTL_RCGCGPIO_R8;
    //GPIO_PORTJ_AHB_LOCK_R |=Ox4C4F434B;
    GPIO_PORTJ_AHB_CR_R |=0x01;
    GPIO_PORTJ_AHB_AMSEL_R &=~Ω(0x01);
    GPIO_PORTN_AMSEL_R &=0x00;
    GPIO_PORTJ_AHB_PCTL_R &=0x00000000;
    GPIO_PORTN_PCTL_R &=0x00000000;
    GPIO_PORTJ_AHB_DIR_=~0x02;
    GPIO_PORTN_DIR_R |= 0x02;
    GPIO_PORTJ_AHB_PUR_|= 0x01;
    GPIO_PORTJ_AHB_DEN_R |=0x01;
    GPIO_PORTN_DEN_R |=0x01;


    空延迟(int s)

    volatile int i、j;
    for (i=0;<s;i++))
    for (j=0;j<3180;j++)
    {}



    发生了一些变化、现在出现了不同的错误



    ****为项目开关构建配置调试****

    "C:\\ti\\ccsv8\\utils\\bin\\gmake"-k -j 4 all -O

    编译文件:"../main.c"
    调用:ARM 编译器
    "c:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/switch --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include --define=ccs="ccs"--define=part_TM4C1294NCPDT -g --gcc_path="C:--preabi_display=raus_main=raus_abi_diag.abi=raus_main_remonus.abi_decuration="-main.abi_abi_us.cc=us.abi_display_main.us.abi_board.us.abi_display_main.abi_supermonus.us.abi=

    >>编译失败
    subdir_rules.mk:9:目标'main.obj'的配方失败
    "./main.c"、第33行:错误#131:预期为"{"
    1在编译"./main.c"时检测到错误。
    gmake:***[main.obj]错误1.
    gmake:目标"全部"不会由于错误而重新生成。

    ****构建完成****
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    #include
    #include
    #include
    #include
    #include

    #include
    #include

    空延迟(int s); //软件延迟功能
    void Setup_GPIO (void);

    int main (空)

    unsigned long sw1;
    void PORTN_init();
    void PORTJ_init();
    while (1)

    GPIO_PORTN_DATA_R &=~0x02;
    执行{
    SW1=GPIO_PORTJ_AHB_DATA_R & 0x02;
    }while (sw1);
    执行{
    GPIO_PORTN_DATA_R θ^= 0x02;
    延迟(1);
    SW1=GPIO_PORTJ_AHB_DATA_R & 0x02;
    }while (!sw1);



    //初始化 PORTJ 和 PORTN (pj1=输入、pn1=输出)
    void PORTJ_AHB_Int (void)
    //void PORTN_int (void)

    volatile unsigned long delay;
    SYSCTL_RCGCGPIO_R= SYSCTL_RCGCGPIO_R12|SYSCTL_RCGCGPIO_R8;
    delay=sysctl_RCGCGPIO_R12|SYSCTL_RCGCGPIO_R8;
    GPIO_PORTJ_AHB_LOCK_R |=0x4C4F434B;
    GPIO_PORTJ_AHB_CR_R |=0x01;
    GPIO_PORTJ_AHB_AMSEL_R &=~Ω(0x01);
    GPIO_PORTN_AMSEL_R &=0x00;
    GPIO_PORTJ_AHB_PCTL_R &=0x00000000;
    GPIO_PORTN_PCTL_R &=0x00000000;
    GPIO_PORTJ_AHB_DIR_=~0x02;
    GPIO_PORTN_DIR_R |= 0x02;
    GPIO_PORTJ_AHB_PUR_|= 0x01;
    GPIO_PORTJ_AHB_DEN_R |=0x01;
    GPIO_PORTN_DEN_R |=0x01;


    空延迟(int s)

    volatile int i、j;
    for (i=0;<s;i++))
    for (j=0;j<3180;j++)
    {}



    这没有错误、但仍然没有响应指示灯闪烁、请尽快帮助我解决问题
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Chedthan、

    我们已经通知您、您必须使用 TivaWare 在以下论坛获得支持: e2e.ti.com/.../2702537
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、先生、我知道、我至少需要一个 TIvaware 中的代码

    此致、

    加油打气
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Chedthan、

    在 CCS 中、转到 Project 菜单并选择'Import CCS Projects..." 选项。 然后在 PC 上浏览到 TivaWare 安装并找到以下文件夹路径:[INSTALL Path]\TivaWare_C_Series-2.1.4.178\examples\boards\ek-tm4c1294xl\blinky

    选择 blinky 示例项目文件夹、然后单击完成。

    这将加载用于在 EK-TM4C1294XL LaunchPad 上刷写 LED 的闪烁示例、您可以编译该示例并将其下载到 LaunchPad、并查看代码以了解其工作原理。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Ralph Jacobi、

    我在这两个过程中都得到了闪烁项目

    现在,我正在寻找使用开关打开和关闭 LED 的代码,但没有找到任何这样的示例,因此想向您寻求帮助。


    此致、

    Chedthan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Chedthan、

    如果 Blinky 正常工作、则应尝试使用 TivaWare API 在上添加开关功能。 那么我们可以为您提供帮助。

    要查看 TivaWare 中使用开关的相当简单的示例工程、您可以查看看门狗示例。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Ralph Jacobi、

    我尝试使用 TIvaware 时、帮助我解决了一些问题
    这是我的代码

    #include
    #include
    #include "hw_ints.h"
    #include "hw_memmap.h"
    #include "hw_types.h"
    #include
    #include
    #include

    #define USER_LED1 GPIO_PIN_0
    #define USER_LED2 GPIO_PIN_1
    #define USR_sw1 GPIO_PIN_0
    #define USR_SW2 GPIO_PIN_1

    //错误例程

    #ifdef 调试
    无效
    _error__(char * pcFilename、uint32_t ui32Line)


    #endif

    //………………………
    int main (空)

    uint32_t ui32SysClock;
    //
    //从 PLL 以120MHz 运行。
    //
    ui32SysClock = SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz |
    SYSCTL_OSC_MAIN |
    SYSCTL_USE_PLL |
    SYSCTL_CFG_VCO_480)、120000000);


    SysCtlPeripheralEnable (SYSCTL_Periph_GPION);
    SysCtlPeripheralEnable (SYSCTL_Periph_GPIOJ);
    while (!SysCtlPeripheralReady (SYSCTL_Periph_GPION))
    while (!SysCtlPeripheralReady (SYSCTL_Periph_GPIOJ))


    ButtonInit();


    GPIOPinTypeGPIOOutput (GPIO_PORTN_BASE、(USER_LED1|USER_LED2));
    GPIOPinTypeGPIOOutput (GPIO_PORTJ_BASE、(USR_sw1|USR_SW2));


    while (1)

    uint8_t ui8Buttons = ButtonPoll (0、0);

    if (ui8Buttons & usr_sw1);

    GPIOPinWrite (GPIO_PORTN_BASE、(USER_LED1|USER_LED2)、USER_LED1);

    如果
    (ui8Buttons & USR_SW2);

    GPIOPinWrite (GPIO_PORTN_BASE、(USER_LED1|USER_LED2)、USER_LED2);






    这是错误



    ****为项目软件构建配置调试****

    "C:\\ti\\ccsv8\\utils\\bin\\gmake"-k -j 4 all -O

    编译文件:"../main.c"
    调用:ARM 编译器
    "c:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/sw --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include --define=ccs="ccs"--define=part_TM4C1294NCPDT -g --gcc_path="C:--preabi_display=raus_main=raus_abi_diag.abi=raus_main_remonus.abi_decuration="-main.abi_abi_us.cc=us.abi_display_main.us.abi_board.us.abi_display_main.abi_supermonus.us.abi=
    "./main.c"、第27行:警告#552-D:变量"ui32SysClock"已设置但从未使用
    建筑完工:"../main.c"

    构建目标:"sw.out"
    调用:ARM 链接器
    "c:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl "-mv7M4 -code_state=16 --float_support=FPv4SPD16 -me -define=ccs"-define=part_TM4C1294NCPDT -g -gdiag_warn=225 --display_error_number-"-lib_ram_sw_zh-out_lineps"-"-linepap_line_display.cmpremot.cmp_sw-out.cmp_ines"--region.cmp.inc"-content-content-content-content_line_display_linepap.cmp.htm#-out.htm#-line_display_lineps"-cmp.htm#-out.htm#-lap.htm#-lineps"-cmp.htm#-linep-out.htm#-linep_display.htm#-linep-linep.htm#-linep-out.htm#-linep-status.htm#-linep.htm#-linep_display.htm#-linep_display.htm#-linep.htm /ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include /ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/lib


    未定义 第一个参考
    符号 文件中
    ------ --------
    ButtonInit /main.obj
    ButtonPoll /main.obj
    GPIOPinTypeGPIOOutput ./main.obj
    GPIOPinWrite /main.obj
    SysCtlClockFreqSet /main.obj
    SysCtlPeripheralEnable ./main.obj
    SysCtlPeripheralReady ./main.obj

    错误#10234-D:未解析的符号仍然存在
    错误#10010:链接期间遇到错误;未生成"sw.out"

    >>编译失败
    Makefile:142:目标 w.out'的配方失败
    gmaking[1]:***[SW.OUT]错误1
    Makefile:138:目标“全部”的配方失败
    gmake:***[全部]错误2.

    ****构建完成****
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Chedthan、

    您的 include 未正确路径。 一旦 TivaWare 链接正确、您仍然需要指示 CCS 浏览 TivaWare 文件夹以查找特定文件。

    例如、从 blinky.c 项目中、您可以看到 TivaWare 的具体内容包括:

    #include "inc/hw_memmap.h"
    #include "inc/hw_ints.h"
    #include "driverlib/debug.h"
    #include "driverlib/gpio.h"
    #include "driverlib/interrupt.h"
    #include "driverlib/sysctl.h"
    #include "driverlib/timer.h" 

    根据每个文件的位置、您需要将 driverlib/和 inc/文件夹作为#include 的一部分。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好
    感谢您、您可以浏览一次代码或运行一次代码、这样就不会出现错误或需要进行其他更改
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请尽快答复
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Chedthan、

    您遇到了哪些其他错误?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    它的 NT 在板上工作
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Chedthan、

    编译是否正常、还是仍有编译错误?

    您是否曾尝试使用断点来查看您的代码在按下按钮时是否会输入正确的条件语句?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、在遇到同样的错误后、这是我的代码

    #include
    #include
    #include "hw_ints.h"
    #include "hw_memmap.h"
    #include "hw_types.h"
    #include
    #include
    #include
    #include

    #define USER_LED1 GPIO_PIN_0
    #define USER_LED2 GPIO_PIN_1
    #define USR_sw1 GPIO_PIN_0
    #define USR_SW2 GPIO_PIN_1

    //错误例程

    #ifdef 调试
    无效
    _error__(char * pcFilename、uint32_t ui32Line)


    #endif

    //………………………
    int main (空)

    uint32_t ui32SysClock;
    //
    //从 PLL 以120MHz 运行。
    //
    ui32SysClock = SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz |
    SYSCTL_OSC_MAIN |
    SYSCTL_USE_PLL |
    SYSCTL_CFG_VCO_480)、120000000);


    SysCtlPeripheralEnable (SYSCTL_Periph_GPION);
    SysCtlPeripheralEnable (SYSCTL_Periph_GPIOJ);
    while (!SysCtlPeripheralReady (SYSCTL_Periph_GPION))
    while (!SysCtlPeripheralReady (SYSCTL_Periph_GPIOJ))


    ButtonInit();


    GPIOPinTypeGPIOOutput (GPIO_PORTN_BASE、(USER_LED1|USER_LED2));
    GPIOPinTypeGPIOOutput (GPIO_PORTJ_BASE、(USR_sw1|USR_SW2));

    while (1)

    uint8_t ui8Buttons = ButtonPoll (0、0);

    if (ui8Buttons & usr_sw1);

    GPIOPinWrite (GPIO_PORTN_BASE、(USER_LED1|USER_LED2)、USER_LED1);

    如果
    (ui8Buttons & USR_SW2);

    GPIOPinWrite (GPIO_PORTN_BASE、(USER_LED1|USER_LED2)、USER_LED2);


    这是错误


    ****为项目 SW3构建配置调试****

    "C:\\ti\\ccsv8\\utils\\bin\\gmake"-k -j 4 all -O

    构建目标:"SW3.out"
    调用:ARM 链接器
    "c:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl /ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/lib /ti/TivaWare_C_Series-2.1.4.178/driverlib/ccs/Debug/driverlib.lib -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --define=ccs"--define_TM4C1294NCPDT -g --gdiag_warn=225 --display_error_error_number --exctrack_ram_ram_swap.ipt_in="-m.ipt_in="-m.ipt_overview"-code.cmp_overview_overview_overview_overview_overview_overview_overview_overview_overview_overview_overview-m.ipld=f_overview_overview_overview-m.htm#-m.htm#-m.htm#-overview_overview_overview.htm#-overview_overview_overview.htm#-overview_overview.htm#-overview.htm#-overview.htm#-overview.htm#-overview.htm#-overview.htm#-overview.htm#-overview_overview.htm#-overview-t./ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include


    未定义的首次引用
    符号
    ------ --------
    ButtonInit ./main.obj
    ButtonPoll ./main.obj

    错误#10234-D:未解析的符号仍然存在
    错误#10010:链接期间遇到错误;未构建"SW3.out"

    >>编译失败
    Makefile:143:目标'sw3.out'的配方失败
    gmaking[1]:***[SW3.OUT]错误1
    Makefile:139:目标'all'的配方失败
    gmake:***[全部]错误2.

    ****构建完成****

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    现在这个错误只出现在"header"文件中


    ****为项目 SW3构建配置调试****

    "C:\\ti\\ccsv8\\utils\\bin\\gmake"-k -j 4 all -O

    编译文件:"../main.c"
    调用:ARM 编译器
    "c:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --include_path="C:/ti/sw3 --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/TivaWare_C_Series-2.1.4.178 --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include --define=ccs=ccs_pred=cabi_remote_remote_remote_display-ctranag-ctrab-ctrab-pred_guide-guide-d_guide-ctran.cp.cc_remote_remote_remote_remote_remote_remote_remote_remote_remote_remote_ctranag-ctranag-ctranag-ctranag-ctran.cc=-ctran.cc_remote_in

    >>编译失败
    subdir_rules.mk:9:目标'main.obj'的配方失败
    "C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/include/buttons.h、第27行:致命错误#1965:无法打开源文件"inc/hw_types.h"
    1在编译"./main.c"时检测到灾难性错误。
    编译已终止。
    gmake:***[main.obj]错误1.
    gmake:目标"全部"不会由于错误而重新生成。

    ****构建完成****