1. 程式人生 > >【STM32CubeMX】1,STM32之GPIO埠輸入模式配置

【STM32CubeMX】1,STM32之GPIO埠輸入模式配置

主要參考這兩篇文章

https://blog.csdn.net/flaming999/article/details/52487904

https://blog.csdn.net/kevinhg/article/details/17490273

2、推輓輸出與開漏輸出的區別

推輓輸出:可以輸出高,低電平,連線數字器件;開漏輸出:輸出端相當於三極體的集電極. 要得到高電平狀態需要上拉電阻才行. 適合於做電流型的驅動,其吸收電流的能力相對強(一般20ma以內). 

推輓結構一般是指兩個三極體分別受兩互補訊號的控制,總是在一個三極體導通的時候另一個截止. 
要實現 線與 需要用OC(open collector)閘電路.是兩個引數相同的三極體或MOSFET,以推輓方式存在於電路中,各負責正負半周的波形放大任務,電路工作時,兩隻對稱的功率開關管每次只有一個導通,所以導通損耗小,效率高。輸出既可以向負載灌電流,也可以從負載抽取電流

當埠配置為輸出時: 
開漏模式:輸出 0 時,N-MOS 導通,P-MOS 不被啟用,輸出0。 
輸出 1 時,N-MOS 高阻, P-MOS 不被啟用,輸出1(需要外部上拉電路);此模式可以把埠作為雙向IO使用。 
推輓模式:輸出 0 時,N-MOS 導通,P-MOS 高阻 ,輸出0。 
輸出 1 時,N-MOS 高阻,P-MOS 導通,輸出1(不需要外部上拉電路)。

簡單來說開漏是0的時候接GND 1的時候浮空 推輓是0的時候接GND 1的時候接VCC



相關推薦

STM32CubeMX1STM32GPIO輸入模式配置

主要參考這兩篇文章https://blog.csdn.net/flaming999/article/details/52487904https://blog.csdn.net/kevinhg/article/details/174902732、推輓輸出與開漏輸出的區別推輓輸出

STM32CubeMX11STM32CAN迴環測試過濾器的匹配設定FIFO與過濾器的關聯

1,因為自己目前只有一塊板子有CAN模組,所以先做CAN的迴環測試。主要參考http://www.stm32cube.com/question/33下面的程式碼測試可以使用1-1,在CAN的程式設計中,主要是注意四大結構體,這幾個都是自動生成的,1、CAN_HandleTyp

STM32CubeMX5STM32ADC

