历史上的今天
今天是:2025年01月12日(星期日)
2020年01月12日 | TJA1020+51单片机实现的LIN总线通讯源程序(master+slave)
2020-01-12 来源:51hei

LIN mater的51单片机代码
/**************master*****************/
#include #include sbit p31=P3^1; sbit k1=P1^0; sbit k2=P1^1; sbit p20=P2^0; unsigned char t; unsigned char sendflag, flag; void delay(unsigned int i) { while(i--); } void send() { // 同步 ID data1 data2 data3 data4 data5 data6 data7 data8 checksum unsigned char code table1[11]={0x55, 0x55, 0x3f, 0x80 ,0x00 ,0x00 ,0xff ,0x64 ,0x10 , 0xfc , 0x79 }; // 同步 ID data1 data2 data3 data4 data5 data6 data7 data8 checksum unsigned char code table2[11]={0x55, 0x55, 0x3f, 0x80 ,0x00 ,0xff ,0x00 ,0x64 ,0x10 , 0xfc , 0x79 }; /* 发送一帧报文 */ unsigned char i ; p31=0; //间歇场 delay(96); //96 p31=1; delay(2); //_nop_(); _nop_(); _nop_(); for(i=0;i<11;i++) { if(flag==1) SBUF=table1[i]; if(flag==2) SBUF=table2[i]; while(TI==0); TI=0; } } void delayms(unsigned int x) //报文间隔发送延时 { unsigned int i; unsigned char j; for(i=0;i } void init(void) { /*******19.2k波特率****** */ SCON=0x50; //串口方式1 8个数据位 TMOD=0x20; PCON=0x80; //0x80=19.2k/s TH1 =TL1 = 0xfd; // ES=1; //串行中断允许 TR1=1; //启动定时器1 EA= 1; IP=0x10;//串口中断优先 } void main() { init(); flag=1; while(1) { P2=0xFE; P0=0x92; send(); /* 发送完成 */ delayms(200) ; //发送间隔周期 if(k1==0) { while(k1==0); flag=1; } if(k2==0) { while(k2==0); //抬键程序才往下执行 flag=2; } } }
史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 03:17 编辑 有那位高人能提供智能循迹小车驱动电路的pcb呀 核心板芯片是pc9s12xs128的 电机驱动电路的芯片是33886的 或是其他的芯片耶可以 还有能否提供光电探测板的电路图和pcb 在这 ...… 查看全部问答> |
|
Microsoft Communication Controls Version 6.0 不支持此接口 RT. 我用vc6.0新建了个对话框的工程,添加MSComm控件时,出现了上面的提示,无法插入该控件。 这个该如何解决?… 查看全部问答> |
|
sql ce2.0用rda连接sql server,出现问题,在线等 请教一个问题,我用rda连接sql server ,但出现以下错误: 未处理的“System.Data.SqlServerCe.SqlCeException”类型的异常出现在 System.Data.SqlServerCe.dll 中。 我是C# 2003、sql server 2000、Pda是win mobile 5.0 我的代码如下: string ...… 查看全部问答> |
|
因为平时使用CAN总线很多,所以这次专门找时间,试用了一下lm3s8962的CAN功能,附件就是我简单试用时,使用的程序。(接收指定ID的CAN数据,并通过串口输出)程序中还有不明之处,望指点!! 例程中对CAN报文对象设置时: // CAN接收报文对象设置tC ...… 查看全部问答> |
|
LED具有低功耗、寿命长、环保等鲜明的特点,在从小尺寸背光应用领域向大尺寸面板背光进行渗透之后,现在进一步向通用照明应用领域扩张,目前已经在景观、建筑、商业、汽车、移动照明等领域快速发展。 面对LED照明的众多应用领域,由于市场并没 ...… 查看全部问答> |
|
实现功能:我用串口接收PC端一串数据 然后在把数组中的数据发送给串口 传到PC 遇到问题:串口接收正常 但是发送每次只能发送一两个数据 环境 :串口5 中断接收 请大家帮忙分析下原因 谢谢! ...… 查看全部问答> |
|
有与之前的帖子很久没更新,不能去更新了。现在只能重新发帖了。。以前的贴地址:https://bbs.eeworld.com.cn/thread-297778-1-1.html 这块板子很适合做嵌入式的。最近在用最快板子搞控制,和通信类的。现在传上简单的LCD12864的实验结果及程序吧 ...… 查看全部问答> |
|
一、主程序: #include \"DSP28_Device.h\" float ADResult; unsigned int k=0; float adclo; interrupt void ADC_ISR(void); void main(void) {   ...… 查看全部问答> |




