TI中文支持网
TI专业的中文技术问题搜集分享网站

F280049 用 driverlib编程,有没有专门的手册解释各个子函数的。用惯了28035,用库编程不习惯,不清楚里面是啥 不敢用。

Other Parts Discussed in Thread:C2000WARE

F280049 用 driverlib编程,有没有专门的手册解释各个子函数的。用惯了28035,用库编程不习惯,不清楚里面是啥 不敢用。

Susan Yang:

您可以下载C2000ware,其安装文件夹内有文档 F28004x_DriverLib_Users_Guide 以及 F28004x_DriverLib_API_Guide

路径:

C2000Ware_2_01_00_00\device_support\f28004x\docs

,

user4675816:

C2000Ware_3_03_00_00版本没有你说的这两个文件。另外CAN通信的寄存器版例程哪里能获得。新版的手册CAN部分框图都没有了,全是文字描述,例程也只有寄存器版本,根本看不懂。

,

Susan Yang:

user4675816 说:C2000Ware_3_03_00_00版本没有你说的这两个文件。

好像这个版本里确实没有找到,我附件附上该文件

F28004x_DriverLib_Users_Guide.pdf

user4675816 说:CAN通信的寄存器版例程哪里能获得

目前是没有寄存器版本的CAN例程的,driverlib的相关例程参考

C2000Ware_3_03_00_00\driverlib\f28004x\examples\can

关于driverlib内该CAN例程的话,建议您查看 C2000Ware_3_03_00_00\driverlib\f28004x\driverlib内的can.c来了解相关的函数定义

,

user4675816:

Driverlib中提供的函数根本不足够做复杂的用户个性化配置。中断使能要么全开要么全关,RxIE,TxIE分别配置都不能。想用寄存器配置,CAN寄存器那个共用体叫什么名字我都没查到。比如操作GPIO就用GpioCtrlRegs。CAN的叫啥。CAN.h里面只有被封装的函数。库编程极不成熟啊,这玩意能用?

,

Susan Yang:

首先请您参考TI例程,如can_ex2_loopback_interrupts

user4675816 说:中断使能要么全开要么全关,RxIE,TxIE分别配置都不能。

麻烦看一下

//// Enable the CAN interrupt signal//Interrupt_enable(INT_CANA0);

以及

//
// CAN ISR - The interrupt service routine called when a CAN interrupt is
//triggered.It checks for the cause of the interrupt, and
//maintains a count of all messages that have been transmitted.
//
__interrupt void
canISR(void)

您可以在中断服务程序内来判断是收还是发引起的中断

user4675816 说:操作GPIO就用GpioCtrlRegs。CAN的叫啥

//// Initialize GPIO and configure GPIO pins for CANTX/CANRX//Device_initGPIO();GPIO_setPinConfig(DEVICE_GPIO_CFG_CANRXA);GPIO_setPinConfig(DEVICE_GPIO_CFG_CANTXA);

user4675816 说:CAN寄存器那个共用体叫什么名字我都没查到。

 //// Initialize the transmit message object used for sending CAN messages.// Message Object Parameters://Message Object ID Number: 1//Message Identifier: 0x1//Message Frame: Standard//Message Type: Transmit//Message ID Mask: 0x0//Message Object Flags: Transmit Interrupt//Message Data Length: 4 Bytes//CAN_setupMessageObject(CANA_BASE, TX_MSG_OBJ_ID, 0x1, CAN_MSG_FRAME_STD,CAN_MSG_OBJ_TYPE_TX, 0, CAN_MSG_OBJ_TX_INT_ENABLE,MSG_DATA_LENGTH);//// Initialize the receive message object used for receiving CAN messages.// Message Object Parameters://Message Object ID Number: 2//Message Identifier: 0x1//Message Frame: Standard//Message Type: Receive//Message ID Mask: 0x0//Message Object Flags: Receive Interrupt//Message Data Length: 4 Bytes//CAN_setupMessageObject(CANA_BASE, RX_MSG_OBJ_ID, 0x1, CAN_MSG_FRAME_STD,CAN_MSG_OBJ_TYPE_RX, 0, CAN_MSG_OBJ_RX_INT_ENABLE,MSG_DATA_LENGTH);

,

user4675816:

我希望只开CAN接收中断,不想开CAN发送中断。发送用查询方式。以免中断太多影响算法。怎用库函数配置?CAN_enableInterrupt()一次性打开所有中断实际应用时不能这么搞 啊。CAN寄存器编程时那个共用体的名字叫什么,不是指库编程接口。我想自己用寄 存器写初始化函数,不想用库编程,太不灵活了。

,

Susan Yang:

我们在您新发的帖子内继续讨论:

e2echina.ti.com/…/614826

赞(0)
未经允许不得转载:TI中文支持网 » F280049 用 driverlib编程,有没有专门的手册解释各个子函数的。用惯了28035,用库编程不习惯,不清楚里面是啥 不敢用。
分享到: 更多 (0)