资源简介
简单的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 汉化包及汉化方法
相关资源
- 等保主机安全基线合规--配置指导li
- 局域网探测主机存活局域网 主机存活
- ubuntu server 10.4下Apache2的三种虚拟主机
- MFRC522与89C52单片机通信参考例程
- 华信利达消防主机编程
- 软件模拟IIC主从机
- 获得主机域名及其IP和Port端口
- RS232c串口通信在pc与单片机通信的应用
- evo小主机带导航 carplay.rar
- 宝马NBT EVO主机开机数据CAN
- 14 千锋Linux基础教程-2Linux云主机系统
- 威纶触摸屏MODBUS协议的测试数据,与
- CactiEZ10.1部分华为、中兴、H3C交换机主
- 主机安全基线检查表
- 优化scp传输文件到多个主机
- LabVIEW通过串口通信与单片机通信程序
- 单片机通信主从通信
- RS485总线的proteus环境下仿真,实现1主
- Windows主机操作系统安全加固规范 中文
- proteus 双机通信仿真简单实用的单片机
- usb键盘数据格式,键盘按下后,向主
- 基于STM32的温控系统原理图
- 在ROS中开始自主机器人仿真 - 5 机器人
- IBM+P570主机在线更换HBA卡详细过程
- 一件获取本机IP、主机名、和Mac地址小
- 计算机网络高级软件编程技术第3章
- c8051f320 主机从机 SPI程序
- 基于RFID的数据采集网络的设计与实现
- FreeModbus V1.6 主机使用说明
- 斗地主机器人
评论
共有 条评论