https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/gpio.html
https://blog.csdn.net/toopoo/article/details/98788829
http://www.360doc.com/content/20/0312/20/42387867_898729516.shtml
esp32開發板在arduino框架下,34 35 36 39 腳只能作為輸入且沒有內部上拉,外接開關型輸入時有2種接法:開關的一腳接5V正極和5V負極。
開關 接5V正極時,當開關斷開時,引腳要拉低接近0v,盡管可以設置引腳為下拉輸入,但實際上有些引腳不能實現下拉到0V,外接下拉電阻阻值必然很低,當開關接通5V時必然損耗電流大。不接外部下拉電阻,低壓超過邏輯高電平必然引起單片機誤判。
外部開關接5V負極時,開關閉合時肯定引腳低壓為0V,當開關斷開時,引腳實現高電平有兩種方法:外接電阻 設置輸入引腳拉高,但有些引腳設置拉高后並不能拉高,最保險就是外接電阻。當開關斷開時,需要串接大阻值電阻可實現拉高電位,當開關閉合后,5V經大阻值電阻接地損耗電流也小。
對比開關兩種外接方式,單片機引腳外部電壓拉高更合理。34 36 39三個引腳用20k電阻拉高到3.2v,35腳要用200歐電阻拉高到4V多,此腳拉高電阻阻值要小很多。
