新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 利用C164单片机设计自动摊铺机通信模块

利用C164单片机设计自动摊铺机通信模块

作者:时间:2012-08-31来源:网络收藏

下面为实现串口的通信程序:

#include

unsigned int a;

interrupt(0x2B) void S0RINT(void) //接收中断服务子程序

{

a=S0RBUF; //将接收数据保存

}

void putchar(unsigned char tdata) //串行发送程序

{

while(!S0TBIR){;} //等待发送缓冲区清空

S0TBIR=0; //复位发送缓冲区中断请求标志

S0TBUF=tdata; //装载发送缓冲寄存器

}

void ASC_vInit(void) //串行通信初始化

{

S0CON=0x8011; //定义控制寄存器:SOR=1;SOREM=1;串行方式1

S0BG=0x0040; //定义波特率9 600Bd

S0RIC=0x0062; //定义接收中断控制寄存器

S0TBIC=0x0080; //定义发送缓冲控制寄存器

P3 |=0x0400; //定义P3.10引脚为输出锁存(TXD0)

DP3 |=0x0400; //定义P3.10方向控制(TXD0为输出)

Dp3 =0xF7FF; //定义P3.11方向控制(RXD0为输入)

IEN=1; //开中断

}

void main(void)

{

……;

ASC_vInit(); //串口初始化

putchar(‘……’); //串行发送

……;

}

6.CAN总线通信软件设计

6.1 CI的CAN模块概述

CI的CAN模块特点如下:

(1)遵循CAN V2.0B规定(符号标准和扩展功能)。

(2)最大CAN通信速率为1MB/S。

(3)完全的CAN装置:

l 15个信息体,带有自己的识别器和状态控制位;

l 每个信息体可以定义为发送或接收。

(4)通过在片内部XBUS(16位独立方式)与主CPU相连(C166-内核)。

(5)接收滤波器用可编程屏蔽寄存器:

l 全域屏蔽输入信息体(全CAN功能);

l 信息体15有附加屏蔽(基本CAN功能);

l 灵活的中断事件控制;

l 带有两个接收缓冲器;

l 用自己的全域屏蔽寄存器进行接接收滤波。



评论


相关推荐

技术专区

关闭