Part Number:TMS320F28377DOther Parts Discussed in Thread:C2000WARE
CCS10 28377D 我导入 C:\ti\c2000\C2000Ware_3_04_00_00\driverlib\f2837xd\examples\cpu1\can中的工程:can_ex1_loopback ,该函数是使用了CANB,我想修改为使用CANA,于是在board.c 中将
void PinMux_init()
{
//CANB -> myCAN0 Pinmux
GPIO_setPinConfig(GPIO_10_CANRXB);
GPIO_setPinConfig(GPIO_12_CANTXB);
}
修改为
void PinMux_init()
{
//CANB -> myCAN0 Pinmux
GPIO_setPinConfig(GPIO_4_CANTXA);
GPIO_setPinConfig(GPIO_5_CANRXA);
}
并将board.h中#define myCAN0_BASE CANB_BASE 修改为#define myCAN0_BASE CANA_BASE
control+s保存修改,点击工程build project后,我再打开这两个文件,发现代码自动变为修改前的,下到板子上观察现象 也与修改前一样。
Susan Yang:
user6445572 说:control+s保存修改,点击工程build project后,我再打开这两个文件,发现代码自动变为修改前的
确实是很奇怪。我来测试一下后给您回复
,
Susan Yang:
修改引脚的话,您需要修改
GPIO_setPinConfig(DEVICE_GPIO_CFG_CANRXA); GPIO_setPinConfig(DEVICE_GPIO_CFG_CANTXA);
内的引脚,它们是定义在device.h内的
// // CAN External Loopback // #define DEVICE_GPIO_CFG_CANRXAGPIO_30_CANRXA// "pinConfig" for CANA RX #define DEVICE_GPIO_CFG_CANTXAGPIO_31_CANTXA// "pinConfig" for CANA TX #define DEVICE_GPIO_CFG_CANRXBGPIO_10_CANRXB// "pinConfig" for CANB RX #define DEVICE_GPIO_CFG_CANTXBGPIO_8_CANTXB// "pinConfig" for CANB TX引脚的说明是在pinmap.h
,
user6445572:
没解决问题。我发现只有 工程目录\CPU1_RAM\syscfg 中的这两个文件 board.c和board.h 中的任何代码,修改保存,build project后都会自动恢复原样。工程下其他文件可以正常修改。或许是工程属性配置的问题?我这个例程从C2000 Ware copy过来还没修改过工程属性。
,
Susan Yang:
user6445572 说: 工程目录\CPU1_RAM\syscfg 中的这两个文件
我使用您给出的 C:\ti\c2000\C2000Ware_3_04_00_00\driverlib\f2837xd\examples\cpu1\can 例程
在其工程目录内是没有syscfg 这个文件夹的
,
user6445572:
刚导入工程的时候,CPU1_RAM文件夹下什么也没有。build project后该文件夹下才出现一些文件和新的文件夹,包括syscfg
,
Susan Yang:
请给出您的CCS内工程目录截图
,
user6445572:
不过只有CAN 的第一个例程出现这种现象,它使用了其他例程没用的 Board_init();函数。我看把这个函数换成其他例程相应位置的代码得了。
,
Susan Yang:
您是使用下面的方式添加的syscfg
https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/910829/faq-how-do-i-add-sysconfig-support-pinmux-and-peripheral-initialization-to-an-existing-driverlib-project/3366090?tisearch=e2e-sitesearch&keymatch=C2000%2525252520%2525252520syscfg#3366090
我直接导入例程的话,是没有syscfg的
若是使用syscfg的话,您可以在工程内的syscfg文件内进行修改