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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3516|回復: 12
收起左側

單片機程序功能:測試5根線是否導通。不知道什么問題,麻煩大神給分析下,謝謝

[復制鏈接]
ID:799497 發表于 2020-7-8 16:48 | 顯示全部樓層 |閱讀模式
程序功能測試:5根線是否導通。
測試放法:把5根線公頭分別接到對應的5個端口P1.0 P1.1 P1.2 P1.3 P1.4 母頭接對應端口P2.0 P2.1 P2.2 P2.3 P2.4全部導通對應5個LED燈亮。蜂鳴器不響,有一個不導通蜂鳴器響,
麻煩大神看下哪里有問題,使用杜邦線測試程序是可以的,5個LED燈都亮。要是使用線材測試就只有1個LED燈亮。不知道是哪里問題。線材電阻值太大還是別的什么原因?有沒有更好的解決辦法。

案例程序如下:
#include<reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay(uchar x)
{
uint y;
        for(;x>0;x--)
        for(y=50;y>0;y--);
}


sbit TXD1=P1^0;
sbit TXD2=P1^1;
sbit TXD3=P1^2;
sbit TXD4=P1^3;
sbit TXD5=P1^4;


sbit RX1=P2^0;
sbit RX2=P2^1;
sbit RX3=P2^2;
sbit RX4=P2^3;
sbit RX5=P2^4;


sbit LED1=P0^0;
sbit LED2=P0^1;
sbit LED3=P0^2;
sbit LED4=P0^3;
sbit LED5=P0^4;



sbit Buzzer=P3^7;
sbit Key=P3^0;

void main()

{
         P0 = 0xff;
   P1 = 0xff;
   P2 = 0xff;
   P3 = 0xff;
        

        while(1)
               
        {
                delay(500);
   TXD1=0;
if((RX1==0)&&(RX2!=0)&&(RX3!=0)&&(RX4!=0)&&(RX5!=0))
{   
        
   LED1=0;//1#ÏßOK
}
else
{
   LED1=1;//1#ÏßNG
}

                delay(500);
  TXD2=0;
if((RX2==0)&&(RX1!=0)&&(RX3!=0)&&(RX4!=0)&&(RX5!=0))
{   
        
   LED2=0;//1#ÏßOK
}
else
{
   LED2=1;//1#ÏßNG
}

                delay(500);
   TXD3=0;
if((RX3==0)&&(RX2!=0)&&(RX1!=0)&&(RX4!=0)&&(RX5!=0))
{   
        
   LED3=0;//1#ÏßOK
}
else
{
   LED3=1;//1#ÏßNG
}


                delay(500);
   TXD4=0;
if((RX4==0)&&(RX2!=0)&&(RX3!=0)&&(RX1!=0)&&(RX5!=0))
{   
        
   LED4=0;//1#ÏßOK
}
else
{
   LED4=1;//1#ÏßNG
}

                delay(500);
  TXD5=0;
if((RX5==0)&&(RX2!=0)&&(RX3!=0)&&(RX4!=0)&&(RX1!=0))
{   
        
   LED5=0;//1#ÏßOK
}
else
{
   LED5=1;//1#ÏßNG
}
  delay(500);

if((RX5==0)&&(RX2==0)&&(RX3==0)&&(RX4==0)&&(RX1==0))
{

   Buzzer=1;

}
else
{

   Buzzer=0;


}



}
}

回復

使用道具 舉報

ID:739610 發表于 2020-7-8 22:27 | 顯示全部樓層
用什么片子做的 估計是驅動能力太低  電流太小因而單片機檢測不到有效信號
回復

使用道具 舉報

ID:332444 發表于 2020-7-9 10:08 | 顯示全部樓層
這么簡單的功能用不了那么多代碼,就是測試5條導線是否連通這個功能?實際做蝦米用?測量的是長途的導線?
回復

使用道具 舉報

ID:332444 發表于 2020-7-9 10:13 | 顯示全部樓層
用一個P口中的5個引腳接5條線的一頭,5條導線的另一頭都并在一起接地。
代碼也簡單的很,就是5個值分別去點亮LED即可。
回復

使用道具 舉報

ID:800217 發表于 2020-7-9 10:14 | 顯示全部樓層
是不是驅動太低
回復

使用道具 舉報

