天天看點

m0單片機io口_單片機小知識總結

①RST複位電路

m0單片機io口_單片機小知識總結

51單片機是高電平複位,低電平正常工作 

上電瞬間以及按下按鍵(電容相當于導線),RST為高電平。 

按鍵按下的瞬間會産生大電流沖擊,會局部産生較大的電磁幹擾。為了減小這種幹擾,加一個一個限流電阻。

②有關RAM和FLASH

STC89C52RC系列單片機有512B的RAM以及8K的Flash(程式存儲空間)

RAM就是平時存儲變量的,比如你定義了一個什麼bit、uint8、 uint16 、uint32等等這些都是在RAM中定義的。 

512B的RAM雖然名字一樣,但是在實體結構以及用法是有差別的。 

沿襲老8051單片機的叫法,依舊叫為片内RAM和片外RAM。所謂的片内和片外是指晶片内部和晶片外部,但是現在的單片機的晶片拓展基本上都在内部,不存在什麼片外拓展RAM。但是我們仍依舊這麼叫,知道這回事就行了。

片内RAM分為 data、idata一般我們直接定義的變量都是直接在data裡面的,data是直接尋址的,是速度最快的。而其他都是通過寄存器間接尋址的,其速度當然不可同日而語。 

其中data的範圍是從片内的0x00~0x7F共128位元組 

而idata範圍是從片内的0x80~0xFF也是128B但是它同時不用來存儲變量,當然也不希望程式能通路到這裡,它主要的用途就是用來中斷與函數的調用。

片外RAM分為pdata、xdata如上所述,均是通過寄存器來間接尋址的。 

pdata的尋址範圍是片外的0x00~0xFF共256B。尋址速度相對來講比xdata快 

xdata的尋址範圍是片尾的0x0000~0xFFFF共64K。尋址範圍最廣,如要使用還得專門配置兩個位元組寄存器DPTRH和DPTRL,尋址範圍的廣,也就意味着速度是最慢的。

是以呢,總結一下就是:一般變量存儲在data區域,當data不夠了,在去尋xdata區域,idata不要觸碰。pdata不到萬不得已也不要!!!

看似高位元組拓展的128RAM是和寄存器的位址相重疊,但是實體上并不重疊 

m0單片機io口_單片機小知識總結

③三極管

用途主要有:驅動和控制兩個 

三極管的特性:截止、飽和、放大。 

(在數電中主要用到的是三極管的開關作用,用到的是截止和飽和特性(有一個β因數)。而在模電當中用到的是則是它的放大特性)

m0單片機io口_單片機小知識總結
m0單片機io口_單片機小知識總結
m0單片機io口_單片機小知識總結

④按位元組編碼尋址以及按字編碼尋址

按位元組編碼尋址,1M = 2^20B 而 1B=8bit是以2^20B/1B = 2^20 

可尋位址為1~2^20-1 

需要二十根總線

按字編碼尋址,1字的4B,其他同上,那麼2^20/1字=2^20/4B=2^18 

可尋位址為1~2^18-1 

需要十八跟總線

對了,除此之外還要注意一個東西,就是MB和M的差別 

MB是一個容量機關,兆位元組 

而M是一個數量機關,兆

LED壓降為2V,工作電流1~20mA**一般在1~5,mA之内的變化可以直接展現在燈的亮程度,超過5mA就沒那麼明顯了是以選取的串聯電阻可以選**150歐~3K

⑤三八譯碼器快速記住對應的,其實左邊三個可以看成二進制是幾,對應的右邊哪一位就是0

比如左邊A2 A1 A0為0 0 0那麼右邊Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 對應的值就是 0 1 1 1 1 1 1 1

⑥關于IO口 

IO口有四種狀态,準雙向,開漏,強推挽,高阻

應用最多的得數準雙向和開漏了,兩者的主要差別就是開漏内部是沒有上上拉電阻的。51單片機的P0預設就是開漏,而其他口均是準雙向IO對于P0在自己DIY小電路的時候切記不要忘了加外部加上拉電阻! 

對于準雙向IO要特别注意:51單片機的一個重要知識準雙向IO口,如果要正确讀取外部信号的狀态,首先必須保證自己是高電平

⑦上拉電阻和下拉電阻

上拉電阻的主要應用場合有: 

OC門即是開漏輸出 

需要增大電流輸出時,加一個上拉相當于并聯一個電阻。 

也能起到限流作用,如5V轉12V系統 

抵抗EMI(電磁幹擾)

sbit 

sbit用于定義單位元組可位尋址對象的某位,“單位元組可位尋址”包括可位尋址特殊功能寄存器和RAM中可位尋址區的16個位元組。

bata 關鍵字可将變量定位到内部的RAM的可位尋址。 

eg:

char bdata bittest;

sbit RIbit = bittest^0;

sbit TIbit = bittest^1;

sbit P1_0 = P1^0;

⑧ 有關IO口拉成高電平的總結

通常我們會遇到在普通的準雙向IO口下,出現IO口拉不到高電平的情況。這個時候怎麼辦呢? 

嘗試所有的IO口狀态,有的比較特殊,比如IO口外接上上拉電阻,必須開漏才能拉成高電平。 

單片機是否速度過快,可以适當延時。。

⑨關于繼電器

子產品接口: 

1、DC+:接電源正極(電壓按繼電器要求,有5V.9V.12V和24V選擇) 

2、DC-:接電源負極 

3、IN:可以高或低電平控制繼電器吸合 

繼電器輸出端: 

1、NO:繼電器常開接口,繼電器吸合前懸空,吸合後與COM短接 

2、COM:繼電器公用接口 

3、NC:繼電器常閉接口,繼電器吸合前與COM短接,吸合後懸空

高低電平觸發*選擇端:*

1.跳線與LOW短接時為低電平觸發;

2.跳線與high短接時為高電平觸發。

m0單片機io口_單片機小知識總結

⑩、關于DS18B20的引腳

簡而言之,就是。平面面向自己以後,三個腳分别是GND、VOUT和VCC

上張圖明白一切 

m0單片機io口_單片機小知識總結

11、DHT11

DHT11 是一款含有已校準單總線數字信号輸出的溫濕度複合傳感器,它包括一個電阻式感濕 元件和一個 NTC 測溫元件,并與一個高性能 8 位單片機相連接配接。DHT11 是屬于民用型器件,測量 值僅精确到個位,即小數點後無資料,如果要使用于工業産品或更精确的應用,建議使用 DHT21 或 SHT10。

m0單片機io口_單片機小知識總結

注意的是那個NA或者NC引腳,表示是空引腳。

轉自:單片機及C語言學習

繼續閱讀