国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

電子工程網

標題: 51系列I/O口上拉電阻使用點滴 [打印本頁]

作者: 單片機    時間: 2009-5-25 11:46
標題: 51系列I/O口上拉電阻使用點滴
按常規,在51端口(P1、P2、P3)某位用作輸入時,必須先向對應的鎖存器寫入1,使FET截止。一般情況是這樣,也有例外。所謂IO口內部與電源相連的上拉電阻而非一常規線性電阻,實質上,該電阻是由兩個場效應管并聯在一起:一個FET為負載管,其阻值固定;另一個FET可工作在導通或截止兩種狀態(姑且叫可變FET)。使其總電阻值變化近似為0或阻值較大(20千歐--40千歐)兩種情況。當和端口鎖存器相連的FET由導通至截止時,該阻值近似為0,可將引腳快速上拉至高電平;當和鎖存器相連的FET由截止至導通時,該電阻呈現較大阻值,限制了和端口鎖存器相連的FET的導通電流。

51I/O口作為輸入端和外部信號相連有時必須考慮上述特性,本人在設計LTP1245熱敏打印頭驅動板時,資料上推介熱敏頭“抬頭”和“紙盡”信號由頭中內嵌檢測電路提供,MCU IO口采集該信號時需加緩沖(如74HC04)。當時本人認為51IO口上拉電阻為一較大阻值的固定電阻,對 輸入信號無影響,故未加緩沖電路(為降低成本能省則。?傻秸{試PCBA時發現,“抬頭”、“紙盡”狀態變化時,采集信號只在3.90V--5.10V之間變化,應為低電平時無低電平輸出。究其原因,打印頭的“抬頭”、“缺紙”信號輸出為一光敏三極管的集電極輸出,集電極和電源間原有一個負載電阻,飽和導通設計工作電流僅為450--1100微安,當該集電極直接和MCU IO口某位相連時,IO口上拉電阻和光敏三極管負載電阻并聯,當IO口上拉時,上拉電阻極小致使光敏三極管直流負載線斜率陡然增大,工作狀態進入放大區而非希望的飽和區。當時在不改硬件的條件下,我幾乎無計可施,甚至想到了準備燒斷IO口上拉電阻(前兩天我曾發帖求救怎么燒斷IO口上拉電阻的方法)后來聽網友建議該方法風險較大,所以總想用軟件方法解決。

后來我的解決方法是:采樣信號前不是先向對應鎖存器寫1,而是先寫入0,再寫入1,延時約10毫秒以上,然后再采樣(當然此法只適應于采樣頻率很低的情況)。這樣作的目的是:先寫入0迫使IO口上拉電阻先為一較大值,此時如果外部光敏三極管本來處于截止狀態,當完成上述一系列鎖存器的寫入過程后光敏管仍為截止態,IO口正確采樣到高電平;此時如果外部光敏三極管基極電流足夠大有容許三極管飽和導通的條件(即基極吸收到充分光強),雖然采樣一開始集電極被人為鉗位在低電平,但當下一時隙和IO口相連的鎖存器被寫入1時,在IO口上拉電阻中的可變FET導通之前,光敏三極管已先進入飽和態而又把引腳鉗位在實際輸出的低電平,此時MCU IO口的上拉電阻仍為較大阻值,同時和原光敏三極管集電極負載電阻并聯(考慮并聯后阻值變化,原光敏三極管集電極負載電阻需增大到適當阻值)充當飽和導通后光敏三極管的負載電阻,事實上,IO口上拉電阻中的可變FET未來得及導通又被截止了,由此又保證了信號低電平的正確采樣。經過波形測試問題得。
作者: McuPlayer    時間: 2009-6-19 00:41
51其實完全可以放棄外部總線,把IO口做成類似PIC的IO,再也不用考慮什么弱上拉/準雙向口之類的折磨了。
實際上已經有廠家這么做了..........
作者: jxb01033016    時間: 2009-6-19 08:52

作者: xllin    時間: 2009-6-30 15:46
就是。支持
作者: 高速上的板車    時間: 2010-9-4 09:23
雞翅
作者: mqxc    時間: 2010-9-15 21:43
非常感謝
作者: alpha321    時間: 2010-10-12 19:25
感謝樓主分享經驗!
這種問題確實很少見,一般都會把51單片機的口線(除P0外)當做線性電阻上拉的.但如果口線作為輸入且負載有要求時,該輸入腳是不能作為高阻態的.這種問題通常和具體的芯片有關.
PIC等的口線不用準上拉,可是輸入和輸出功能轉換時必須由程序切換,而不像51的口線那樣方便.有些特性是根據具體應用而定的,芯片的功能各有千秋.
作者: pcbkey    時間: 2015-2-7 10:24
支持一下




歡迎光臨 電子工程網 (http://www.4huy16.com/) Powered by Discuz! X3.4