欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 51單片機io口怎么檢測電平變化 [打印本頁]

作者: cornelio    時間: 2020-4-16 17:52
標題: 51單片機io口怎么檢測電平變化
信號從一個io口(比如P0^0)輸入單片機,從另一個io口輸出(比如P1^0),怎么實現呢
作者: 我未曾來過    時間: 2020-4-16 23:22
首先,對于你的題目,檢測電平變化可以用電表,如果時間短了可能檢測不出來,但是示波器一定可以但是比較貴。其次,對于你這個問題,你需要輸入的是什么信號?數電還是模電?那是不一樣的。輸出很簡單的。但是輸入的話你需要寫一個讀io口的函數,如果輸入是模電的話你還要進行AD轉換。
作者: finezwl    時間: 2020-4-16 23:45
最簡單的高低電平識別
#include  <STC15F2K60S2.H>


sbit   in = P0^0;
sbit   out = P1^0;

void main()
{
    while(1)
   {
       if (in==0)
           {
                    out=0;
           }
           else if (in==1)
           {
                    out=1;
           }
   }
}
作者: TTQ001    時間: 2020-4-17 08:26
你需要編寫一段代碼來實現該任務。
作者: wulin    時間: 2020-4-17 11:28
#include "reg52.h"  
sbit IN =P0^0;
sbit OUT=P1^0;  

void main()
{
        while(1)
        {
                OUT=IN;
        }
}
作者: Mr丶朋    時間: 2020-4-17 13:25
直接if判斷就行吧
作者: heliuro    時間: 2020-4-17 15:31
#include "reg52.h"sbit IN =P0^0; sbit OUT=P1^0;    void main() {         while(1)         {                 OUT=IN;         } }
作者: heliuro    時間: 2020-4-17 15:40
51單片機對于數字電路信號的輸入輸出很簡單,判斷對應引腳電平就行,以下以點觸型輸入型號為例
#include "reg52.h"  
sbit P0_0 = P0^0;
sbit P1_0 = P1^0;  

void main()
{
        int k = 0;
        while(1)
        {
            if (P0_0 == 0)
           {
                for(k=0;k<30;k++);
                if(P0_0 == 0)
                    P1_0 = 0;
           }
           else if (P1_0 ==1)
           {
                for(k=0;k<30;k++);
                if(P0_0 == 1)
                 P1_0 = 1;
           }
        }
}
而模擬信號需進行AD/DA轉換,這些都是相關教材上必備的知識,需要自己用心去看
作者: hangsy    時間: 2020-4-17 16:09
直接讓P1的輸出等于P0的輸入,有硬件的話可以用萬用表測試檢測一下,沒有硬件的話可以用proteus仿真一下,用里面的探針測試
作者: ONLY_pc    時間: 2020-4-17 20:17
定義一個中間參數唄
作者: zhai1995    時間: 2020-4-18 14:08
一直檢測輸入IO電平,   根據輸入IO狀態,在另一個輸出IO做對應的輸出高低就可以了。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1