1,初步配置。對於滑動變阻器的電壓輸出 還有就是printf、scanf的重定向,在uart.c中 int fputc (int ch ,FILE *f) { HAL_UART_Transmit(&huart1,(uint8_t *)&ch,

STM32GPIO的8種配置模式

STM32晶片的GPIO一共有8種配置模式,對8種模式的理解如下 1.四種輸入模式 上拉輸入:在預設狀態下,讀取的GPIO引腳為高電平 下拉輸入:在預設狀態下,讀取的GPIO引腳為低電平 浮空輸入:配置成這種模式時,電壓表測量引腳電壓為1點幾伏,為不確定值,因為其阻抗較大,

Maven1.使用myecplise配置自己的Maven配置不使用默認的maven

ces images 技術 指定 我們 apach 這也 有用 epo 【好文章】參考地址: http://www.cnblogs.com/luotaoyeah/p/3764533.html ---------------------------------------

編程思想多線程與多進程(1)——以操作系統的角度述說線程與進程

意圖 發生 多個 責任 提升 get 好的 9.png 順序 什麽是線程 什麽是線程?線程與進程與有什麽關系?這是一個非常抽象的問題,也是一個特別廣的話題,涉及到非常多的知識。我不能確保能把它講的話,也不能確保講的內容全部都正確。即使這樣,我也希望盡可能地把他講通俗一點,

HBase基礎教程1、HBase單機模式與偽分布式模式安裝(轉)

service 4.2 zookeepe .tar.gz class href base mem 創建 在這篇blog中,我們將介紹Hbase的單機模式安裝與偽分布式的安裝方式,以及通過瀏覽器查看Hbase的用戶界面。搭建hbase偽分布式環境的前提是我們已經搭建好了had

Flask增加使用者體驗 abort和@errorhandler裝飾器自定義錯誤頁面和資訊

一、abort函式 概念:flask中的異常處理語句,功能類似於python中raise語句,只要觸發abort,後面的程式碼不會執行,abort只能丟擲符合http協議的異常狀態碼(不同於return可以返回自定義狀態碼,這裡不做討論)。 應用場景:一般用來實現自定義的錯誤資訊,讓程式

mysqlcount(*)count(1)與count(column)區別

count(*)對行的數目進行計算,包含NULL count(column)對特定的列的值具有的行數進行計算,不包含NULL值。 count()還有一種使用方式,count(1)這個用法和count(*)的結果是一樣的。 效能問題 1.任何情況下SELECT COUNT(*)

1.RabbitMQ生產者消費者通道佇列交換器和繫結

瞭解訊息通訊中的一些重點概念對於深化對RabbitMQ的理解有重要的意義;下面從生產者,消費者,通道,佇列,交換器和繫結,來介紹他們在訊息通訊過程中的角色和作用; 生產者:   建立訊息,然後釋出到代理伺服器(RabbitMQ) 消費者: 連線到代理伺服器

hadoop1、MapReduce進行日誌分析並排序統計結果

1.網上很多關於搭建Hadoop叢集的知識,這裡不多做敘述,並且本機執行Hadoop程式是不需要hdfs叢集的,我們本機執行只做個demo樣式,當真的需要執行大資料的時候,才需要真正的叢集 2.還有就是詞頻統計的知識,不論是官方文件,還是網上的知識,基本都能隨意百度個幾百篇出來 但是我找半天,確實是沒有找

LEDEx86軟路由路-10-都能用Docker了LXC還遠嗎?

opkg install gnupg-utils opkg install gnupg opkg install kmod-veth opkg install lscpu opkg find lxc* | cut -d ' ' -f 1 | xargs opkg in

STM32CUBEMXHAL 庫的 Timeout=1 異常分析

背景 STM32CUBEMX 在生成的庫函式,基本上都有輸入引數 Timeout。 比如說: HAL_StatusTypeDef HAL_SPI_Transmit(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t

原創大資料基礎Hive(1)Hive SQL執行過程

hive 2.1   hive執行sql有兩種方式: 執行hive命令,又細分為hive -e,hive -f,hive互動式; 執行beeline命令,beeline會連線遠端thrift server; 下面分別看這些場景下sql是怎樣被執行的: 1 hive命令 啟動

docker效能優化-redis主從複製第一次準備

主從複製說明  面臨問題 在實際的場景當中單一節點的redis容易面臨風險。 比如: 1、機器故障。我們部署到一臺 Redis 伺服器,當發生機器故障時,需要遷移到另外一臺伺服器並且要保證資料是同步的。而資料是最重要的,如果你不在乎,基本上也就不會使用 Redis 了。

Hadoop基礎教程1、Hadoop伺服器基礎環境搭建

本blog以K-Master伺服器基礎環境配置為例分別演示使用者配置、sudo許可權配置、網路配置、關閉防火牆、安裝JDK工具等。使用者需參照以下步驟完成KVMSlave1~KVMSlave3伺服器的基礎環境配置。 開發環境 硬體環境:Centos

tensorflow1.安裝Tensorflow開發環境安裝Python 的IDE--PyCharm

【百度網盤-技術-pycharm破解需要的有安裝包和破解jar】 ================================================== 安裝Tensorflow開發環境,安裝Python 的IDE--PyCharm   1.PyCharm-phthon開發的I

原創運維基礎Ansible(1)簡介、安裝和使用

ets 安裝 yum ant gem get 結構 ges describe 官方:https://www.ansible.com/ 一 簡介 Ansible is a radically simple IT automation engine that automate

原創運維基礎Nginx(1)簡介、安裝、使用

官方:http://nginx.org nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, originally written by

開源1句程式碼搞定圖片批量上傳無需什麼程式碼功底無語言界限

/// <summary> /// 圖片上傳 /// </summary> /// <returns></returns> public JsonResult Upload(HttpPo