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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2537|回復: 1
打印 上一主題 下一主題
收起左側(cè)

一塊51單片機板子帶繼電器輸出和光耦隔離輸入的原理圖和程序代碼 vb上位機

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:496704 發(fā)表于 2020-11-6 10:43 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
因為看到有人在發(fā)帖沒有給代碼還深深秘密的,我正好手頭有發(fā)上來供大家參考。其實我個人認為這個板子設計的不是很好。沒有對輸入做足夠的處理。
vb寫的上位機源碼:



單片機源程序如下:
  1. #include "STC12C5A60S2.H"
  2. #include "INTRINS.H"

  3. #define uchar unsigned char//宏定義無符號字符型
  4. #define uint unsigned int  //宏定義無符號整型

  5. bit write=0; //寫24C08 的標志;
  6. uchar dat=0xee; //用于存儲單片機接收發(fā)送緩沖寄存器SBUF里面的內(nèi)容
  7. uchar sj1; //存儲數(shù)據(jù)值
  8. uchar sj2; //存儲數(shù)據(jù)值
  9. uchar sj3; //存儲數(shù)據(jù)值
  10. /*
  11. sfr IAP_DATA    = 0xC2;
  12. sfr IAP_ADDRH   = 0xC3;
  13. sfr IAP_ADDRL   = 0xC4;
  14. sfr IAP_CMD     = 0xC5;
  15. sfr IAP_TRIG    = 0xC6;
  16. sfr IAP_CONTR   = 0xC7;
  17. sfr P4   = 0xC0;
  18. */
  19. //定義Flash 操作等待時間及允許IAP/ISP/EEPROM 操作的常數(shù)
  20. //#define ENABLE_ISP 0x80 //系統(tǒng)工作時鐘<30MHz 時,對IAP_CONTR 寄存器設置此值
  21. //#define ENABLE_ISP 0x81 //系統(tǒng)工作時鐘<24MHz 時,對IAP_CONTR 寄存器設置此值
  22. #define ENABLE_ISP 0x82 //系統(tǒng)工作時鐘<20MHz 時,對IAP_CONTR 寄存器設置此值
  23. //#define ENABLE_ISP 0x83 //系統(tǒng)工作時鐘<12MHz 時,對IAP_CONTR 寄存器設置此值
  24. //#define ENABLE_ISP 0x84 //系統(tǒng)工作時鐘<6MHz 時,對IAP_CONTR 寄存器設置此值
  25. //#define ENABLE_ISP 0x85 //系統(tǒng)工作時鐘<3MHz 時,對IAP_CONTR 寄存器設置此值
  26. //#define ENABLE_ISP 0x86 //系統(tǒng)工作時鐘<2MHz 時,對IAP_CONTR 寄存器設置此值
  27. //#define ENABLE_ISP 0x87 //系統(tǒng)工作時鐘<1MHz 時,對IAP_CONTR 寄存器設置此值

  28. /********************************************************************
  29.                             初始定義
  30. *********************************************************************/

  31. /*定義輸入口*/
  32. sbit IN1=P1^0;
  33. sbit IN2=P1^1;
  34. sbit IN3=P1^4;         
  35. sbit IN4=P1^5;
  36. sbit IN5=P1^6;
  37. sbit IN6=P1^7;
  38. sbit IN7=P3^2;
  39. sbit IN8=P3^3;
  40. sbit IN9=P3^4;
  41. sbit IN10=P3^5;
  42. sbit IN11=P3^6;
  43. sbit IN12=P3^7;
  44. sbit IN13=P2^2;
  45. sbit IN14=P2^1;
  46. sbit IN15=P2^0;
  47. /*定義輸出口*/
  48. sbit OUT1=P2^3;
  49. sbit OUT2=P2^4;
  50. sbit OUT3=P2^5;
  51. sbit OUT4=P2^6;
  52. sbit OUT5=P2^7;
  53. sbit OUT6=P4^4;
  54. sbit OUT7=P4^5;
  55. sbit OUT8=P0^7;
  56. sbit OUT9=P0^6;
  57. sbit OUT10=P0^5;
  58. sbit OUT11=P0^4;
  59. sbit OUT12=P0^3;
  60. sbit OUT13=P0^2;
  61. sbit OUT14=P0^1;
  62. sbit OUT15=P0^0;
  63. bit bz1=0;
  64. bit bz2=0;
  65. bit bz3=0;
  66. bit bz4=0;
  67. bit bz5=0;
  68. bit bz6=0;
  69. bit bz7=0;
  70. bit bz8=0;
  71. bit bz9=0;
  72. bit bz10=0;
  73. bit bz11=0;
  74. bit bz12=0;
  75. bit bz13=0;
  76. bit bz14=0;
  77. bit bz15=0;

  78. /********************************************************************
  79.                             函數(shù)聲明
  80. *********************************************************************/
  81. union union_temp16
  82. {
  83. uint un_temp16;
  84. uchar  un_temp8[2];
  85. }
  86. my_unTemp16;

  87. uchar Byte_Read(uint add);              //讀一字節(jié),調(diào)用前需打開IAP 功能
  88. void Byte_Program(uint add, uchar ch);  //字節(jié)編程,調(diào)用前需打開IAP 功能
  89. void Sector_Erase(uint add);            //擦除扇區(qū)
  90. void IAP_Disable();                       //關閉IAP 功能
  91. void Delay();

  92. /********************************************************************
  93.                             延時函數(shù)
  94. *********************************************************************/
  95. void delay(uchar t)
  96. {
  97.   uchar i,j;
  98.    for(i=0;i<t;i++)
  99.    {
  100.             for(j=230;j>0;j--);
  101.          { ;
  102.          }
  103.    }
  104. }
  105. /********************************************************************
  106.               功能:串口初始化,波特率9600,方式1
  107. *********************************************************************/
  108. void Init_Com(void)
  109. {

  110.     //串口初始化
  111.     TMOD = 0x20;
  112.     SCON = 0x50;
  113.     TH1 = 0xFd;
  114.     TL1 = 0xFd;
  115.     TR1 = 1;
  116.         ES=1;                //開串口1中斷         
  117.    //485接口初始化       
  118.     S2CON=0x50;        //方式1,八位數(shù)據(jù),可變波特率                             
  119.         AUXR1=0x00;        //1T工作方式                                  
  120.         BRT=0XFD;         //設置波特率9600                                 
  121.         AUXR=0x10;        //啟動波特率發(fā)生器                                 
  122.         EA=1;                 //開總中斷                                                  
  123.         IE2=0x01;        //開串口2中斷                                 
  124. }
  125. /********************************************************************
  126.                             串口1和串口2 配置
  127. *********************************************************************/
  128. void B485_send(uchar c)
  129. {

  130.   SBUF=S2BUF=c;
  131. }

  132. /********************************************************************
  133.                            全開函數(shù)
  134. *********************************************************************/
  135. void quankai()
  136. {
  137. uchar k;
  138. k=10;
  139. OUT1=0;delay(k);
  140. OUT2=0;delay(k);
  141. OUT3=0;delay(k);
  142. OUT4=0;delay(k);
  143. OUT5=0;delay(k);
  144. OUT6=0;delay(k);
  145. OUT7=0;delay(k);
  146. OUT8=0;delay(k);
  147. OUT9=0;delay(k);
  148. OUT10=0;delay(k);
  149. OUT11=0;delay(k);
  150. OUT12=0;delay(k);
  151. OUT13=0;delay(k);
  152. OUT14=0;delay(k);
  153. OUT15=0;delay(k);
  154. }

  155. /********************************************************************
  156.                            全關函數(shù)
  157. *********************************************************************/
  158. void quanguan()
  159. {
  160. uchar k;
  161. k=10;
  162. OUT1=1;delay(k);
  163. OUT2=1;delay(k);
  164. OUT3=1;delay(k);
  165. OUT4=1;delay(k);
  166. OUT5=1;delay(k);
  167. OUT6=1;delay(k);
  168. OUT7=1;delay(k);
  169. OUT8=1;delay(k);
  170. OUT9=1;delay(k);
  171. OUT10=1;delay(k);
  172. OUT11=1;delay(k);
  173. OUT12=1;delay(k);
  174. OUT13=1;delay(k);
  175. OUT14=1;delay(k);
  176. OUT15=1;delay(k);
  177. }


  178. /********************************************************************
  179.                             接收數(shù)據(jù)判斷函數(shù)
  180. *********************************************************************/
  181. chuankou()
  182. {
  183. switch(dat) //接收數(shù)據(jù)判斷
  184. {
  185. uchar k;
  186. k=10;
  187. case 'I': quankai();SBUF = dat;dat=0xee;B485_send('1');write=1;break; //  全開
  188. case 'i': quanguan();SBUF = dat;dat=0xee;B485_send('1');write=1;break; //  全關

  189. case 'A': OUT1=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第一路開
  190. case 'B': OUT2=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第二路開
  191. case 'C': OUT3=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第三路開
  192. case 'D': OUT4=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第四路開
  193. case 'E': OUT5=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第五路開
  194. case 'F': OUT6=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第六路開
  195. case 'G': OUT7=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第七路開
  196. case 'H': OUT8=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第八路開
  197. case 'J': OUT9=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第九路開
  198. case 'K': OUT10=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第十路開
  199. case 'L': OUT11=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第十一路開
  200. case 'M': OUT12=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第十二路開
  201. case 'N': OUT13=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第十三路開
  202. case 'O': OUT14=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第十四路開
  203. case 'P': OUT15=0;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第十五路開

  204.                        
  205. case 'a': OUT1=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第一路關
  206. case 'b': OUT2=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第二路關
  207. case 'c': OUT3=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第三路關
  208. case 'd': OUT4=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第四路關
  209. case 'e': OUT5=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第五路關
  210. case 'f': OUT6=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第六路關
  211. case 'g': OUT7=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第七路關
  212. case 'h': OUT8=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  第八路關
  213. case 'j': OUT9=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  214. case 'k': OUT10=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  215. case 'l': OUT11=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  216. case 'm': OUT12=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  217. case 'n': OUT13=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  218. case 'o': OUT14=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  219. case 'p': OUT15=1;delay(k);SBUF = dat;dat=0xee;B485_send('1');write=1;break;           //  ...
  220. default:break;                                           //  跳出
  221. }
  222. }
  223. /********************************************************************
  224.                             按鍵函數(shù)
  225. *********************************************************************/
  226. KEY()
  227. {
  228. uchar k;
  229. k=200;
  230.     if((IN1==0)&&(bz1==0)){delay(k);if(IN1==0){delay(k);OUT1=!OUT1;bz1=1;}}if((bz1==1)&&(IN1==1)){delay(k);bz1=0;}
  231.     if((IN2==0)&&(bz2==0)){delay(k);if(IN2==0){delay(k);OUT2=!OUT2;bz2=1;}}if((bz2==1)&&(IN2==1)){delay(k);bz2=0;}
  232.     if((IN3==0)&&(bz3==0)){delay(k);if(IN3==0){delay(k);OUT3=!OUT3;bz3=1;}}if((bz3==1)&&(IN3==1)){delay(k);bz3=0;}
  233.     if((IN4==0)&&(bz4==0)){delay(k);if(IN4==0){delay(k);OUT4=!OUT4;bz4=1;}}if((bz4==1)&&(IN4==1)){delay(k);bz4=0;}

  234.     if((IN5==0)&&(bz5==0)){delay(k);if(IN5==0){delay(k);OUT5=!OUT5;bz5=1;}}if((bz5==1)&&(IN5==1)){delay(k);bz5=0;}
  235.     if((IN6==0)&&(bz6==0)){delay(k);if(IN6==0){delay(k);OUT6=!OUT6;bz6=1;}}if((bz6==1)&&(IN6==1)){delay(k);bz6=0;}
  236.     if((IN7==0)&&(bz7==0)){delay(k);if(IN7==0){delay(k);OUT7=!OUT7;bz7=1;}}if((bz7==1)&&(IN7==1)){delay(k);bz7=0;}
  237.     if((IN8==0)&&(bz8==0)){delay(k);if(IN8==0){delay(k);OUT8=!OUT8;bz8=1;}}if((bz8==1)&&(IN8==1)){delay(k);bz8=0;}

  238.     if((IN9==0)&&(bz9==0)){delay(k);if(IN9==0){delay(k);OUT9=!OUT9;bz9=1;}}if((bz9==1)&&(IN9==1)){delay(k);bz9=0;}
  239.     if((IN10==0)&&(bz10==0)){delay(k);if(IN10==0){delay(k);OUT10=!OUT10;bz10=1;}}if((bz10==1)&&(IN10==1)){delay(k);bz10=0;}
  240.     if((IN11==0)&&(bz11==0)){delay(k);if(IN11==0){delay(k);OUT11=!OUT11;bz11=1;}}if((bz11==1)&&(IN11==1)){delay(k);bz11=0;}

  241.     if((IN12==0)&&(bz12==0)){delay(k);if(IN12==0){delay(k);OUT12=!OUT12;bz12=1;}}if((bz12==1)&&(IN12==1)){delay(k);bz12=0;}
  242.     if((IN13==0)&&(bz13==0)){delay(k);if(IN13==0){delay(k);OUT13=!OUT13;bz13=1;}}if((bz13==1)&&(IN13==1)){delay(k);bz13=0;}
  243.     if((IN14==0)&&(bz14==0)){delay(k);if(IN14==0){delay(k);OUT14=!OUT14;bz14=1;}}if((bz14==1)&&(IN14==1)){delay(k);bz14=0;}
  244.     if((IN15==0)&&(bz15==0)){delay(k);if(IN15==0){delay(k);OUT15=!OUT15;bz15=1;}}if((bz15==1)&&(IN15==1)){delay(k);bz15=0;}

  245. }
  246. /********************************************************************
  247.                             主函數(shù)
  248. *********************************************************************/
  249. void main (void)
  250. {
  251.    uint eeprom_address;
  252.    P4SW|=0x20;                   //配置P4.5為IO口
  253.    P4M0|=0x10;                   //配置P4.4為IO口
  254.    P4M1|=0x10;
  255.         Init_Com();//串口初始化


  256. //    eeprom_address = 0x01;  //將測試起始地址送eeprom_address
  257. //    sj1 = Byte_Read(1);    //讀EEPROM的值,存到read_eeprom
  258. //        sj2 = Byte_Read(2);    //讀EEPROM的值,存到read_eeprom
  259. //        sj3 = Byte_Read(3);    //讀EEPROM的值,存到read_eeprom
  260. //        P0=sj1;
  261. //        P2=sj2;
  262. //        P4=sj3;
  263. while(1)
  264. {
  265. chuankou();         // 接收數(shù)據(jù)判斷函數(shù)
  266.         
  267. if ( RI ) //掃描判斷是否接收到數(shù)據(jù),
  268. {
  269. dat = SBUF; //接收數(shù)據(jù)SBUF賦與dat
  270. RI=0; //RI 清零。
  271. }
  272. KEY(); //調(diào)用按鍵函數(shù)
  273. if(write==1) //判斷計時器是否計時一秒
  274. {
  275. write=0; //清零
  276.                    sj1=P0;
  277.                 sj2=P2;
  278.                 sj3=P4;
  279.             Sector_Erase(1);           //擦除整個扇區(qū)
  280.         Byte_Program(1, sj1);//將 數(shù)據(jù) 寫入 EEPROM
  281.                 //Sector_Erase(2);           //擦除整個扇區(qū)
  282.         Byte_Program(2, sj2);//將 數(shù)據(jù) 寫入 EEPROM
  283.             //Sector_Erase(3);           //擦除整個扇區(qū)
  284.         Byte_Program(3, sj3);//將 數(shù)據(jù) 寫入 EEPROM

  285. }           

  286. }
  287. }

  288. /********************************************************************
  289.                           串口中斷函數(shù)
  290. *********************************************************************/
  291. void commIntProc() interrupt 4
  292. {
  293.         if(TI)
  294.                 TI = 0;
  295.         if(RI)
  296.          {
  297.           RI = 0;
  298.           dat = SBUF;
  299.          } //接收數(shù)據(jù)SBUF賦與dat       
  300. }
  301. /********************************************************************
  302.                          串口二(485) 發(fā)送接收中斷函數(shù)
  303. *********************************************************************/
  304. void uart2_isr()  interrupt 8
  305. {
  306.    if( S2CON & 0x01 )
  307.          {
  308.                 S2CON &= ~0x01;
  309.                    dat= S2BUF;       
  310.          }
  311.         if( S2CON & 0x02 )
  312.         {
  313.           S2CON&=0xfd;
  314.         }
  315. }         
  316. /********************************************************************
  317.                             結(jié)束主函數(shù)
  318. *********************************************************************/
  319. //讀一字節(jié),調(diào)用前需打開IAP 功能,入口:DPTR = 字節(jié)地址,返回:A = 讀出字節(jié)
  320. uchar Byte_Read(uint add)
  321. {
  322.     IAP_DATA = 0x00;
  323.     IAP_CONTR = ENABLE_ISP;         //打開IAP 功能, 設置Flash 操作等待時間
  324.     IAP_CMD = 0x01;                 //IAP/ISP/EEPROM 字節(jié)讀命令

  325.     my_unTemp16.un_temp16 = add;
  326.     IAP_ADDRH = my_unTemp16.un_temp8[0];    //設置目標單元地址的高8 位地址
  327.     IAP_ADDRL = my_unTemp16.un_temp8[1];    //設置目標單元地址的低8 位地址

  328.     //EA = 0;
  329.     IAP_TRIG = 0x5A;   //先送 5Ah,再送A5h 到ISP/IAP 觸發(fā)寄存器,每次都需如此
  330.     IAP_TRIG = 0xA5;   //送完A5h 后,ISP/IAP 命令立即被觸發(fā)起動
  331.     _nop_();
  332.     //EA = 1;
  333.     IAP_Disable();  //關閉IAP 功能, 清相關的特殊功能寄存器,使CPU 處于安全狀態(tài),
  334.                     //一次連續(xù)的IAP 操作完成之后建議關閉IAP 功能,不需要每次都關
  335.     return (IAP_DATA);
  336. }

  337. //字節(jié)編程,調(diào)用前需打開IAP 功能,入口:DPTR = 字節(jié)地址, A= 須編程字節(jié)的數(shù)據(jù)
  338. void Byte_Program(uint add, uchar ch)
  339. {
  340.     IAP_CONTR = ENABLE_ISP;         //打開 IAP 功能, 設置Flash 操作等待時間
  341.     IAP_CMD = 0x02;                 //IAP/ISP/EEPROM 字節(jié)編程命令

  342.     my_unTemp16.un_temp16 = add;
  343.     IAP_ADDRH = my_unTemp16.un_temp8[0];    //設置目標單元地址的高8 位地址
  344.     IAP_ADDRL = my_unTemp16.un_temp8[1];    //設置目標單元地址的低8 位地址

  345.     IAP_DATA = ch;                  //要編程的數(shù)據(jù)先送進IAP_DATA 寄存器
  346.     //EA = 0;
  347.     IAP_TRIG = 0x5A;   //先送 5Ah,再送A5h 到ISP/IAP 觸發(fā)寄存器,每次都需如此
  348.     IAP_TRIG = 0xA5;   //送完A5h 后,ISP/IAP 命令立即被觸發(fā)起動
  349.     _nop_();
  350.     //EA = 1;
  351.     IAP_Disable();  //關閉IAP 功能, 清相關的特殊功能寄存器,使CPU 處于安全狀態(tài),
  352.                     //一次連續(xù)的IAP 操作完成之后建議關閉IAP 功能,不需要每次都關
  353. }

  354. //擦除扇區(qū), 入口:DPTR = 扇區(qū)地址
  355. void Sector_Erase(uint add)
  356. {
  357.     IAP_CONTR = ENABLE_ISP;         //打開IAP 功能, 設置Flash 操作等待時間
  358.     IAP_CMD = 0x03;                 //IAP/ISP/EEPROM 扇區(qū)擦除命令

  359.     my_unTemp16.un_temp16 = add;
  360.     IAP_ADDRH = my_unTemp16.un_temp8[0];    //設置目標單元地址的高8 位地址
  361.     IAP_ADDRL = my_unTemp16.un_temp8[1];    //設置目標單元地址的低8 位地址

  362.     //EA = 0;
  363.     IAP_TRIG = 0x5A;   //先送 5Ah,再送A5h 到ISP/IAP 觸發(fā)寄存器,每次都需如此
  364.     IAP_TRIG = 0xA5;   //送完A5h 后,ISP/IAP 命令立即被觸發(fā)起動
  365.     _nop_();
  366.     //EA = 1;
  367.     IAP_Disable();  //關閉IAP 功能, 清相關的特殊功能寄存器,使CPU 處于安全狀態(tài),
  368.                     //一次連續(xù)的IAP 操作完成之后建議關閉IAP 功能,不需要每次都關
  369. }

  370. void IAP_Disable()
  371. {
  372.     //關閉IAP 功能, 清相關的特殊功能寄存器,使CPU 處于安全狀態(tài),
  373.     //一次連續(xù)的IAP 操作完成之后建議關閉IAP 功能,不需要每次都關
  374.     IAP_CONTR = 0;      //關閉IAP 功能
  375.     IAP_CMD   = 0;      //清命令寄存器,使命令寄存器無命令,此句可不用
  376.     IAP_TRIG  = 0;      //清命令觸發(fā)寄存器,使命令觸發(fā)寄存器無觸發(fā),此句可不用
  377.     IAP_ADDRH = 0;
  378.     IAP_ADDRL = 0;
  379. }

  380. /********************************************************************
  381.                               結(jié)束
  382. *********************************************************************/
