can(汇编及C语言)通讯程序 点击:513 | 回复:0



nnyt

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 2回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2006年10月04日
发表于:2007-05-06 09:57:00
楼主
本人同时提供can实验开发板给初学者 1 CAN控制器为SJA1000,驱动器为TJA1050,电源隔离; 2 提供详尽的源程序,可根据用户需求编写程序 联系我:13671387011(短信联系,QQ详谈) QQ: 531706356 详见我的博客]http://blog.sina.com.cn/nnyt ***************************************************
//节点1向CAN节点2发送数据,数据的头两个字节分别是:节点1的ID和要求节点2回复的数据长度
//节点2收到节点1的信息后,立即按照节点1的要求回复数据
//************************************************************************************************
#include 
#include                            //SJA存储器定义头文件
#include                            //SJA子程序文件
#include                               //显示头文件
#include         //字符串函数
//***************************头文件***************************************************//
void Init_Cpu(void);                                //初始化单片机
void Sja_1000_Init(void);                           //初始化SIA
//************************************************************************************
bit s;                                              //配置sja标志
bit flag_send;                                      //发送命令标志
unsigned char data a[5]={0x05,0x05,0x05,0x05,0x05}; //显示"5"
unsigned char b[5]={0x12,0x12,0x12,0x12,0x12};      //显示"p"
unsigned char c[5]={0x01,0x01,0x01,0x01,0x01};      //显示"1"
unsigned char data  send_data[10],rcv_data[10];     //发送和接收数组
unsigned char bdata flag_init;                      //保存中断寄存器值
unsigned int count_k;                               //延时记数用
sbit rcv_flag=flag_init^0;                          //接收中断标志
sbit err_flag=flag_init^2;                          //错误中断标志
//***********************************************************************************//
void main(void)
{   

    s=0;                                            //配置sja1000出现错误时,重新初始化
&nb


热门招聘
相关主题

官方公众号

智造工程师