找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2684|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

100黑幣求一個(gè)485參考程序希望有的能夠幫助我一下

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
#
ID:125710 發(fā)表于 2016-10-12 15:14 | 只看該作者 回帖獎(jiǎng)勵(lì) |正序?yàn)g覽 |閱讀模式
100黑幣
最近485馬上要寫程序了,一頭霧水。有幾個(gè)問(wèn)題請(qǐng)教大家。
情況如下:5臺(tái)485設(shè)備使用一個(gè)51單片機(jī)程序每臺(tái)20個(gè)節(jié)點(diǎn)(不管主機(jī)從機(jī)都是燒一個(gè)程序),通過(guò)4位撥碼開關(guān)設(shè)置地址和自動(dòng)識(shí)別主機(jī)從機(jī)
目前困難就是我怎么通過(guò)撥碼開關(guān)去設(shè)置485地址(和自動(dòng)識(shí)別主機(jī)從機(jī)),程序怎么寫?煞窠o我一個(gè)仿真教程或者類似的程序。不勝感激。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

6#
ID:123732 發(fā)表于 2016-10-19 18:09 | 只看該作者
本帖最后由 劉海龍 于 2016-10-19 18:44 編輯

測(cè)試.rar (452 Bytes, 下載次數(shù): 5)
回復(fù)

使用道具 舉報(bào)

5#
ID:123732 發(fā)表于 2016-10-19 18:03 | 只看該作者
/*********************************************************************************************
編寫:劉海龍
程序名:測(cè)試
硬件支持:在P1或者P2或者P3口接上撥碼開關(guān),撥碼開關(guān)另一端接地
                  此程序以P1口接撥碼開關(guān)為例
/*********************************************************************************************/
#include <REG51.h>  
unsigned char address;
void main(void)//
{
     while (1)
   {
     //假如K1(P1.0)K2(P1.1)K3(P1.2)通過(guò)撥碼開關(guān)接地
          
        address=P1;//讀取P1口開關(guān)的狀態(tài)把值傳遞給變量address
                           //此時(shí)address的值為1111 1000        (地址就是0xf8)

   }
}

/************************************END*********************************************************/
回復(fù)

使用道具 舉報(bào)

地板
ID:123732 發(fā)表于 2016-10-19 18:03 | 只看該作者
2500 發(fā)表于 2016-10-12 23:03
幫幫忙。我寫個(gè)示范 比如撥碼開關(guān)是P1 00000001代表A1   00000011代表A2 00000111代表A3 00001111代表A4我 ...
  1. /*********************************************************************************************
  2. 編寫:劉海龍
  3. 程序名:測(cè)試
  4. 硬件支持:在P1或者P2或者P3口接上撥碼開關(guān),撥碼開關(guān)另一端接地
  5.                   此程序以P1口接撥碼開關(guān)為例
  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)通過(guò)撥碼開關(guān)接地
  14.           
  15.         address=P1;//讀取P1口開關(guān)的狀態(tài)把值傳遞給變量address
  16.                            //此時(shí)address的值為1111 1000        (地址就是0xf8)

  17.    }
  18. }

  19. /************************************END*********************************************************/
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

板凳
ID:97438 發(fā)表于 2016-10-19 16:36 | 只看該作者
定義一個(gè)變量,這個(gè)變量的功能就是通訊的地址,然后呢,這個(gè)變量的值,是通過(guò)讀取P1的值得到的~
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:126072 發(fā)表于 2016-10-19 13:31 | 只看該作者
建議去貼吧看看 或者百度
回復(fù)

使用道具 舉報(bào)

樓主
ID:125710 發(fā)表于 2016-10-12 23:03 | 只看該作者
幫幫忙。我寫個(gè)示范 比如撥碼開關(guān)是P1 00000001代表A1   00000011代表A2 00000111代表A3 00001111代表A4我知道大致意思,就是寫不出 無(wú)法套用
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表