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

標題: 單片機網線測試儀程序與電路原理圖 [打印本頁]

作者: 周工58    時間: 2022-4-22 20:38
標題: 單片機網線測試儀程序與電路原理圖
程序是網上的,經過我小改了一下.自已沒有做實物,以后要用有可能把它自做出來.5V供電,可改成那充電 ,也方便,可能畫得不太好.有原理圖,
供大家參考,和修改,有源程序,也可供大家,學習和修改.
電路原理圖如下:


單片機源程序如下:
  1. /**********************網線測試儀*****************************
  2.         網線測試儀,定義三個按鈕作為速度選擇
  3.         速度選擇分別有30ms/1s/2s
  4.         程序初始化默認進入1s運行函數
  5.         其中網線掃描口用的P2口
  6. *************************************************************/
  7. #include <STC15.h>
  8. #include <intrins.h>                                  //循環左右移頭文件
  9. #define uchar unsigned char
  10. #define uint unsigned int
  11. sbit sw1 = P0^0;                                        //k1按鍵.定義30ms按鈕
  12. sbit sw2 = P0^1;                                        //k2按鍵,定義1S按鈕
  13. sbit sw3 = P0^2;                                        //K3按鍵,定義2S按鈕
  14. uint i,a,b;                                                        //定義變量
  15. void delay(int t)
  16. {
  17.         int y;
  18.         for(;t>0;t--)
  19.                 for(y=110;y>0;y--);
  20. }
  21. void key1();                                                //函數聲明
  22. void key2();
  23. void key3();
  24. void key1()                                                        //30ms運行函數
  25. {
  26.         if(sw1 == 0)
  27.         {
  28.                 delay(10);
  29.                 if(sw1 == 0)
  30.                 {
  31.                         sw2 = sw3 = 1;
  32.                         P2 = a;
  33.                         b = 1;
  34.                         while(b)
  35.                         {
  36.                                 for(i=9;i>0;i--)
  37.                                 {
  38.                                         P2 = _crol_(a,1);                 
  39.                                         for(i=30;i>0;i--)                 //1/2s
  40.                                         {
  41.                                                 delay(10);                        
  42.                                                 if(sw2 == 0)
  43.                                                 {
  44.                                                         delay(5);
  45.                                                         if(sw2 == 0)
  46.                                                         {
  47.                                                                 key2();
  48.                                                         }
  49.                                                 }
  50.                                                 if(sw3 == 0)
  51.                                                 {
  52.                                                         delay(5);
  53.                                                         if(sw3 == 0)
  54.                                                         {
  55.                                                                 key3();
  56.                                                         }
  57.                                                 }
  58.                                         }
  59.                                         a = P2;
  60.                                 }
  61.                         }
  62.                 }
  63.         }        
  64. }
  65. void key2()                                                  //1S運行函數
  66. {
  67.         if(sw2 == 0)
  68.         {
  69.                 delay(10);
  70.                 if(sw2 == 0)
  71.                 {
  72.                         sw1 = sw3 =1;
  73.                         P2 = a;
  74.                         b = 1;
  75.                         while(b)
  76.                         {
  77.                                 for(i=8;i>0;i--)
  78.                                 {
  79.                                         P2 = _crol_(a,1);
  80.                                         for(i=60;i>0;i--)                 //1S
  81.                                         {
  82.                                                 delay(10);                        
  83.                                                 if(sw1 == 0)
  84.                                                 {
  85.                                                         delay(5);
  86.                                                         if(sw1 == 0)
  87.                                                         {
  88.                                                                 key1();
  89.                                                         }
  90.                                                 }
  91.                                                 if(sw3 == 0)
  92.                                                 {
  93.                                                         delay(5);
  94.                                                         if(sw3 == 0)
  95.                                                         {
  96.                                                                 key3();
  97.                                                         }
  98.                                                 }
  99.                                         }
  100.                                         a = P2;
  101.                                 }
  102.                         }
  103.                 }
  104.         }        
  105. }
  106. void key3()                                           //2S運行函數
  107. {
  108.         if(sw3 == 0)
  109.         {
  110.                 delay(10);
  111.                 if(sw3 == 0)
  112.                 {
  113.                         sw1 = sw2 = 1;
  114.                         P2 = a;
  115.                         b = 1;
  116.                         while(b)
  117.                         {
  118.                                 for(i=8;i>0;i--)
  119.                                 {
  120.                                         P2 = _crol_(a,1);
  121.                                         for(i=200;i>0;i--)                 //2S
  122.                                         {
  123.                                                 delay(10);                        
  124.                                                 if(sw1 == 0)
  125.                                                 {
  126.                                                         delay(5);
  127.                                                         if(sw1 == 0)
  128.                                                         {
  129.                                                                 key1();
  130.                                                         }
  131.                                                 }
  132.                                                 if(sw2 == 0)
  133.                                                 {
  134.                                                         delay(5);
  135.                                                         if(sw2 == 0)
  136.                                                         {
  137.                                                                 key2();
  138.                                                         }
  139.                                                 }
  140.                                         }
  141.                                         a = P2;
  142.                                 }
  143.                         }
  144.                 }
  145.         }
  146. }
  147. void main()
  148. {
  149.         P2 = 0xff;                                  //IO賦初值
  150.         a = 0xfe;
  151.         sw2 = 0;                                  //初始執行1s函數
  152.         while(1)
  153.         {
  154.                 key1();
  155.                 key2();
  156.                 key3();
  157.         }
  158. }
