今天呢,我們?cè)賮?lái)講一下,我們?yōu)槭裁匆獙W(xué)單片機(jī)?2
單片機(jī),到底是學(xué)些什么東西?
?
單片機(jī)就是對(duì)我們I/O口得一個(gè)控制,無(wú)論單片機(jī)對(duì)外界進(jìn)行何種控制,都是通過(guò)我們單片機(jī)得I/O口來(lái)進(jìn)行操作得。
所以我們學(xué)單片機(jī)也就是學(xué)我們這個(gè)I/O得一個(gè)操作,還有就是接受外部得一個(gè)控制,通過(guò)I/O來(lái)感受外部得一個(gè)電壓。
通過(guò)單片機(jī)來(lái)接收外部得一個(gè)輸入信號(hào),也就是通過(guò)我們得I/O口來(lái)感受外部得一個(gè)電壓,一個(gè)變化,我們也要學(xué)。
51單片機(jī),它總共有P0 P1 P2 P3這四個(gè)八位得雙向輸入輸出端口。
這里要注意,我們單片機(jī)這四個(gè)I/O口它可以作為雙向使用,也就是說(shuō)可以進(jìn)行輸入也可以作為輸出。
每個(gè)端口呢,都有儲(chǔ)存器,輸出驅(qū)動(dòng)器和輸入緩沖器。
I/O內(nèi)部得一個(gè)電路得四個(gè)I/O端口呢,都能作為輸入輸出口使用,也就是說(shuō)我們這個(gè)P0 P1 P2 P3這四個(gè)端口呢,都可以作為輸入和輸出使用。
總得來(lái)說(shuō)學(xué)單片機(jī)這個(gè)I/O口得一個(gè)控制,以及單片機(jī)內(nèi)部得一些資源得一些使用,比如說(shuō)定時(shí)器中斷,這個(gè)也是在學(xué)51單片機(jī)中得一個(gè)難點(diǎn)。
我們?cè)賮?lái)看一下單片機(jī)I/O口內(nèi)部得一個(gè)結(jié)構(gòu),它是怎么樣得?這里有三種,一種是準(zhǔn)雙向得I/O口,還有一個(gè)是開(kāi)漏輸出得I/O,還有是強(qiáng)推挽輸出得I/O。
?
我們51單片機(jī)通常使用得是這兩種。I/O口使用這兩種,一種是準(zhǔn)雙向得I/O,另外一種是開(kāi)漏輸出得I/O。
開(kāi)漏輸出是針對(duì)我們51單片機(jī)得P0口,51單片機(jī)P0口呢,他沒(méi)有上拉電阻,所以他要輸出高電頻得話,他必須外部來(lái)接一個(gè)上拉才能輸出一個(gè)低電頻或者是高電頻。
而準(zhǔn)雙向I/O,他內(nèi)部已經(jīng)上拉了一個(gè)電阻所以他直接可以輸出高電頻和低電頻,不需要外部加。
單片機(jī)P0口,他是開(kāi)漏輸出得I/O,P1 P2 P3,它都是準(zhǔn)雙向得一個(gè)I/O,也就是說(shuō)都是內(nèi)部具有上拉電阻得。而P0口呢,它是沒(méi)有上拉電阻得,他必須要通過(guò)外接一個(gè)上拉才能進(jìn)行輸出。
我們看一下他怎么來(lái)輸出高低電頻得,這是我們內(nèi)部單片機(jī)內(nèi)部得一個(gè)輸出口,假設(shè)我們輸出內(nèi)部輸出一個(gè)高電頻,經(jīng)過(guò)一個(gè)反向器變成低電頻,反向器就是將我們高電頻變成低電頻,低電頻變成高電頻,這樣一個(gè)反向得一個(gè)作用,然后通過(guò)上拉電阻,電壓過(guò)來(lái)就輸出一個(gè)高電頻。
漏極開(kāi)漏得一個(gè)I/O呢,它沒(méi)有上拉,如果要輸出高電頻得話,這個(gè)I/O口它是沒(méi)有輸出信號(hào)得,如果要讓他輸出信號(hào),你必須外部接一個(gè)上拉電阻,這樣得話他才會(huì)輸出一個(gè)高電頻,如果輸出低電頻得話,那么這里是高電頻,高電頻得話呢,那么電頻過(guò)來(lái)可以輸出低電頻,但是他不能輸出高電頻,這里大家要注意。
不確定得信號(hào),通過(guò)這個(gè)上拉電阻來(lái)讓它實(shí)現(xiàn)高電頻,也就是說(shuō)這樣可以起到防干擾得一個(gè)作用,然后呢,就是這個(gè)電阻可以起到限流得作用,因?yàn)檫@個(gè)上拉電阻,電流分流分開(kāi)來(lái)了,所以他起到一個(gè)限流得一個(gè)作用。
那么下拉呢,假設(shè)我們這個(gè)I/O口,這是我們內(nèi)部得一個(gè)輸出,經(jīng)過(guò)一個(gè)反向器過(guò)來(lái)輸出過(guò)來(lái)是一個(gè)上拉電阻
。
我們?cè)賮?lái)看一下上拉電阻它有什么好處,在OC門要輸出高電頻得時(shí)候呢,外部必須加上拉電阻,這個(gè)OC門,就是我們前面說(shuō)到得一個(gè)漏極開(kāi)漏輸出得電路,所以剛才我們也已經(jīng)講了,這里必須要加上拉電阻才能輸出高電頻。
P0口要接上拉電阻,然后加上拉電阻之后還可以加大我們普通I/O口得驅(qū)動(dòng)能力,就是提高我們得一個(gè)驅(qū)動(dòng),讓我們I/O口驅(qū)動(dòng)能力更大,然后還可以起到一個(gè)限流得作用,剛才已經(jīng)講了,還有一個(gè)是防干擾,防電磁干擾,因?yàn)檫@個(gè)上拉電阻可以把我們不確定那個(gè)信號(hào),通過(guò)這個(gè)電阻呢,拉到高電頻。
我們?cè)賮?lái)看一下上下拉電阻得一個(gè)選擇原則。
?
從降低功耗方面考慮呢,因?yàn)殡娮柙酱?,電流越小,因?yàn)楦鶕?jù)歐姆定律可以知道I等于U除以R,電阻越大,那么電流就越小。
從確保足夠得引腳驅(qū)動(dòng)能力考慮,應(yīng)該是要讓這個(gè)上拉電阻足夠得小,因?yàn)殡娮柙叫∧?,電流才越大,同樣是根?jù)這個(gè)歐姆定律。
開(kāi)漏輸出得時(shí)候過(guò)大得上拉電阻會(huì)導(dǎo)致信號(hào)上升沿變緩,前面我們講了OC門電路,這個(gè)P0口要加上拉電阻,上拉電阻,如果選擇得過(guò)大得話,它會(huì)導(dǎo)致我們上升沿變得緩慢,
?
這是我們理想得情況下得一個(gè)上升沿,上升沿就是從我們得電頻變成高電頻。
上拉電阻阻值較小得時(shí)候呢,他上升信號(hào)變化得時(shí)候變換就比較快,如果是上拉電阻比較大得話呢,那么它得信號(hào)變化呢,他得時(shí)間就比較長(zhǎng)。
所以通常呢,我們?cè)谶x擇上拉電阻得時(shí)候呢,通常是4.7K到10K左右,我們開(kāi)發(fā)版也接著就是10K得一個(gè)電阻增加我們得一個(gè)驅(qū)動(dòng)能力,以及防干擾這些功能。
單片機(jī)得一個(gè)介紹呢,我們就講到這里。
免費(fèi)領(lǐng)!單片機(jī)入門到高級(jí)開(kāi)掛學(xué)習(xí)路徑(附教程+工具)
從這節(jié)課開(kāi)始,大家已經(jīng)認(rèn)識(shí)到了單片機(jī),并且知道學(xué)習(xí)單片機(jī)要學(xué)習(xí)哪些東西??煺椅翌I(lǐng)取資料,開(kāi)啟導(dǎo)師一對(duì)一互動(dòng),開(kāi)啟單片機(jī)世界得大門!
?