wx_4008736472 发表于 2022-1-15 11:42:07

CAN通讯程序例子

定义变量程序:
AR
        fb_GetMsg_0x1F9        : FB_CAN_RXMSG;                        (* 接收CAN总线上的消息        *)
        tB_GetMsg_0x1F9                 : ARRAY OF BYTE;

        fb_SetMsg_0x200        : FB_CAN_TXMSG;                        (* 发送到CAN总线的消息        *)
        tB_SetMsg_0x200                 : ARRAY OF BYTE;

        b_CAN_Get_0                 : BOOL ;
        b_CAN_Get_1                 : BOOL ;
        b_CAN_Get_2                 : BOOL ;
        b_CAN_Get_3                 : BOOL ;
        u8_CAN_Get_0                 : BYTE ;

        b_CAN_Set_0                 : BOOL ;
        b_CAN_Set_1                 : BOOL ;
        b_CAN_Set_2                 : BOOL ;
        b_CAN_Set_3                        : BOOL ;
        u8_CAN_Set_0                 : BYTE ;
END_VAR

主程序:
(* CAN通信:接收*)
fb_GetMsg_0x1F9(        EN                := TRUE,
                                        Bus_Num                := X_CAN_BUS_01,
                                        FORMAT                := CAN_11Bit,
                                        ID                                := 16#1F9,
                                        BUF_Lgh                 := 0,
                                        DATA                        => tB_GetMsg_0x1F9);
(*解析接收到的数据*)
b_CAN_Get_0                :=tB_GetMsg_0x1F9.0;(*位*)
b_CAN_Get_1                :=tB_GetMsg_0x1F9.1;(*位*)
b_CAN_Get_2                :=tB_GetMsg_0x1F9.2;(*位*)
b_CAN_Get_3                :=tB_GetMsg_0x1F9.3;(*位*)
u8_CAN_Get_0        :=tB_GetMsg_0x1F9;(*字节*)

(* CAN通信:发送*)
tB_SetMsg_0x200.0 :=         b_CAN_Set_0       ;(*位*)
tB_SetMsg_0x200.1 :=         b_CAN_Set_1       ;(*位*)
tB_SetMsg_0x200.2 :=                b_CAN_Set_2       ;(*位*)
tB_SetMsg_0x200.3 :=                b_CAN_Set_3       ;(*位*)
tB_SetMsg_0x200         :=                u8_CAN_Set_0 ;(*字节*)
fb_SetMsg_0x200(EN                := TRUE,
                                                               Bus_Num        := X_CAN_BUS_01,
                                                               FORMAT        := CAN_11Bit,
                                                               ID                := 16#200,
                                                               DLC                := 8,
                                                               DATA                := tB_SetMsg_0x200,
                                                               BUF_Lgh := 1);

我是看不懂,新手一个,谁看懂了回复一下

admin 发表于 2022-1-17 16:54:55

贴完整的工程上来啊

wx_8617624557 发表于 2022-2-9 09:13:36

没有这样传的资料

焕游仁阿生 发表于 2024-3-21 13:36:17

学习学习
页: [1]
查看完整版本: CAN通讯程序例子