復制代碼

也是剛學單片機,有不足的地方,歡迎指出.
Keil代碼和pdf原理圖2個文件下載: 網線測試儀改良板.zip (73.88 KB, 下載次數: 49)

作者: 周工58    時間: 2022-4-22 20:42
單片機型號,STC15F2K60S2/LQFP32
作者: 三極管一樣的人    時間: 2022-12-19 16:38
這是不是燈珠電源沒了?
作者: 周工58    時間: 2022-12-19 19:38
那你怎么樣的說說
作者: snchj    時間: 2023-1-11 19:01
三極管一樣的人 發表于 2022-12-19 16:38
這是不是燈珠電源沒了?

要亮的IO口低電平,其它IO口輸出高電平即可?礃侵鞒绦蛟趺磳懥
作者: 3wjkdhus    時間: 2023-1-15 20:57
NE555+CD4017就行搞這么復雜成本也高

作者: 初夏a    時間: 2023-4-3 13:58
將單片機換成AT89C51,咋不亮啊
作者: 周工58    時間: 2023-5-1 21:27
實物以作出來了,用的現成的DB9.接口作的。STC15單片機制作的,I0改下。跟上面原理圖有所不同。三個按鍵。一個控制常亮。全部亮。一個控制流水燈形式。一個按鍵手動控制,按一下,燈走動一下。下面是制作的實物圖。

e12d32446c932a340a07ac9d8dbb17d.jpg (311.7 KB, 下載次數: 163)

e12d32446c932a340a07ac9d8dbb17d.jpg

作者: dpl123    時間: 2024-4-24 22:53
如果測量50p排線io口不夠用
作者: zhang32568    時間: 2024-5-12 22:13
大炮打蚊子  大材小用
作者: 周工58    時間: 2024-8-24 09:05
dpl123 發表于 2024-4-24 22:53
如果測量50p排線io口不夠用

可以擴展的啊
作者: bg8cwq    時間: 2024-11-9 10:26
不錯的東西可以借鑒一下
作者: MJG365123    時間: 2024-11-18 23:41
改成能測長度更好。
作者: dyx811    時間: 2024-12-11 16:24
燈珠回路最好串聯一個限流電阻,保護單片機IO口,同時節省功耗。如果能用LED屏幕直觀顯示通斷線,加入一些尋線功能,做成多功能的,就更好了。
作者: 51heizly    時間: 2024-12-11 20:32
不錯




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲精品乱码久久久久久9色 | 国产在线一区二区三区 | 亚洲国产一区在线 | 国产精品久久免费观看 | 欧美v在线 | 国产精品久久久久久婷婷天堂 | 欧美日韩福利视频 | 免费黄色大片 | 久久成人国产 | 91精品国产一区二区三区 | 一区二区高清 | av资源中文在线天堂 | 日韩毛片在线免费观看 | 日韩激情一区 | 91精品国产高清一区二区三区 | 午夜影院 | 国产极品车模吞精高潮呻吟 | 国产精品精品视频一区二区三区 | 精品国产黄a∨片高清在线 www.一级片 国产欧美日韩综合精品一区二区 | 看av电影 | 久草.com | 999久久久 | 在线中文字幕第一页 | 成人免费视频网站在线看 | 日韩在线观看一区 | 国产精品日韩欧美 | 欧美成人精品一区二区三区 | 亚洲综合国产 | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 亚洲成人一区二区 | 午夜视频一区二区 | 国产成人精品一区二 | 欧美激情视频一区二区三区在线播放 | 91免费观看 | 国产精品自产av一区二区三区 | 国产一区亚洲二区三区 | 欧美性a视频 | 97av视频在线观看 | 日本在线一二 | 日日日色 | 国产成人免费 |