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

標題: 有沒有大佬提供一種多線檢測短路的芯片 [打印本頁]

作者: qinyi666    時間: 2025-6-20 15:16
標題: 有沒有大佬提供一種多線檢測短路的芯片
現在有四十根線,需要檢測任意兩根線之間有沒有短路,有沒有大佬提供一下可用的芯片和大概方法

作者: cnos    時間: 2025-6-21 21:29
40個IO做二分法
作者: WL0123    時間: 2025-6-22 08:21
沒有遇到過這種用途的專用芯片,但可用單片機自制。曾經為某產品專用排線制作過26芯排線檢測裝置。是利用手頭現成材料,薅嘉立創羊毛打板,編程測試滿足需求。你只要選擇有更多IO口的芯片,套用這個程序就可以了。





  1. #include <STC15F2K60S2.H>
  2. #include <intrins.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. #define ulong unsigned long

  6. sbit K1 = P5^4;
  7. sbit K2 = P5^5;
  8. sbit LED1= P4^1;
  9. sbit LED2= P4^2;
  10. sbit FM = P4^5;

  11. //全局變量聲明
  12. uchar Key_value;//鍵值
  13. uchar error;//錯誤
  14. uchar Buzzer_sign;//蜂鳴器計次數
  15. //本地函數聲明
  16. void Delay_ms(uint t);
  17. void Timer1Init();
  18. void key_scan();   //按鍵掃描函數
  19. //主函數
  20. void main()
  21. {
  22.         P0M0 = 0x00;
  23.         P0M1 = 0x00;
  24.         P1M0 = 0x00;
  25.         P1M1 = 0x00;
  26.         P2M0 = 0x00;
  27.         P2M1 = 0x00;
  28.         P3M0 = 0x00;
  29.         P3M1 = 0x00;
  30.         P4M0 = 0x20;//P4.5推挽
  31.         P4M1 = 0x00;
  32.         P5M0 = 0x00;
  33.         P5M1 = 0x00;
  34.         FM=0;//蜂鳴器初始0
  35.         Timer1Init();
  36.         while(1)
  37.         {
  38.                 key_scan();      //按鍵掃描函數
  39.         }
  40. }

  41. void key_scan()
  42. {            
  43.         uchar i;
  44.         ulong a,b,c,d;
  45.         ulong num,num1;

  46.         if(!K1)
  47.         {
  48.                 Delay_ms(10);
  49.                 if(!K1)//短路測試
  50.                 {
  51.                         num=0xfffffffe;
  52.                         for(i=25;i>0;i--)
  53.                         {
  54.                                 P3=num>>24;
  55.                                 P2=num>>16;
  56.                                 P1=num>>8;
  57.                                 P0=num;
  58.                                 a=P3;b=P2;c=P1;d=P0;
  59.                                 _nop_();_nop_();
  60.                                 num1=0xfc000000|(a<<24)|(b<<16)|(c<<8)|d;
  61.                                 if(num==num1)
  62.                                 {
  63.                                         num=num<<1|1;
  64.                                         error=1;
  65.                                 }
  66.                                 else
  67.                                 {
  68.                                         i=1;
  69.                                         error=2;
  70.                                 }
  71.                                 Delay_ms(1);
  72.                         }
  73.                         if(error==1){Buzzer_sign=1;}
  74.                         if(error==2){Buzzer_sign=3;}
  75.                         TR1 = 1;
  76.                         while(!K1);
  77.                 }
  78.         }
  79.         if(!K2)//開路測試
  80.         {
  81.                 Delay_ms(10);
  82.                 if(!K2)
  83.                 {
  84.                         P3=0x03;P2=0xff;P1=0xff;P0=0xff;
  85.                         _nop_();_nop_();
  86.                         a=P3;b=P2;c=P1;d=P0;
  87.                         num1=(a<<24)|(b<<16)|(c<<8)|d;
  88.                         if(num1 == 0x00000000)
  89.                         {
  90.                                 error=1;
  91.                         }
  92.                         else
  93.                         {
  94.                                 error=2;
  95.                         }
  96.                         if(error==1){Buzzer_sign=1;}
  97.                         if(error==2){Buzzer_sign=3;}
  98.                         TR1 = 1;
  99.                         while(!K2);
  100.                 }
  101.         }
  102. }


  103. //T1中斷服務函數
  104. void InterruptTimer1() interrupt 3
  105. {
  106.         static uint i=0;                        //中斷計數變量

  107.         if(++i>=1000)//200ms
  108.         {
  109.                 i=0;
  110.                 Buzzer_sign--;
  111.                 if(Buzzer_sign==0)
  112.                 {
  113.                         FM=1;
  114.                         LED1=1;
  115.                         LED2=1;
  116.                         error=0;
  117.                         TR1 = 0;
  118.                 }
  119.         }
  120.         if(i<500)
  121.         {
  122.                 FM=~FM;
  123.                 if(error==1)LED1=0;
  124.                 if(error==2)LED2=0;
  125.         }
  126.         else                                         //蜂鳴器端口清0         
  127.         {
  128.                 FM=0;
  129.                 LED1=1;
  130.                 LED2=1;                                        //定時器1關閉               
  131.         }


  132. }
  133. /*---------------------------------------------
  134.   定時器1初始化,時鐘1T、16位重載模式
  135. ----------------------------------------------*/
  136. void Timer1Init(void)                //200微秒@11.0592MHz
  137. {
  138.         TMOD &= 0x0F;                //設置定時器模式
  139.         TMOD |= 0x20;                //設置定時器8位自動重裝模式
  140.         TL1 = 0x48;                //設置定時初始值
  141.         TH1 = 0x48;                //設置定時重載值
  142.         TF1 = 0;                //清除TF1標志
  143. //        TR1 = 1;                //定時器1開始計時
  144.         EA  = 1;
  145.         ET1 = 1;
  146. }
  147. /*****************************
  148.         延時函數
  149. *****************************/
  150. void Delay_ms(uint t)//1T@11.0592MHz
  151. {
  152.         uint i,j;
  153.         for(i=t;i>0;i--)
  154.                 for(j=1100;j>0;j--);
  155. }
復制代碼








歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美18免费视频 | 亚洲欧美高清 | 毛片免费在线观看 | 免费国产视频 | 久久精品在线播放 | 日韩精品中文字幕在线观看 | 五月婷婷丁香花 | 日本在线免费观看 | 一区二区欧美日韩 | 中文字幕免费高清 | 一级片av| 欧美一级特黄视频 | 亚洲高清在线视频 | 日本少妇中文字幕 | 日韩精品免费视频 | 国产日产精品一区二区三区的介绍 | 天天操夜夜干 | 久久久三级 | 国产一区二区在线视频 | 欧美精品色 | 欧美性猛交99久久久久99按摩 | 色中色综合| 欧美在线播放视频 | 午夜一区二区三区 | 久久综合热 | 欧美日韩专区 | 99re国产 | www.天堂av| 日韩国产精品一区二区 | 日本中文在线观看 | 日韩一区二区视频 | 亚洲综合视频在线观看 | 在线观看网址你懂的 | 日本一级一片免费视频 | 热久久久久 | 国产精品第五页 | 色婷婷影院| 国产寡妇亲子伦一区二区三区四区 | 日本高清中文字幕 | 四川一级毛毛片 | 欧美激情网站 |