主题中讨论的其他器件: TMS570LS1227、 TMS570LS1224、 HALCOGEN
尊敬的团队:
购买 launchxl2-tms57012后、我的客户需要测试示例代码。 以下路径中的代码似乎提供给了 tms570ls1227。 tms570ls1224是否适用?
是否有专用于 tms570ls1224的例程?
C:\ti\Hercules \Hercules 安全 MCU 演示\4.0.0\TMS570LS1x_target_Sources
此致
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.
尊敬的团队:
购买 launchxl2-tms57012后、我的客户需要测试示例代码。 以下路径中的代码似乎提供给了 tms570ls1227。 tms570ls1224是否适用?
是否有专用于 tms570ls1224的例程?
C:\ti\Hercules \Hercules 安全 MCU 演示\4.0.0\TMS570LS1x_target_Sources
此致
绿色环保、
您也可以使用 project0和 project1作为示例:
https://software-dl.ti.com/hercules/hercules_docs/latest/hercules/Examples/index.html
我将检查 TMS570LS1x_TARGET_Sources 是否适用于 LS1224 PGE 封装。
如果要取消选择"Driver Enable"面板中的一个模块(例如 CAN1)、则需要在重新生成新文件之前手动删除 CAN.c。
执行 gioToggle ()时代码是否会消失?
请检查 ESM 状态寄存器并让我设置哪个位? 是否生成了数据中止?
如果代码被中止、请检查 DFAR:
大家好、这是我的项目文件。 对于照明、只有几行 mian 函数代码、但仍然无法点亮 LED
搜索 μ A
复制 μ A
您好、Yasuo、
只需阅读您的代码、请在下面查找我的评论:
1. GIOB[1]和 GIOB[2]配置不正确。 它们应配置为输出。 默认值为输入。
gioPORTB->DIR =(0x03 <<1);
2.切换 GIOB[1]和 GIOB[2]
gioToggleBit (gioPORTB、1);
gioToggleBit (gioPORTB、2);
3.切换 GIOB 后,请添加一个较长的延迟,LED 的开/关不可见。
延迟(0xFFF);
最好的方法是在 RTI ISR 中启用 RTI 并切换 GIOB。 我将为您提供一个示例
1. 创建新的 HALCoGen 项目。
2.配置驱动程序代码生成:
-启用 RTI 驱动程序
-启用 GIO 驱动程序
-禁用其他人
3. 配置向量中断模块通道:
-将 VIM 通道2映射到 RTI 比较0中断
-启用 VIM 通道2
-将 VIM 通道2映射到 IRQ
4. 将 RTI 比较0周期配置为1000ms:
-输入1000.000以比较0周期编辑框
5. 生成代码
从图片中的日志消息中、您需要增加 FIQ 堆栈大小。 HAL 生成的代码的默认 FIQ 堆栈大小为0x100:
.def _coreInitStackPointer_
asmfunc
_coreInitStackPointer_
CPS 17
LDR sp、fiqSp
CPS 18
LDR sp、irqSp
CPS #19
LDR sp、svcSp
CPS #23
LDR sp、ABortSp
CPS #27
LDR sp、undefSp
CPS #31
LDR sp、userSp
BX LR
userSp .word 0x08000000+0x00001000
svcSp .word 0x08000000+0x00001000+0x00000100
fiqSp .word 0x08000000+0x00001000+0x00000100+0x00000100
irqSp .word 0x08000000+0x00001000+0x00000100+0x00000100+0x00000100
中止 Sp .word 0x08000000+0x00001000+0x00000100+0x00000100+0x00000100+0x00000100+0x00000100
undefSp .word 0x08000000+0x00001000+0x00000100+0x00000100+0x00000100+0x00000100+0x00000100
您的 CNA 使用 HALCoGen GUI 增大堆栈大小、或手动修改上述代码:
您好!
您尚未回答我的问题:
[引用 userid="45190" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1095385/launchxl2-tms57012-example-code-requirements/4074968#4074968"]运行演示代码时,是否可以将 sgiO (1)位设置为在 IAR 中? [/报价]您好、Yasuo、
请在 gioInit()的下一条指令中添加一个断点,然后在寄存器窗口中检查 GIO 寄存器,以确保 GIO 模块未复位:
GIOGCR0的位1应为0x1
如果是、请手动将0xF 写入 Gio DIR 寄存器(单击寄存器值并键入0xF)、然后将0xF 写入 GIO DOUT 或 DSET 寄存器、然后检查 LED 是否亮起。
这个演示项目像"Hello world"、非常简单。
您好,Jiahui,
这是来自客户项目的代码:
int main (空)
{
/*用户代码开始(3)*/
// int i;
gioInit();
// gioPORTB->DIR =(0x01 <<1)|(0x01 <<2);//将 GIOB[1]配置为输出
// gioPORTB->DIR =(0x01 <<2);//将 GIOB[1]配置为输出
while (1)
{
//延迟(50000);
// gioToggleBit (gioPORTB、1);
//延迟(50000);
// gioToggleBit (gioPORTB、2);
gioSetBit (gioPORTB、2U、1);
gioSetBit (gioPORTB、1U、1);
}
}
代码看起来不错。 GIOB[2:1]已配置为输出。
您可以在 while (1)处添加断点、检查 GIO 寄存器的值、并更改 GIO DOUT 寄存器的值以打开和关闭 LED。
您可以使用 IAR 工作平台的寄存器窗口来检查 GIO 寄存器的值并更改 GIO DOUT 寄存器的值:
有关 GIO 寄存器、请参阅《TMS570LS1224技术参考手册》的第25章:
从 CC1310:IAR V8.32.2 + XDS100 V3.0无法加载 CPU 内核驱动程序? IAR IDE 选项中的"TI 仿真软件包安装路径"可能是问题所在。