復制代碼

所有資料51hei提供下載:
GYJ-0067_繼電器15入15出(有源輸入)發(fā)貨資料.7z (6.89 MB, 下載次數(shù): 46)




評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:496704 發(fā)表于 2020-11-7 10:55 | 只看該作者
多謝老大指正帖子。下次我發(fā)帖也按照如上格式。
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人免费观看视频 | 亚洲精品一二三 | 超碰在线久 | 国产91色在线 | 亚洲 | 在线观看视频一区 | 久久免费精品 | 97avcc| 精品国产乱码久久久久久88av | 国产清纯白嫩初高生在线播放视频 | 久久99国产精品 | 日韩第一夜 | 亚洲福利在线视频 | 91在线精品秘密一区二区 | 国产精品成人一区二区三区 | 一区二区精品 | 午夜精品一区二区三区在线观看 | 在线a视频 | 国产91亚洲精品一区二区三区 | 日韩欧美一级精品久久 | 黑人成人网 | 日韩欧美在线免费观看视频 | 人人操日日干 | 亚洲精选一区二区 | 免费看的av| 中文字幕精品一区二区三区在线 | 成人免费网视频 | 国产日韩欧美在线观看 | 成人久久久 | 成人免费在线小视频 | 日本不卡一区 | 国产成人精品一区二区三区在线 | 亚洲精品久久久久久久久久久久久 | 亚洲视频在线观看 | 国产一区二区欧美 | 日韩免费高清视频 | 欧美一区二区小视频 | 亚洲丝袜天堂 | 成人国产精品色哟哟 | 亚洲免费在线播放 | 亚洲精品色| 久久y|