主题中讨论的其他器件: TMDSHSECDOCK、 SysConfig
工具与软件:
大家好!
首先、这是我使用的硬件:
- F29H85X-MCU114E1-002 SOM
- MCU134A 适配器
- XDS110调试器
- TMDSHSECDOCK 修订版 F
- NCV7351 CANFD 收发器
因此、在这个背景下、我可以告诉您、我更改了 SysConfig 以匹配 HSEC 引脚80和82、我确实将这些引脚从瞬变器连接到 TX 和 RX 引脚。
/**
* These arguments were used when this file was generated. They will be automatically applied on subsequent loads
* via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
* @cliArgs --device "F29H85x" --part "F29H85x_256ZEX" --package "256ZEX" --context "CPU1" --product "MCU_SDK_F29H85x@1.00.00.00"
* @v2CliArgs --device "F29H850TU" --package "256ZEX" --variant "TMS320F29H850TU9" --context "CPU1" --product "MCU_SDK_F29H85x@1.00.00.00"
* @versions {"tool":"1.22.0+3893"}
*/
/**
* Import the modules used in this configuration.
*/
const clocktree = scripting.addModule("/driverlib/clocktree.js");
const jtag = scripting.addModule("/driverlib/jtag.js");
const mcan = scripting.addModule("/driverlib/mcan.js", {}, false);
const mcan1 = mcan.addInstance();
/**
* Write custom configuration values to the imported modules.
*/
const divider8 = system.clockTree["MCANACLKDIV"];
divider8.divideValue = 10;
const divider15 = system.clockTree["PLL_REFDIV"];
divider15.divideValue = 1;
const multiplier1 = system.clockTree["PLL_IMULT"];
multiplier1.multiplyValue = 40;
const mux7 = system.clockTree["OSCCLKSRCSEL"];
mux7.inputSelect = "INTOSC2";
mcan1.$name = "myMCAN0";
mcan1.additionalCoreConfig = true;
mcan1.stdFiltsUsed = [0];
mcan1.loopbackMode = false;
mcan1.nomRatePrescalar = 0;
mcan1.nomTimeSeg1 = 9;
mcan1.nomTimeSeg2 = 8;
mcan1.nomSynchJumpWidth = 8;
mcan1.dataRatePrescalar = 0;
mcan1.mcan.$assign = "MCAND";
mcan1.mcan.mcan_rxPin.$assign = "GPIO68";
mcan1.mcan.mcan_txPin.$assign = "GPIO67";
mcan1.periphClock.$name = "driverlib_perClock0";
mcan1.periphConfig.$name = "driverlib_perConfig0";
mcan1.stdFilt0.$name = "stdFilt0";
mcan1.stdFilt0.sfec = "MCAN_STDFILTEC_RXBUFF";
mcan1.stdFilt0.sfid1 = 4;
/**
* Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
* version of the tool will not impact the pinmux you originally saw. These lines can be completely deleted in order to
* re-solve from scratch.
*/
jtag.JTAG.$suggestSolution = "JTAG";
jtag.JTAG.tdoPin.$suggestSolution = "GPIO223/TDO";
jtag.JTAG.tdiPin.$suggestSolution = "GPIO222/TDI";
我知道这样一个事实、即代码在这段时间有库存:

这是因为 MCAN_TXBRP 为2、所以这意味着缓冲区仍处于等待发送的状态。
我只是想再次确认一下、我没有错过硬件上任何其他与 CAN 相关的更改。
感谢您的支持、
Martin


