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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2111|回復: 0
收起左側

GYJ-0085_15路輸入12路輸出繼電器可編程模塊485及232原理圖與源碼資料

[復制鏈接]
ID:280979 發表于 2018-3-18 00:51 | 顯示全部樓層 |閱讀模式
電路原理圖如下:
0.jpg

簡要說明:
一、 尺寸:長180mmX107mmX25mm
二、 主要芯片:STC12C5A60S2 (兼容51系列單片機)
三、 工作電壓:直流12(另有24V繼電器可選)
四、串口下載程序 (支持TTL下載程序
五、 特點:
1、具有電源指示。(供電電源有防接反保護)
215輸入(包括:1路模擬量輸入,2路高速光電輸入,12路光電隔離輸入。
3、12路光隔離繼電器輸出控制。
4、標準的11.0592M晶振。(便于設置串口波特率)
5、具有上電復位和手動復位。
6、獨立的串口通信及485通信。
7、可以接315M帶解碼的無線接收模塊
8、輸入輸出均有信號指示燈。
9、繼電器開關量輸出,最大切換電壓220V,最大切換電流7A。最大切換功率200W。
10電流加有,光電隔離,續流二極管,壓敏電阻,抗干擾能力強
11四周有固定安裝孔,也可插入PCB107mm卡槽,安裝在DIN導軌上。
12通訊穩定,提供原理圖,及板子的參考例程。
13、單片機無加密,可插拔更換,帶有程序下載口,可隨意更改程序
14、、端子采用螺旋壓接端子           
15、工作溫度-40度至 +70度
16、工作濕度 40%  ~ 80%RH

上位機通過485、232接口控制測試程序完整版本單片機源程序如下:

  1. /********************************************************************
  2.                             匯誠科技

  3. 實現功能:上、下位機485、232接口控制測試程序
  4. 上位機編譯環境:Vs2008(VB.net)
  5. 使用芯片:STC12C5A60S2
  6. 晶振:11.0592MHZ
  7. 編譯環境:Keil
  8. 硬件環境:15路輸入12路輸出帶485和232接口  
  9. *********************************************************************/
  10. /********************************************************************
  11. 單片機與PC機采用9針串口,MAX232通訊,波特率默認為9600.
  12.                                                  485通信 ,        波特率默認為9600.
  13. 單片機接收PC機發送的ASC||碼如下:

  14. 01、全開:PC發送'I';
  15. 02、全關:PC發送'i';

  16. 03、第1路開:PC發送'A';
  17. 04、第2路開:PC發送'B';
  18. 05、第3路開:PC發送'C';
  19. 06、第4路開:PC發送'D';
  20. 07、第5路開:PC發送'E';
  21. 08、第6路開:PC發送'F';
  22. 09、第7路開:PC發送'G';
  23. 10、第8路開:PC發送'H';
  24. 11、第9路開:PC發送'J';
  25. 12、第10路開:PC發送'K';
  26. 13、第11路開:PC發送'L';
  27. 14、第12路開:PC發送'M'

  28. 15、第1路關:PC發送'a';
  29. 16、第2路關:PC發送'b';
  30. 17、第3路關:PC發送'c';
  31. 18、第4路關:PC發送'd';
  32. 19、第5路關:PC發送'e';
  33. 20、第6路關:PC發送'f';
  34. 21、第7路關:PC發送'g';
  35. 22、第8路關:PC發送'h';
  36. 23、第9路關:PC發送'j';
  37. 24、第10路關:PC發送'k';
  38. 25、第11路關:PC發送'l';
  39. 26、第12路關:PC發送'm';
  40. ************************************************************
  41. *********************************************************************/
  42. #include<STC12C5A60S2.H>                 //庫文件
  43. #include <intrins.h>
  44. #define uchar unsigned char//宏定義無符號字符型
  45. #define uint unsigned int  //宏定義無符號整型
  46. /********************************************************************
  47.                             初始定義
  48. *********************************************************************/

  49. unsigned char dat; //用于存儲單片機接收發送緩沖寄存器SBUF里面的內容
  50. /********************************************************************
  51.                             初始定義
  52. *********************************************************************/
  53. /*定義十四個輸入*/
  54. //模擬量接口,做普通IO口時,高定平有效(這里用做普通IO口)
  55. sbit IN1=P1^0;         
  56. //開光量輸入   低電平有效
  57. sbit IN2=P1^1;                  
  58. sbit IN3=P1^4;
  59. sbit IN4=P1^5;
  60. sbit IN5=P1^6;
  61. sbit IN6=P1^7;
  62. sbit IN7=P3^4;
  63. sbit IN8=P3^5;
  64. sbit IN9=P3^6;
  65. sbit IN10=P3^7;
  66. sbit IN11=P4^6;
  67. sbit IN12=P4^5;                 
  68. sbit IN13=P4^4;
  69. //高速脈沖輸入,    觸發信號高低可選
  70. sbit IN14=P3^2;
  71. sbit IN15=P3^3;

  72. /*定義八位輸出*/
  73. sbit OUT1= P0^4;
  74. sbit OUT2= P0^5;
  75. sbit OUT3= P0^6;
  76. sbit OUT4= P0^7;
  77. sbit OUT5= P2^7;
  78. sbit OUT6= P2^6;
  79. sbit OUT7= P2^5;
  80. sbit OUT8= P2^4;
  81. sbit OUT9= P2^3;
  82. sbit OUT10=P2^2;
  83. sbit OUT11=P2^1;
  84. sbit OUT12=P2^0;
  85. /********************************************************************
  86.                             延時函數
  87. *********************************************************************/
  88. void delay(uchar t)
  89. {
  90.   uchar i,j;
  91.    for(i=0;i<t;i++)
  92.    {
  93.             for(j=250;j>0;j--);
  94.          { ;
  95.          }
  96.    }
  97. }
  98. /********************************************************************
  99.                            輸出處理函數
  100. *********************************************************************/
  101. void open_X3()
  102. {
  103. OUT1=0;OUT2=0;OUT3=0;OUT4=0;P2=0X00;
  104. }
  105. void clse_X3()
  106. {
  107. OUT1=1;OUT2=1;OUT3=1;OUT4=1;P2=0XFF;
  108. }
  109. /********************************************************************
  110.               功能:串口初始化,波特率9600,方式1
  111. *********************************************************************/
  112. void Init_Com(void)
  113. {
  114.     //串口初始化
  115.     TMOD = 0x20;
  116.     SCON = 0x50;
  117.     TH1 = 0xFd;
  118.     TL1 = 0xFd;
  119.     TR1 = 1;
  120.         ES=1;                //開串口1中斷         
  121.    //485接口初始化       
  122.     S2CON=0x50;        //方式1,八位數據,可變波特率                             
  123.         AUXR1=0x00;        //1T工作方式                                  
  124.         BRT=0XFD;         //設置波特率9600                                 
  125.         AUXR=0x10;        //啟動波特率發生器                                 
  126.         EA=1;                 //開總中斷                                                  
  127.         IE2=0x01;        //開串口2中斷                                 
  128. }
  129. /********************************************************************
  130.                             配置IO口
  131. *********************************************************************/
  132. void init(void)
  133. {
  134.    P1M1|=0X01;    //0000 0001        //因為此IO口直接引出,外加下拉電阻。所以配置IO口的時候需要把它設定為“開漏模式”
  135.    P1M0|=0X01;    //0000 0001
  136.    P4M1|=0x00;    //0111 0000         //P4口設置為“輸入模式”
  137.    P4M0 =0x00;          //0000 0000   
  138.    P4SW|=0x70;          //0100 0000        //P4^6設置成普通IO口
  139. }
  140. /********************************************************************
  141.                             串口1和串口2 配置
  142. *********************************************************************/
  143. void B485_send(uchar c)
  144. {

  145.   SBUF=S2BUF=c;
  146. }
  147. /********************************************************************
  148.                             主函數
  149. *********************************************************************/
  150. void main()
  151. {
  152.    Init_Com();//串口初始化
  153.    init();   //輸入口P4口功能設定
  154.    while(1)
  155.    {              
  156.        if(IN2==0)  {delay(20);OUT1=0; while(!IN2); OUT1=1; B485_send('1');}
  157.        if(IN3==0)  {delay(20);OUT2=0; while(!IN3); OUT2=1; B485_send('2');}
  158.        if(IN4==0)  {delay(20);OUT3=0; while(!IN4); OUT3=1; B485_send('3');}
  159.        if(IN5==0)  {delay(20);OUT4=0; while(!IN5); OUT4=1; B485_send('4');}
  160.        if(IN6==0)  {delay(20);OUT5=0; while(!IN6); OUT5=1; B485_send('5');}
  161.        if(IN7==0)  {delay(20);OUT6=0; while(!IN7); OUT6=1; B485_send('6');}
  162.        if(IN8==0)  {delay(20);OUT7=0; while(!IN8); OUT7=1; B485_send('7');}
  163.        if(IN9==0)  {delay(20);OUT8=0; while(!IN9); OUT8=1; B485_send('8');}
  164.        if(IN10==0) {delay(20);OUT9=0; while(!IN10);OUT9=1; B485_send('9');}
  165.        if(IN11==0) {delay(20);OUT10=0;while(!IN11);OUT10=1;B485_send('X');}          
  166.        if(IN12==0) {delay(20);OUT11=0;while(!IN12);OUT11=1;B485_send('Y');}
  167.        if(IN13==0) {delay(20);OUT12=0;while(!IN13);OUT12=1;B485_send('Z');}
  168.        if(IN14==0) {delay(20);OUT1=0;while(!IN14);OUT1=1;B485_send('1');}
  169.        if(IN15==0) {delay(20);OUT2=0;while(!IN15);OUT2=1;B485_send('2');}
  170.           
  171.           
  172. switch(dat) //接收數據判斷
  173.         {
  174.                 uchar k;
  175.                 k=10;
  176.                 case 'I': open_X3();delay(k);SBUF=S2BUF=dat;dat=0xee;break; //  全開
  177.                 case 'i': clse_X3();delay(k);SBUF=S2BUF=dat;dat=0xee;break; //  全關
  178.                
  179.                 case 'A': OUT1=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第1路開
  180.                 case 'B': OUT2=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第2路開
  181.                 case 'C': OUT3=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第3路開
  182.                 case 'D': OUT4=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第4路開
  183.                 case 'E': OUT5=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第5路開
  184.                 case 'F': OUT6=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第6路開
  185.                 case 'G': OUT7=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第7路開
  186.                 case 'H': OUT8=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第8路開
  187.                 case 'J': OUT9=0; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第9路開
  188.                 case 'K': OUT10=0;delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第10路開
  189.                 case 'L': OUT11=0;delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第11路開
  190.                 case 'M': OUT12=0;delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第12路開
  191.                                
  192.                 case 'a': OUT1=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第1路關
  193.                 case 'b': OUT2=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第2路關
  194.                 case 'c': OUT3=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第3路關
  195.                 case 'd': OUT4=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第4路關
  196.                 case 'e': OUT5=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第5路關
  197.                 case 'f': OUT6=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第6路關
  198.                 case 'g': OUT7=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第7路關
  199.                 case 'h': OUT8=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第8路關
  200.                 case 'j': OUT9=1; delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第9路關
  201.                 case 'k': OUT10=1;delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第10路關
  202.                 case 'l': OUT11=1;delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第11路關
  203.                 case 'm': OUT12=1;delay(k);SBUF=S2BUF=dat;dat=0xee;break;           //  第12路關

  204.                 default:break;                                           //  跳出
  205.     }
  206.   }
  207. }
  208. /********************************************************************
  209.                           串口中斷函數
  210. *********************************************************************/
  211. void commIntProc() interrupt 4
  212. ……………………

  213. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
0.png 0.png

所有資料51hei提供下載:
GYJ-0085_15路輸入12路輸出繼電器可編程模塊485及232發貨資料rar.rar (11 MB, 下載次數: 99)


回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 黄色片网站国产 | 国产伦精品一区二区三区视频金莲 | 看黄在线 | 99精品国产一区二区三区 | 国产精品日韩在线观看 | 正在播放国产精品 | 久久精品欧美一区二区三区不卡 | 午夜影院在线观看 | 美国一级毛片a | 国产做a爱片久久毛片 | 人妖一区 | 国产一区二区三区视频在线观看 | 中国大陆高清aⅴ毛片 | 日本午夜免费福利视频 | 自拍偷拍第一页 | 国产精品美女久久久免费 | 欧一区 | 黄色欧美 | 国产精品久久久久久久久 | 欧美一级黄色免费看 | 亚洲精品1区 | 久久精品国产v日韩v亚洲 | 国产免费一区二区三区 | 一区二区在线看 | www操操| 在线视频一区二区 | 精国产品一区二区三区四季综 | 欧洲精品在线观看 | 精品福利av导航 | 亚洲精品一区在线 | 久久精品青青大伊人av | 一区二区三区在线 | 精品久草 | 91原创视频在线观看 | 精品久| 久久久www成人免费无遮挡大片 | 毛片在线免费 | 欧美一区二区三区在线播放 | 精品久久久久久久久久久久 | 羞羞午夜 | 国产精品视频久久 |