资源简介
简单的485总线通信,1个主机和3个从机(我认为不要主机也可以)通信,带正确Proteus仿真。实现三个房间的照明灯三联控功能

代码片段和文件信息
#include
unsigned char data1=0xffaddressflag;
sbit key1=P0^0;
sbit key2=P0^1;
sbit key3=P0^2;
sbit led1=P1^0;
sbit led2=P1^1;
sbit led3=P1^2;
sbit rd=P2^0;
sbit zhishi1=P2^6;
sbit zhishi2=P2^7;
void delay(unsigned int i)
{
while(i--);
}
void chuankou_init()
{
TMOD=0x20;//定时器1工作在方式2,8位自动重装定时器作串口波特率发生器
PCON=0x70;//设置SMOD为0
TH1=TL1=0xF9;//装初值,波特率为4800
TR1=1; //启动定时器
SCON=0Xd0;//设置串口工作在方式3,REN=1,允许接收
IE=0X90;//允许串口中断,不允许定时器溢出
SM2=1; //使能多机通信
}
void main()
{
chuankou_init();
rd=0;//接收模式
while(1)
{
if(P0!=0xff)
{ delay(500);
if(P0!=0xff)
{ rd=1;//发送模式
delay(1000);
if(!key1)
{led1=!led1;data1=0x11;}
else if(!key2)
{led2=!led2;data1=0x12;}
else if(!key3)
{led3=!led3;data1=0x13;}
ES=0;
TB8=1;
SBUF=0x01;
while(!TI);
TI=0;
TB8=0;
SBUF=data1;
while(!TI);
TI=0;
ES=1;
rd=0;//还原为接收模式
}
while(P0!=0xff);
}
if(flag)
{
if(data1==0x11)
led1=!led1;
else if(data1==0x12)
led2=!led2;
if(data1==0x13)
led3=!led3;
flag=0;
}
}
}
void chuankou_zhongduan() interrupt 4
{
if(RI)
{
if(SM2)
{
address=SBUF;
switch(address)
{
case 0x01:zhishi1=0;zhishi2=1;SM2=0;break;
case 0x02:zhishi1=1;zhishi2=0;break;
case 0x03:zhishi1=1;zhishi2=1;break;
default:break;
}
}
else
{
data1=SBUF;
flag=1;
SM2=1;
}
RI=0;
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 49152 2010-05-21 21:16 机机485总线通信\程序代码.doc
文件 1893 2010-06-05 16:04 机机485总线通信\单片机通信.PWI
文件 102827 2010-05-22 20:06 机机485总线通信\Last Loaded 单片机通信.DBK
文件 102827 2010-05-22 20:06 机机485总线通信\单片机通信.DSN
文件 119776 2010-05-22 23:00 机机485总线通信\Last Loaded 单片机485总线通信.DBK
文件 119776 2010-05-22 23:00 机机485总线通信\单片机485总线通信.DSN
文件 1893 2010-05-22 23:00 机机485总线通信\单片机485总线通信.PWI
文件 194 2010-05-22 15:45 机机485总线通信\双向通信_收发程序一致\fasong.plg
文件 1580 2010-05-22 15:24 机机485总线通信\双向通信_收发程序一致\fasong.c
文件 7215 2010-05-22 15:39 机机485总线通信\双向通信_收发程序一致\fasong.M51
文件 1105 2010-05-22 15:39 机机485总线通信\双向通信_收发程序一致\fasong.hex
文件 5722 2010-05-22 15:39 机机485总线通信\双向通信_收发程序一致\fasong.LST
文件 5156 2010-05-22 15:39 机机485总线通信\双向通信_收发程序一致\fasong.OBJ
文件 4690 2010-05-22 15:39 机机485总线通信\双向通信_收发程序一致\fasong
文件 1958 2010-05-22 14:18 机机485总线通信\双向通信_收发程序一致\fasong_Uv2.Bak
文件 1996 2010-05-22 15:44 机机485总线通信\双向通信_收发程序一致\fasong.Uv2
文件 1229 2010-05-22 15:44 机机485总线通信\双向通信_收发程序一致\fasong_Opt.Bak
文件 1236 2010-05-22 15:45 机机485总线通信\双向通信_收发程序一致\fasong.Opt
文件 5022 2010-05-22 23:00 机机485总线通信\congji3\congji3.plg
文件 1717 2010-05-22 22:59 机机485总线通信\congji3\congji3.c
文件 7489 2010-05-22 22:59 机机485总线通信\congji3\congji3.M51
文件 1111 2010-05-22 22:59 机机485总线通信\congji3\congji3.hex
文件 0 2010-05-22 16:39 机机485总线通信\congji3\congji3_Uv2.Bak
文件 1999 2010-05-22 16:47 机机485总线通信\congji3\congji3.Uv2
文件 6207 2010-05-22 22:59 机机485总线通信\congji3\congji3.LST
文件 5067 2010-05-22 22:59 机机485总线通信\congji3\congji3.OBJ
文件 4686 2010-05-22 22:59 机机485总线通信\congji3\congji3
文件 1021 2010-05-22 20:09 机机485总线通信\congji3\congji3_Opt.Bak
文件 1023 2010-05-22 23:00 机机485总线通信\congji3\congji3.Opt
文件 4291 2010-05-22 23:00 机机485总线通信\congji1\congji1.plg
............此处省略68个文件信息
- 上一篇:进度条显示导出文件进度
- 下一篇:multisim11.0 汉化包及汉化方法
相关资源
- 51单片机通信采样proteus仿真方波转化
- powerbuilder获取本地IP地址或主机名
- MCGS与单片机通信
- VC 编程实现活动主机扫描源代码
- 英特尔USB3.0可扩展主机控制器驱动程
- IBM DS5100/DS5300主机接口卡的配置方法
- HostMonitor主机监控软件10.60破解版注册
- STM32F103移植FreeModbus实现modbus主机.zi
- 郭天祥的GSM与51单片机通信程序一
- arduino主机,stm8从机。I2C测试 。每次
- STM32硬件IIC主机例程以读写EEPROM为例
- stm32实现modbus主机从机功能通信
- 诺蒂菲尔3030主机说明书
- 探测网段中的活动主机
- 2010年最新利用135端口入侵网吧主机教
- STM8L 硬件IIC主机
- 利达LD128E消防主机说明
- 串口-Lin通信主、从工程代码.zip
- 主机安全安全检测报告.doc
- modbus主机源码.rar
- 开源团免费虚拟主机
- 网络嗅探,主机扫描,端口扫描
- modbus-主机-stm32移植源码与调试工具
- 最新版主机宝V2.0.9
- stm32 modbus主机程序
- STM32单片机实现Modbus协议主机2个源码
- 常用_Modbus-RTU测试工具_主从机都有
- 包过滤主机防火墙技术的研究
- 星外虚拟主机管理系统破解版+主控被
- stm32的modbus主机电表读数
评论
共有 条评论