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

標題: STC11F04E單片機RS485串口通信源程序 帶按鍵輸入,LED指示的開發板資料 [打印本頁]

作者: 電子愛好者999    時間: 2018-11-18 11:06
標題: STC11F04E單片機RS485串口通信源程序 帶按鍵輸入,LED指示的開發板資料
STC11F04E單片機精簡開發板 串口通信 按鍵輸入 485通信LED指示
主要芯片:STC11F04E單片機
工作電壓:直流5~15伏(電源選擇5V和大于5V兩種模式)
特點:
         1、具有電源指示;
         2、所有I/O口已引出;
         3、可以實現與電腦串口通信;
         4、可以實現雙串口通訊;(MAX232和MAX485雙串口通訊,MAX232也是下載程序口)
         5、具有上電復位和手動復位;
         6、電源防反接二極管;
         7、支持STC串口下載;
         8、雙串口通訊(注:下載程序只能使用MAX232口);
         9、四路路LED燈(可用上位機控制,);
        10、可端子接線供電、可排針引電;
       11、7805供電,輸入電壓范圍寬

五、提供相關軟件、資料、原理圖


單片機RS485源程序如下:
  1. /********************************************************************
  2.                             匯誠科技

  3. 實現功能:此版配套測試程序
  4. 使用芯片:STC11F104E
  5. 晶振:11.0592MHZ
  6. 波特率:9600
  7. 編譯環境:Keil
  8. 作者:zhangxinchunleo     
  9. /********************************************************************
  10. 上電后,發送數據 STC10/11xx\r\nUart Test !\r\n
  11. ********************************************************************/

  12. #include "reg51.h"
  13. #include "intrins.h"

  14. typedef unsigned char BYTE;
  15. typedef unsigned int WORD;

  16. #define FOSC 11059200L      //System frequency
  17. #define BAUD 9600           //UART baudrate

  18. /*Define UART parity mode*/
  19. #define NONE_PARITY     0   //None parity
  20. #define ODD_PARITY      1   //Odd parity
  21. #define EVEN_PARITY     2   //Even parity
  22. #define MARK_PARITY     3   //Mark parity
  23. #define SPACE_PARITY    4   //Space parity

  24. #define PARITYBIT EVEN_PARITY   //Testing even parity

  25. sfr AUXR1 = 0xA2;
  26. #define UART_P1 0x80        //(AUXR1.7) switch RXD/TXD from P3.0/P3.1 to P1.6/P1.7

  27. sbit bit9 = P2^2;           //P2.2 show UART data bit9
  28. bit busy;

  29. void SendData(BYTE dat);
  30. void SendString(char *s);

  31. void main()
  32. {
  33.     AUXR1 |= UART_P1;       //switch RXD/TXD from P3.0/P3.1 to P1.6/P1.7

  34. #if (PARITYBIT == NONE_PARITY)
  35.     SCON = 0x50;            //8-bit variable UART
  36. #elif (PARITYBIT == ODD_PARITY) || (PARITYBIT == EVEN_PARITY) || (PARITYBIT == MARK_PARITY)
  37.     SCON = 0xda;            //9-bit variable UART, parity bit initial to 1
  38. #elif (PARITYBIT == SPACE_PARITY)
  39.     SCON = 0xd2;            //9-bit variable UART, parity bit initial to 0
  40. #endif

  41.     TMOD = 0x20;            //Set Timer1 as 8-bit auto reload mode
  42.     TH1 = TL1 = -(FOSC/12/32/BAUD); //Set auto-reload vaule
  43.     TR1 = 1;                //Timer1 start run
  44.     ES = 1;                 //Enable UART interrupt
  45.     EA = 1;                 //Open master interrupt switch

  46.     SendString("STC10/11xx\r\nUart Test !\r\n");
  47.     while(1);
  48. }

  49. /*----------------------------
  50. UART interrupt service routine
  51. ----------------------------*/
  52. void Uart_Isr() interrupt 4 using 1
  53. {
  54.     if (RI)
  55.     {
  56.         RI = 0;             //Clear receive interrupt flag
  57.         P0 = SBUF;          //P0 show UART data
  58.         bit9 = RB8;         //P2.2 show parity bit
  59.     }
  60.     if (TI)
  61.     {
  62.         TI = 0;             //Clear transmit interrupt flag
  63.         busy = 0;           //Clear transmit busy flag
  64.     }
  65. }

  66. /*----------------------------
  67. Send a byte data to UART
  68. Input: dat (data to be sent)
  69. Output:None
  70. ----------------------------*/
  71. void SendData(BYTE dat)
  72. {
  73.     while (busy);           //Wait for the completion of the previous data is sent
  74.     ACC = dat;              //Calculate the even parity bit P (PSW.0)
  75.     if (P)                  //Set the parity bit according to P
  76.     {
  77. #if (PARITYBIT == ODD_PARITY)
  78.         TB8 = 0;            //Set parity bit to 0
  79. #elif (PARITYBIT == EVEN_PARITY)
  80.         TB8 = 1;            //Set parity bit to 1
  81. #endif
  82.     }
  83.     else
  84.     {
  85. #if (PARITYBIT == ODD_PARITY)
  86.         TB8 = 1;            //Set parity bit to 1
  87. #elif (PARITYBIT == EVEN_PARITY)
  88.         TB8 = 0;            //Set parity bit to 0
  89. #endif
  90.     }
  91.     busy = 1;
  92.     SBUF = ACC;             //Send data to UART buffer
  93. }

  94. /*----------------------------
  95. Send a string to UART
  96. Input: s (address of string)
  97. Output:None
  98. ----------------------------*/
  99. void SendString(char *s)
  100. {
  101.     while (*s)              //Check the end of the string
  102.     {
  103.         SendData(*s++);     //Send current char and increment string ptr
  104.     }
  105. }

  106.         
  107. /********************************************************************
  108.                               結束
  109. *********************************************************************/
