久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 15302|回復(fù): 30
收起左側(cè)

Rs485通信單片機C程序

  [復(fù)制鏈接]
ID:208133 發(fā)表于 2017-6-5 18:54 | 顯示全部樓層 |閱讀模式
Rs485通信單片機源程序如下:
  1. /*******************************************************************************
  2. *  標題:                  RS485串口通信試驗(接受與發(fā)送)                         *
  3. *                                                                                                                                                            *
  4. *  1.通過本例程了解串口的基本原理及使用 ,理解并掌握對串口進行初始化                            *
  5. *                                                                                                                                                                *
  6. *  2.請使用串口調(diào)試助手(Baud 4800、數(shù)據(jù)位8、停止位1、效驗位無)做為上位機(發(fā)送)數(shù)據(jù)和(接受)數(shù)據(jù),
  7. *    請在字符串輸入框中輸入字符和數(shù)字(HEX),按發(fā)送按鈕。觀看接受窗顯示情況.也可以用自動循環(huán)發(fā)送。
  8. *
  9. *  3.試驗RS485需要用RS232轉(zhuǎn)485的轉(zhuǎn)換頭。開板A對485轉(zhuǎn)換頭A  B對應(yīng)485轉(zhuǎn)換頭B.接法大家可以參考原理圖。
  10. *                                                                                       *
  11. * 請學(xué)員認真消化本例程,學(xué)會用C語言操作串口和485的實現(xiàn)                              *
  12. ********************************************************************************/

  13. #include <REG52.H>
  14. #include <stdio.h>

  15. sbit RS485E=P3^7;   //定義485的使能腳
  16. bit SendFlag;
  17. unsigned int ReData,SenData;

  18. /**************************************
  19.             延時程序
  20. **************************************/
  21. void delay(unsigned char i)
  22. {
  23.         unsigned char j;
  24.         for(i; i > 0; i--)
  25.                 for(j = 200; j > 0; j--);
  26. }


  27. void main (void) {


  28.         SCON = 0x50;      //REN=1允許串行接受狀態(tài),串口工作模式1                             
  29.             TMOD|= 0x20;      //定時器工作方式2                    
  30.                 PCON|= 0x80;                                                         
  31.                 TH1  = 0xFd;     //baud*2  /* reload value 19200、數(shù)據(jù)位8、停止位1。效驗位無 (11.0592)   
  32.                 //TH1 = 0xF3;         // //baud*2  /*  波特率4800、數(shù)據(jù)位8、停止位1。效驗位無 (12M)
  33.             TL1 = 0xF3;      
  34.                 TR1  = 1;                                                            
  35.                 ES   = 1;        //開串口中斷                  
  36.                 EA   = 1;        // 開總中斷
  37.        
  38.            // IE = 0x0;
  39.    
  40.         while(1)
  41.     {
  42.        
  43.           if (SendFlag==1)    // max485(半雙工通信) RE/DE定義 RE=0為接受狀態(tài)  DE=1為發(fā)送狀態(tài)(參考MAX485芯片管腳)
  44.              {   RS485E=1;           //                              RS5485E=0為接收狀態(tài)  RS5485E=1為發(fā)送狀態(tài)
  45.               SBUF=SenData;           //發(fā)送數(shù)據(jù)
  46.                   delay(50);
  47.        }
  48.          else
  49.           {

  50.               RS485E=0;              //接收狀態(tài)
  51.           }

  52. }

  53. }

  54. /****************************************************
  55.                串口中斷程序
  56. ******************************************************/
  57. void ser_int (void) interrupt 4 using 1
  58. {
  59. if(TI == 1)
  60. {
  61.         TI = 0;
  62.         SendFlag = 0;
  63. }
  64. ……………………

  65. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
C程序.zip (17.23 KB, 下載次數(shù): 384)


評分

參與人數(shù) 3黑幣 +6 收起 理由
gsr64 + 1 很給力!
黃釗 + 1
154462859 + 4 贊一個!

查看全部評分

回復(fù)

使用道具 舉報

ID:47286 發(fā)表于 2017-6-5 21:00 | 顯示全部樓層
不用做發(fā)送標記來改變485芯片的狀態(tài) 上電后485的控制端置低 一直出于接收狀態(tài) 發(fā)送函數(shù)里置高 發(fā)送完畢拉低就行了
回復(fù)

使用道具 舉報

ID:208410 發(fā)表于 2017-6-6 14:53 | 顯示全部樓層
好東西,謝謝樓主!!!!!!!!!!!
回復(fù)

使用道具 舉報

ID:234694 發(fā)表于 2017-11-10 21:56 | 顯示全部樓層
犀利啊。多謝樓主分享!
回復(fù)

使用道具 舉報

ID:273288 發(fā)表于 2018-1-8 16:17 | 顯示全部樓層
想來學(xué)習(xí)一下
回復(fù)

使用道具 舉報

ID:277300 發(fā)表于 2018-1-18 11:11 | 顯示全部樓層
學(xué)習(xí)學(xué)習(xí)
回復(fù)

使用道具 舉報

ID:277300 發(fā)表于 2018-1-18 11:12 | 顯示全部樓層
想來學(xué)習(xí)一下
回復(fù)

使用道具 舉報

ID:295094 發(fā)表于 2018-3-21 16:24 來自觸屏版 | 顯示全部樓層
485地址從哪設(shè)置
回復(fù)

使用道具 舉報

ID:297486 發(fā)表于 2018-3-26 20:25 | 顯示全部樓層
學(xué)習(xí)了
回復(fù)

使用道具 舉報

ID:297647 發(fā)表于 2018-3-27 10:13 | 顯示全部樓層
下載試試看吧
回復(fù)

使用道具 舉報

ID:70953 發(fā)表于 2018-5-7 23:28 | 顯示全部樓層
這個程序是由問題的。我測試的時候,232傳輸數(shù)據(jù)是沒有問題的。但是利用485,發(fā)現(xiàn)返回數(shù)據(jù)是有規(guī)律的錯誤,而且,超過兩個字節(jié)后,最后一個字節(jié)自動改為00,請問各位可有這個問題。
回復(fù)

使用道具 舉報

ID:329256 發(fā)表于 2018-5-14 00:29 | 顯示全部樓層
tzcl 發(fā)表于 2018-5-7 23:28
這個程序是由問題的。我測試的時候,232傳輸數(shù)據(jù)是沒有問題的。但是利用485,發(fā)現(xiàn)返回數(shù)據(jù)是有規(guī)律的錯誤, ...

我的單片機板子推薦程序也是這樣,但是返回的信號一直是00,發(fā)送數(shù)據(jù)也不是返回的發(fā)送數(shù)據(jù)值,似乎像隨機數(shù),被淹沒在大片的00中,很快就沖沒了
回復(fù)

使用道具 舉報

ID:228452 發(fā)表于 2018-5-16 05:03 | 顯示全部樓層
SBUF=SenData; //send data
                  Delay(50);
This will depend on baud rate
回復(fù)

使用道具 舉報

ID:156682 發(fā)表于 2018-5-16 23:20 | 顯示全部樓層
非常感謝,非常感謝
回復(fù)

使用道具 舉報

ID:306032 發(fā)表于 2018-5-21 20:31 | 顯示全部樓層
感謝感謝
回復(fù)

使用道具 舉報

ID:338503 發(fā)表于 2018-7-21 08:23 | 顯示全部樓層

RE: Rs485通信單片機C程序

非常感謝
回復(fù)

使用道具 舉報

ID:137447 發(fā)表于 2018-8-15 17:55 | 顯示全部樓層
感謝分享
回復(fù)

使用道具 舉報

ID:389650 發(fā)表于 2018-8-24 17:30 | 顯示全部樓層
簡單易懂!適合小白白啊!還有發(fā)現(xiàn)51黑好多資料!!!那,我就注冊了一個
回復(fù)

使用道具 舉報

ID:392042 發(fā)表于 2018-11-17 17:43 | 顯示全部樓層
學(xué)習(xí)了,好東西!!
回復(fù)

使用道具 舉報

ID:428400 發(fā)表于 2018-11-17 20:17 | 顯示全部樓層
有使用過的朋友嗎
回復(fù)

使用道具 舉報

ID:439307 發(fā)表于 2018-12-4 19:04 | 顯示全部樓層
可以,這個非常的合適
回復(fù)

使用道具 舉報

ID:439307 發(fā)表于 2018-12-4 19:17 | 顯示全部樓層
這個非常的給力
回復(fù)

使用道具 舉報

ID:164746 發(fā)表于 2018-12-22 20:50 | 顯示全部樓層
正在弄485   學(xué)習(xí)一下
回復(fù)

使用道具 舉報

ID:421260 發(fā)表于 2018-12-23 08:48 | 顯示全部樓層
把  delay(50); 改為 while(SendFlag ==1).
回復(fù)

使用道具 舉報

ID:47652 發(fā)表于 2018-12-26 05:56 | 顯示全部樓層
收藏!謝謝分享!
回復(fù)

使用道具 舉報

ID:9727 發(fā)表于 2019-1-29 10:38 | 顯示全部樓層
謝謝分享
回復(fù)

使用道具 舉報

ID:627463 發(fā)表于 2019-10-29 22:48 | 顯示全部樓層
請問一直收不到數(shù)據(jù)是怎么回事
回復(fù)

使用道具 舉報

ID:627463 發(fā)表于 2019-10-29 22:50 | 顯示全部樓層
程序很清晰!!!
回復(fù)

使用道具 舉報

ID:641019 發(fā)表于 2019-11-13 10:46 | 顯示全部樓層
好東西,就是下載要money
回復(fù)

使用道具 舉報

ID:674198 發(fā)表于 2020-4-10 09:13 | 顯示全部樓層
下載下來試試
回復(fù)

使用道具 舉報

ID:371606 發(fā)表于 2020-10-10 22:25 | 顯示全部樓層
使用很方便
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91国自视频 | 久久性色 | 国产日韩视频在线 | 一级在线 | 久久国产精品99久久久久 | 国产探花在线精品一区二区 | 91精品国产一区二区 | 成年人在线观看视频 | 超碰综合 | 国产精品精品3d动漫 | 亚洲视频手机在线 | 午夜网| 91人人看| 羞羞网站免费观看 | 欧美在线视频观看 | 日韩在线中文 | 亚洲欧美在线观看视频 | 狠狠操电影 | 久久国产精品免费一区二区三区 | 国产精品欧美一区二区 | 亚洲精品2 | 中文字幕一区二区三 | 九色视频网站 | 久久av网站 | 日本精品国产 | 国产精品国产a级 | 五月天激情电影 | 国产精品区二区三区日本 | 亚洲一区二区中文字幕 | 日韩视频精品在线 | 日日夜夜精品免费视频 | 偷拍第一页| 特黄色一级毛片 | 欧美日韩视频一区二区 | 一区二区三区四区在线视频 | 天天射色综合 | 欧美电影一区 | 国产精品大片 | 麻豆精品久久久 | 久久久久亚洲 | 国产精品视频网 |