can(汇编及C语言)程序,89c52+sja1000+tja1040 点击:602 | 回复:0



nnyt

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 2回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2006年10月04日
发表于:2007-12-09 11:50:00
楼主
can(汇编及C语言)程序,与大家分享 

本人同时提供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 <AT89X51.H>
#include <SJA_nnyt.H>                           //SJA存储器定义头文件
#include <SJA_nnyt.C>                           //SJA子程序文件
#include <display_s.h>                              //显示头文件
#include<string.h>         //字符串函数
//***************************头文件***************************************************//
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;           &nb


热门招聘
相关主题

官方公众号

智造工程师