復制代碼

所有資料51hei提供下載:

485測試程序.rar

31.9 KB, 下載次數: 82, 下載積分: 黑幣 -5

STC11F104E開發板產品使用手冊.doc

2.45 MB, 下載次數: 46, 下載積分: 黑幣 -5

STC11F104E開發板原理圖.doc

96 KB, 下載次數: 42, 下載積分: 黑幣 -5

STC11FXX開發板原理圖及PCB圖.pdf

542.51 KB, 下載次數: 58, 下載積分: 黑幣 -5

該板配套測試程序.rar

32.14 KB, 下載次數: 61, 下載積分: 黑幣 -5


作者: well5820    時間: 2019-1-3 20:52
厲害了!!!
作者: 65145310    時間: 2019-4-25 16:11
這個可以玩一下,手頭剛好有個這片子
作者: 騰飛的龍    時間: 2019-5-13 15:38
感謝樓主分享,學了啦
作者: 東方之任逍遙    時間: 2019-6-1 18:01
樓主厲害
作者: 小阿草    時間: 2020-5-17 11:08
樓主 原理圖里面的power1是什么芯片啊
作者: watl06111    時間: 2020-12-4 15:40
這個可以玩一下,手頭剛好有個這片子
作者: chenbing1027    時間: 2022-1-11 09:56
這個看起來是可以作為一個小的開發板





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 91网在线观看 | 欧美精品在线免费观看 | 欧美精品在线播放 | 婷婷二区 | 一区二区免费 | 国产成人精品免费视频大全最热 | 成人激情视频 | 亚洲最大福利网 | 久久高清国产 | 中文字幕在线视频免费视频 | 欧美久久久久久久久 | 日韩精品成人免费观看视频 | 日本不卡一区二区三区 | 日韩欧美在线观看 | 久久午夜精品福利一区二区 | 国产91av视频 | 国产免费一区二区三区 | 亚洲精品视频在线观看视频 | av毛片免费| 国产亚洲高清视频 | 国产一区二区在线视频 | 久久久久久久电影 | 欧美精品在线免费观看 | 亚洲精品一区在线观看 | 免费精品久久久久久中文字幕 | 国产成人久久精品一区二区三区 | 欧美精品一区二区三区四区 在线 | 久久精品国产精品青草 | 欧美一级黄色免费看 | 欧美日韩a| 久久久久久国产 | 国产精品一区二区日韩 | 国产精品视频久久久久久 | 亚洲www | 91福利电影在线观看 | 国产永久免费 | 亚洲欧美中文日韩在线v日本 | 99热在线播放 | 久久在线免费 | 日韩美女一区二区三区在线观看 | 青青草综合网 |