找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2223|回复: 6
收起左侧

100黑币求一个485参考程序希望有的能够帮助我一下

[复制链接]
ID:125710 发表于 2016-10-12 15:14 | 显示全部楼层 |阅读模式
100黑币
最近485马上要写程序了,一头雾水。有几个问题请教大家。
情况如下:5台485设备使用一个51单片机程序每台20个节点(不管主机从机都是烧一个程序),通过4位拨码开关设置地址和自动识别主机从机
目前困难就是我怎么通过拨码开关去设置485地址(和自动识别主机从机),程序怎么写。可否给我一个仿真教程或者类似的程序。不胜感激。

回复

使用道具 举报

ID:125710 发表于 2016-10-12 23:03 | 显示全部楼层
帮帮忙。我写个示范 比如拨码开关是P1 00000001代表A1   00000011代表A2 00000111代表A3 00001111代表A4我知道大致意思,就是写不出 无法套用
回复

使用道具 举报

ID:126072 发表于 2016-10-19 13:31 | 显示全部楼层
建议去贴吧看看 或者百度
回复

使用道具 举报

ID:97438 发表于 2016-10-19 16:36 | 显示全部楼层
定义一个变量,这个变量的功能就是通讯的地址,然后呢,这个变量的值,是通过读取P1的值得到的~
回复

使用道具 举报

ID:123732 发表于 2016-10-19 18:03 | 显示全部楼层
2500 发表于 2016-10-12 23:03
帮帮忙。我写个示范 比如拨码开关是P1 00000001代表A1   00000011代表A2 00000111代表A3 00001111代表A4我 ...
  1. /*********************************************************************************************
  2. 编写:刘海龙
  3. 程序名:测试
  4. 硬件支持:在P1或者P2或者P3口接上拨码开关,拨码开关另一端接地
  5.                   此程序以P1口接拨码开关为例
  6. /*********************************************************************************************/
  7. #include <REG51.h>  
  8. unsigned char address;
  9. void main(void)//
  10. {
  11.      while (1)
  12.    {
  13.      //假如K1(P1.0)K2(P1.1)K3(P1.2)通过拨码开关接地
  14.           
  15.         address=P1;//读取P1口开关的状态把值传递给变量address
  16.                            //此时address的值为1111 1000        (地址就是0xf8)

  17.    }
  18. }

  19. /************************************END*********************************************************/
复制代码
回复

使用道具 举报

ID:123732 发表于 2016-10-19 18:03 | 显示全部楼层
/*********************************************************************************************
编写:刘海龙
程序名:测试
硬件支持:在P1或者P2或者P3口接上拨码开关,拨码开关另一端接地
                  此程序以P1口接拨码开关为例
/*********************************************************************************************/
#include <REG51.h>  
unsigned char address;
void main(void)//
{
     while (1)
   {
     //假如K1(P1.0)K2(P1.1)K3(P1.2)通过拨码开关接地
          
        address=P1;//读取P1口开关的状态把值传递给变量address
                           //此时address的值为1111 1000        (地址就是0xf8)

   }
}

/************************************END*********************************************************/
回复

使用道具 举报

ID:123732 发表于 2016-10-19 18:09 | 显示全部楼层
本帖最后由 刘海龙 于 2016-10-19 18:44 编辑

测试.rar (452 Bytes, 下载次数: 5)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表