ID:332444 發表于 2020-7-9 10:30 | 顯示全部樓層
一個最簡單的辦法:發光管負極接P0口5個每個串連限流電阻接到電源正極,電線接5頭接P1口5個另一端接地,代碼寫:P1=255;P0=P1;這樣就可以了。
回復

使用道具 舉報

ID:332444 發表于 2020-7-9 10:32 | 顯示全部樓層
畫蛇添足的做法,測試導線是否導通,電池+電阻+發光管+導線+開關。
回復

使用道具 舉報

ID:282850 發表于 2020-7-9 10:41 | 顯示全部樓層
給你2個程序,102btye
/*
多線對線器
功能:8(5)線以內,測試蕊線是否接通、是否一一對應
程序功能測試:5根線是否導通。
*/
#define Ls 8     //總線數
#include "msp430x41x.h"
//方法一:3組IO

void main1111111111( void )
{
unsigned char i;
      P1DIR =0xff;      //OUT
      P1OUT =0x01;
      P2DIR =0;       //in,有下拉電阻
      P3DIR =0xff;  //LED
      P3OUT =0;    //H亮
      while(1)
      { //可帶電拔插,每次只亮一個LED,高速掃描,接線正確情況(接通+順序正確)下實看到是所有LED都亮
            P1OUT=0x01;
            for(i=0;i<Ls;i++)
            {
                  if(P2IN==(1<<i)) P3OUT=(1<<i) ;
            }
      }
}   

//方法二:兩組IO,LED串在測試線上,也可看LED的亮度判斷是否有接觸電阻大的問題
void main( void )
{
unsigned char i;
      P1DIR =0xff;      //OUT
      P1OUT =0x01;
      P2DIR =0xff;  //OUT ,LED
      P2OUT =0xff;    //P1 H時亮
      while(1)
      { //可帶電拔插,每次只亮一個LED,高速掃描,接線正確情況(接通+順序正確)下實看到是所有LED都亮
            P1OUT=0x01;
            for(i=0;i<Ls;i++)
            {
                  P2OUT &=~(1<<i)  ;
            }
      }
}   
回復

使用道具 舉報

ID:282850 發表于 2020-7-9 10:46 | 顯示全部樓層
ss1.png

ss2.png
兩個main分另編譯都一次通過,只不過你需要修改,思路可用。

評分

參與人數 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

ID:608600 發表于 2020-7-9 11:52 | 顯示全部樓層
為什么不能用萬用表
回復

使用道具 舉報

ID:136090 發表于 2022-2-14 22:50 | 顯示全部樓層
f556 發表于 2020-7-9 10:46
兩個main分另編譯都一次通過,只不過你需要修改,思路可用。

怎么給你加分?
回復

使用道具 舉報

ID:491875 發表于 2022-2-15 11:33 | 顯示全部樓層
估計是線纜長度問題,線纜比較長時,分布電容和等效電感都必須考慮
回復

使用道具 舉報

ID:491875 發表于 2022-2-15 11:37 | 顯示全部樓層
樓主如果為了學習單片機,這個方法可以,如果為了實用,這個方法不可取!實用化可以考慮類似網線測試儀的辦法
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 夜夜夜夜草 | 日本二区在线观看 | 国产精品高清在线 | 国产日韩久久久久69影院 | 福利久久 | 天天干夜夜拍 | 黄色毛片免费视频 | 国产精品视频网站 | 91视频精选 | 日本一区二区电影 | 黄色免费观看 | 色性av | 成人网av | 久久综合一区二区三区 | 久久毛片| 国际精品鲁一鲁一区二区小说 | 日韩在线欧美 | 国产网站在线免费观看 | 国产在线小视频 | 人人人人干 | 中文字幕亚洲免费 | 日韩久久久久 | 日韩久久久久 | 精品成人在线观看 | 97精品国产97久久久久久免费 | 青青草华人在线视频 | 亚洲黄色av | 亚洲第一av| 国产综合久久 | 久久久久久久一区二区三区 | 欧美极品在线 | 国产精品久久久久久久久免费高清 | 九九热在线视频观看这里只有精品 | 国产精品 欧美精品 | 国产成人精品一区二区三区四区 | 狠狠干综合视频 | 久久伊人操 | 欧美一级片黄色 | 日韩欧美一区二区三区四区 | 久久视频精品在线 | 日韩成人在线看 |