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.

[参考译文] TMS320F280025:仿真配置问题

Guru**** 2558380 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1076930/tms320f280025-emulation-configuration-issues

部件号:TMS320F280025
“线程:测试”中讨论的其它部件

大家好,团队

将28034 LIN 相关程序移植到280025后,发现未收到数据,280025寄存器基本配置为28034,并且可以在28034板上正常通信。

280025上的配置如下:

//引脚和时钟配置
EALLOW;
CpuSysRegs.PCLKCR19.Bit.LIN_A = 1;
GpioCtrlRegs.GPAPUD.bit.GPIO28 = 0;//GPIO28 (LIN TX)
GpioCtrlRegs.GPAPUD.bit.GPIO29 = 0;//GPIO29 (LIN RX)
GpioCtrlRegs.GPAQSEL2.bit.GPIO29 = 3;
GpioCtrlRegs.GPAQSEL2.bit.GPIO29 = 0x01;
GpioCtrlRegs.GPACTRL.Bit.QUALPRD3 = 0x03;
GpioCtrlRegs.GPAGMUX2.bit.GPIO28 = 2;
GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 2;
GpioCtrlRegs.GPAGMUX2.bit.GPIO29 = 2;
GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 2;
EDIS;

//LIN 寄存器配置
EALLOW;
LinaRegs.SCIGCR0.bit.reset = 0;
LinaRegs.SCIGCR0.bit.reset = 1;
LinaRegs.SCIGCR1.bit.SWnRST = 0;
LinaRegs.SCIPIO0.bit.RXFUNC = 1;//这两个句子在28034上不可用
LinaRegs.SCIPIO0.bit.TXFUNC = 1;//左侧配置与28034相同
LinaRegs.SCIGCR1.bit.Sleep = 0;
LinaRegs.SCIFLR.Bit.TXWAKE = 0;
LinaRegs.SCIFLR.Bit.TXEMPTY = 1;
LinaRegs.SCIFLR.Bit.TXRDY = 1;
//配置为接收数据
LinaRegs.SCIGCR1.bit.RXENA = 1;
LinaRegs.SCIGCR1.bit.TXENA = 0;
LinaRegs.SCIGCR1.bit.TIMNGMODE =1;//异步计时
LinaRegs.SCIGCR1.bit.CLK_MASTER =1;//启用 SCI 时钟
LinaRegs.SCIGCR1.bit.cont = 1;//挂起时继续
LinaRegs.SCISETINT.Bit.SETXINT = 1;
LinaRegs.SCISETINT.Bit.SETTXINT = 1;
LinaRegs.SCIFORMAT Bit.CHAR = 0x7;
LinaRegs.SCIGCR1.bit.SWnRST = 1;
EDIS;

调试期间发送的数据帧:01 03 F0 08 00 01 36 C8

1)在28034板上调试时,检查寄存器的配置如下:

接收数据帧后,接收寄存器的结果如下图所示(接收数据前 RXENA 和 RXIN 为1):

2) 在280025板上调试时,检查寄存器的配置如下:

而表达式中寄存器的配置如下所示:

RXENA 和 RXIN 均为0,,但在上一个图中有一个值。 这是为什么?

3)传输与28034测试相同的数据帧时,LinaRegs.scird.bit.RD 不会改变。 发送数据帧时测量 GPIO29的输入,如下图所示:

GPIO29确实有数据传输,但接收寄存器没有任何值。 与上一个寄存器显示结合使用,这是否意味着寄存器配置失败?

从数据手册中的 LIN 结构方框图中,只要 RXENA 配置为1,SCIRD 就能接收数据,对吗? 但是,通过表达式和寄存器可以看到不同的结果。  

请帮您检查此案例? 谢谢。

此致,

樱桃

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

    你好,Cherry,

    对延迟响应表示歉意。

    您是否打算使用 LIN 通信? 从寄存器配置来看,它看起来像 LINMODE=0,这意味着它被配置为 SCI,您能确认吗?

    此致,

    尼拉夫