www.pudn.com > 12can.rar > remote_can_r.c
/////////远程帧控制接收程序/////////////////////
//////////remote_can_r.c///////////////////////
#include "candeal2.h"
#define LEN 8
#define MSGNUMA 2
#define MSGNUMB 5
#define NUMAPEND 0x0002
#define NUMBPEND 0x0010
xdata uchar rr1[LEN];
xdata uchar rr2[LEN];
xdata uchar ss1[LEN]={0xb1,0xb2,0xb3,0xb4,0xb5,0xb6,0xb7,0xb8};
xdata uchar ss2[LEN]={0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8};
bit isupB;
xdata uchar countA;
void canini(){
clear_msg_objects();
remote_rqst_ini(MSGNUMA,2);
remote_send_ini(MSGNUMB,4);
EIE2 |= 0x20;
EA = 1;
SFRPAGE = CAN0_PAGE;
CAN0CN=0X41;
CAN0ADR=BITREG;
CAN0DAT=0X34c0;//调波特率
start_CAN();
}
void config(){
//看门狗禁止
WDTCN = 0x07;
WDTCN = 0xDE;
WDTCN = 0xAD;
SFRPAGE = 0x0F;
//交叉开关使能,但没有进行外围设备配置
XBR0 = 0x00;
XBR1 = 0x00;
XBR2 = 0x40;
XBR3 = 0x00;
//管脚输出配置,P0口为开漏输出,其中P0.6接上拉电阻,P0为数字输入口
SFRPAGE = 0x0F;
P0MDOUT = 0x00;
P1MDIN = 0xFF;
//晶振配置,采用内部晶振8分频
SFRPAGE = 0x0F;
CLKSEL = 0x00;
OSCXCN = 0x00;
OSCICN = 0x84;
}
main(){
uchar i;
config();
for(i=0;i