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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1399|回復: 11
打印 上一主題 下一主題
收起左側

單片機如何搭建電路實現高阻態輸入?

[復制鏈接]
跳轉到指定樓層
樓主
ID:1108479 發表于 2024-7-15 10:47 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
現在有一個芯片A有一個輸入引腳,該引腳接收外部的輸入信號,實現不同的功能。當輸入為高電平時,芯片A產生100Hz脈沖,當輸入為低電平時,芯片A產生1KHZ波形,當該引腳懸空(既不輸入高電平也不輸入低電平,相當于高阻態,類似斷開)時,芯片A什么也不做。

我用單片機的GPIO輸出電平給芯片A的這個輸入引腳,單片機輸出高低電平很簡單,但是斷開功能如何實現?用三極管和MOS管應該能實現,但是不知道電路如何搭出來,希望大神能指點下思路。

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

使用道具 舉報

沙發
ID:1109793 發表于 2024-7-15 13:24 | 只看該作者
用AD功能可以不
回復

使用道具 舉報

板凳
ID:624769 發表于 2024-7-15 13:27 | 只看該作者
目前大多數 單片機的 IO口 會有個模式  叫  高阻態模式, 既不輸出高電平,也不輸出低電平。
回復

使用道具 舉報

地板
ID:1108479 發表于 2024-7-15 13:58 | 只看該作者
188610329 發表于 2024-7-15 13:27
目前大多數 單片機的 IO口 會有個模式  叫  高阻態模式, 既不輸出高電平,也不輸出低電平。

我用的是STM32, STM32是把GPIO設置為輸入才會有讀高電平,低電平,以及懸空輸入的功能。但我這個是要STM32 GPIO輸出給芯片A
回復

使用道具 舉報

5#
ID:1012735 發表于 2024-7-15 14:06 | 只看該作者
接個繼電器行不行,其它引腳控制這個繼電器開合
回復

使用道具 舉報

6#
ID:344848 發表于 2024-7-15 14:28 | 只看該作者
74LS373
回復

使用道具 舉報

7#
ID:624769 發表于 2024-7-15 14:31 | 只看該作者
coolaiMCU 發表于 2024-7-15 13:58
我用的是STM32, STM32是把GPIO設置為輸入才會有讀高電平,低電平,以及懸空輸入的功能。但我這個是要STM3 ...

你單片機 設置為了輸出,對于芯片A來說, 是不是就是“高阻態”?是不是就是相當于“懸空”?
回復

使用道具 舉報

8#
ID:1129021 發表于 2024-7-15 16:41 | 只看該作者
GPIO引腳實現“斷開”的功能,可以將該引腳配置為高阻態,或輸入模式。在高阻態時,GPIO引腳既不會輸出高電平也不會輸出低電平,等效于斷開狀態。
回復

使用道具 舉報

9#
ID:1129021 發表于 2024-7-15 16:43 | 只看該作者
GPIO引腳實現“斷開”的功能,可以將該引腳配置為高阻態或輸入模式。在高阻態時,GPIO引腳既不會輸出高電平也不會輸出低電平,等效于斷開狀態。
回復

使用道具 舉報

10#
ID:1129021 發表于 2024-7-15 16:43 | 只看該作者
#include "stm32f4xx.h"  // 根據使用的單片機型號選擇相應的頭文件

void setup() {
    // GPIO引腳初始化
    RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;  // 使能GPIOA時鐘
    GPIOA->MODER &= ~GPIO_MODER_MODER5;   // 先清除配置(假設使用PA5)
}

void setHigh() {
    GPIOA->MODER |= GPIO_MODER_MODER5_0;  // 設置為輸出模式
    GPIOA->ODR |= GPIO_ODR_ODR_5;         // 輸出高電平
}

void setLow() {
    GPIOA->MODER |= GPIO_MODER_MODER5_0;  // 設置為輸出模式
    GPIOA->ODR &= ~GPIO_ODR_ODR_5;        // 輸出低電平
}

void setHighZ() {
    GPIOA->MODER &= ~GPIO_MODER_MODER5;   // 設置為輸入模式(高阻態)
}

int main() {
    setup();

    while(1) {
        setHigh();    // 輸出高電平
        // 延時...
        setLow();     // 輸出低電平
        // 延時...
        setHighZ();   // 進入高阻態
        // 延時...
    }
}
回復

使用道具 舉報

11#
ID:1109793 發表于 2024-7-15 17:47 | 只看該作者
樓主的意思是要識別三種輸入狀態,高,低,懸空。那么懸空讀進來的大概率是不確定的信號了。你看這樣行不行,把電路中的交流信號比如變壓器前邊的信號用一個例如1MΩ的電阻接到這個腳上面。這樣讀到持續20MS的1就是高,讀到20MS的0就是低,兩種都沒有就是懸空的。
回復

使用道具 舉報

12#
ID:341045 發表于 2024-7-15 20:58 | 只看該作者
有高阻態的單片機直接一個腳連A即可(輸出高低置管腳推挽輸出然后輸出1或0即可, 要輸出高阻,置管腳高阻輸入即可), 如果沒高阻態單片機, 要用2個IO腳才能實現,  一個IO腳控制上臂PNP三極管(或P溝場效應管), IO輸出0時導通輸出高, 另一個IO腳控制下臂NPN三極管(或N溝場效應管), IO輸出1時導通到地. 2個管子的C極(或D極)連在一起作輸出. 00輸出高, 11輸出低, 01(二個管子都不導通高阻), 10(二個管子都導通短路)
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 男女视频在线免费观看 | 成人精品视频在线观看 | 在线观看免费av网站 | 亚洲精品一区二区三区在线 | 成人一区在线观看 | 久久久久国产一区二区三区四区 | 久久国产激情视频 | 玖玖色在线视频 | 国产精品一区在线观看 | 久草在线青青草 | 亚洲综合区 | 中文字幕免费在线 | 一区二区三区四区视频 | 亚洲成人久久久 | 天天干天天爱天天 | 91精品国产欧美一区二区成人 | 2020天天操| 日日天天 | 亚洲+变态+欧美+另类+精品 | 一区二区三区韩国 | 午夜精品一区二区三区在线观看 | 人人做人人澡人人爽欧美 | 久久午夜视频 | 操皮视频| 国产在线看片 | 欧美精品一区二区免费视频 | 亚洲天堂一区二区 | 超碰3| av中文字幕网站 | 日韩a在线观看 | 暖暖日本在线视频 | 欧美一级大片免费观看 | 欧美jizzhd精品欧美巨大免费 | 久久综合一区 | 欧美极品视频 | 久久久美女 | 97中文视频 | 麻豆久久久久久久 | 亚洲成人久久久 | 一区二区三区视频在线 | 中文字幕欧美在线观看 |