單片機小白學步(4) 模擬電路、傳統數字電路與單片機

2021-01-17 電子產品世界

大家都用過計算器,有沒有想過它是怎麼實現的呢?這裡我不詳述計算器的原理,而只對思路進行簡單介紹。等我們學會了單片機,也可以親手製作一個計算器。用電路進行數學計算

通過電路進行數學計算,應該怎麼做呢?為了便於理解,下面我舉個很簡單的例子。

本文引用地址:http://www.eepw.com.cn/article/201611/318529.htm

在這個電路中,電阻R1=R2,我給A、B兩點分別接入3V和5V電壓,這個時候,C點的電壓則為(5+3)/2=4V。這個電路完成了一個求平均值的操作,如果我們用1V表示數字1,它計算出來3和5的平均值是4;如果我們定義1mV表示數字1,這個電路就計算出了3000和5000的平均值是4000。如果我能通過巧妙的方法,利用電阻電容乃至電晶體等元器件的特性,設計出很多類似這樣的電路,它就可以完成很複雜的四則運算,以及平方、開方、對數等運算。這就是通過電路來幫助我們進行數學計算的簡單例子。在這個例子中,並不見得能體現到電路計算相比於我們用筆紙計算的優勢。但是如果我們把電路做的足夠複雜,它的計算速度是相當快的,並且只要有電能供應,它就永遠不知疲倦的計算,而且不容易出錯。

上面我們設計了一個簡單的模擬電路計算器,它能計算兩個數的平均值,我們用電壓值直接表示數字。但是這個電路在實際中工作並沒有那麼理想。做基本電學實驗測量電壓的時候,大家會發現,電壓的測量總是有誤差的,電壓表有誤差,讀數也有誤差,並且基本上無法避免。自然界中很多東西都是有誤差的。在這裡除了電壓表測出來的值和實際值不同,實際C點電壓值也並不完全等於AB電壓值的平均,因為我們很難保證R1和R2阻值完全一致,並且導線也有電阻。於是我們計算出來的結果,更可能是3.99或者4.01而不是精確的4.00,這就導致我們的計算出了誤差。如果電路複雜了,誤差會逐步累積,越來越大,最後導致計算結果完全沒有意義,而減小電路的誤差也是相當不容易的。

模擬電路與數字電路、十進位與二進位

於是數字電路誕生了。相較於模擬電路的不精確,數字電路就有很大優勢了。注意,數字電路是相對於模擬電路而言的,數字電路的本質也是模擬電路。通常我們所說的模擬電路,指的是除數字電路以外的電路。

我們人類用十進位計數法表示數字,原因是我們有十個手指。而數字電路中使用二進位數字來進行運算,因為很多電子器件往往會有兩種很確定的狀態,比如開關的「開」和「關」,燈的「亮」和「滅」。二進位數其實比十進位數簡單多了。十進位中,從0到9,滿10就向高位進位,即9+1=10;而二進位滿二進一,所以二進位中1+1=10。一開始我們會感覺這樣很彆扭,實際上並非二進位有多難,只是我們習慣了十進位而已。

數字電路中,我們使用的比較多的一種用電壓表示二進位數字的方式,稱為TTL電平(TTL = Transistor-Transistor Logic,原意為邏輯門電路)。它規定+5V電壓為高電平,表示數字「1」,0V電壓為低電平,表示數字「0」。由於電路自身特點,實際上這種TTL電平電路輸出的電壓,並非絕對準確的5V和0V,而是規定將>2.4V的電壓視為高電平, 電壓<0.4V則視為低電平。也正是因為這樣的特點,我們根本不需要將電壓控制的很準確,就能很準確的表示出我們想要表示的數字。和前面的模擬平均數計算電路相比,明顯很有優勢。而這也正是數字電路得以廣泛應用的根本原因。

傳統數字電路和單片機

數字電路的介紹就到此為止,在原理篇中會有更詳細的介紹。事實上,單片機的本質也是數字電路。下面我們要說的傳統數字電路,指的是除單片機這類可編程器件以外的數字電路。下面我們來看看單片機和傳統數字電路的區別。

利用一些常用的傳統數字電路器件(一般都是集成電路晶片),我們可以設計出如下圖的電路。它是一個電子表,有六個數碼管顯示時間,圖中正顯示的就是00:00:18。可以看出來這個電路還是挺複雜的,設計起來也是很費時間的。

但是單片機的出現,使得實現相同功能的電路設計難度大大降低。下圖就是使用單片機設計的電路。同樣是電子表,不僅顯示效果比前面的那個要好,而且功能更強大了,兩個按鍵可以像市面上常見的兩個按鍵的手錶一樣調整時間和日期;而電路卻簡單了很多。我們只需要給單片機寫進去特定的程序,就可以讓它按照我們設計好的方式工作。

如果某天,我們想要給這個電子表增加馬表計時的功能,對於前面的那個數字電路,恐怕整個電路都得重新設計製作;但是對於單片機製作的這個電路,我們只需要修改程序代碼,然後重新寫進去就可以了,就像在電腦上安裝軟體一樣,根本不需要修改電路,十分方便。

傳統數字電路和單片機的關係就像非智慧型手機和智慧型手機的關係一樣,智慧型手機最大的優勢在於它可以安裝各種軟體遊戲,而非智慧型手機就沒有這麼強大的功能。單片機也是如此,同樣的電路,你可以給它下載各種程序,讓它按照你的想法去工作。對於單片機來說,硬體電路是單片機的軀體,而程序才是它的靈魂,而寫程序的你,就是它的上帝。

=======================================================


相關焦點

  • 單片機小白學步(6) 單片機最小系統——麻雀雖小,五臟俱全
    對51單片機來說,最小系統一般包括:電源、單片機、時鐘電路和復位電路。其電路圖如下:  時鐘電路時鐘電路:連接在引腳XTAL1、XTAL2和GND間的電路是時鐘電路(XTAL = External Crystal Oscillator,表示外接晶振)。前面的電源比較好理解,但是什麼是時鐘電路呢?它有什麼用處呢?時鐘電路就像是人的心臟一樣,每時每刻不斷跳動著,對於單片機來說是至關重要的。
  • 小白必看:單片機系統電路經典設計教學
    1、電源  在使用STC89C52RC單片機的時候,工作電壓:5.5V-3.4V(5V單片機),這個地方就說明我們這個單片機正常的工作電壓是個範圍值,只要電源VCC在5.5V到3.4V之間都可以正常工作,電壓超過5.5V是絕對不允許的,會燒壞單片機,電壓如果低於3.4V,單片機不會損壞,但是也不能正常工作。
  • 單片機復位電路原理是什麼 單片機復位電路有哪些?
    復位電路,顧名思義,是一種使電路恢復到起始狀態的的設備。那麼問題來了,單片機為什麼需要復位電路呢?單片機復位電路原理是什麼呢?單片機復位電路有哪些種呢?本文將一一為您解答~~~本文引用地址:http://www.eepw.com.cn/article/269787.htm一、單片機復位電路原理- -簡介復位電路,與計算機的清零按鍵類似,卻又存在不同。
  • 基於單片機控制數字移相器的系統硬體電路設計
    打開APP 基於單片機控制數字移相器的系統硬體電路設計 佚名 發表於 2020-04-15 16:04:59 目前資料上有很多移相電路,其實現方法多種多樣,大致可分為模擬式和數字式移相器兩類。模擬式移相器的電路較為複雜、線性差、測試精度低;數字式移相器大多以標準邏輯器件按傳統數字系統設計方法設計而成,其缺點為功耗大、可靠性低。本文介紹的基於單片機控制的數字移相器,採用環形隊列實現信號波形的任意相位移相,並且保持波形的幅度、頻率不變。其測試精度高,失真度小。系統原理方框圖如圖1所示。
  • 51單片機AD轉換電路設計實現
    51單片機AD轉換電路設計實現關於AD轉換的原理,大家在《數字電子技術》中已經學過,這裡做過多的介紹,本文介紹一款經典的8位AD轉換晶片ADC0804,基於51單片機設計AD轉換電路,並完成測量值的轉換。
  • 單片機與電腦接口(TTL與RS232電平模擬轉換)電路及工作原理
    但是PC機和單片機的通訊卻不能夠用電纜直接進行連接,原因是PC機RS232串口的電平標準和單片機的TTL電平不一致,因此單片機和PC機之間的串口通訊必須要有一個RS232/TTL電平轉換電路。通常這個電路都選擇專用的RS232接口電平轉換集成電路進行設計,如MAX232、HIN232等。
  • 單片機復位電路原理是腫麼樣的呢???
    導讀:復位電路,顧名思義,是一種使電路恢復到起始狀態的的設備。那麼問題來了,單片機為什麼需要復位電路呢?單片機復位電路原理是什麼呢?單片機復位電路有哪些種呢?
  • 單片機紅外電路設計原理
    當單片機的GPIO輸出高電平時PNP三極體處於截止狀態紅外發射管不工作;當GPIO輸出低電平時PNP三極體導通發射管工作,發出肉眼不可見的紅外線,被接收管接收到。遙控器上的每一個按鍵都有一定的編碼,該編碼其實就是遵循一定規則的高低電平的脈衝,接收電路解析該脈衝從而執行對應的操作。前文說過,紅外發射和紅外接收是一對,成對使用。發射管是白色的,接收管是黑色的。
  • 單片機3種時鐘電路方案對比
    作為單片機研發設計的項目,它的最小電路工作系統包含電源電路、復位電路、時鐘頻率電路;其中電源電路與復位電路,相信工程師都非常容易理解與設計。然而時鐘頻率電路,由於不同的開發項目功能需求不一樣,設計的方案選擇也不盡相同,很難得到有效的統一設計。
  • 單片機小白學步(22) IO口:蜂鳴器的使用/三極體的工作原理
    前面我們說了,單片機IO口能通過的電流是有限的,過大的電流可能會燒壞管腳,或者不能正常工作。蜂鳴器和LED相比最主要的區別,就是蜂鳴器比LED需要的電流大很多,電壓一般也會高一些。為了讓單片機驅動蜂鳴器,也就是控制蜂鳴器工作,我們需要使用一些特別的電路。不知道大家是否了解繼電器,繼電器的特點就是用小電流低電壓,控制大電流高電壓電路。
  • 數顯溫度計設計電路圖大全(DS18B20/89S51單片機/液晶)
    數顯溫度計設計電路圖(一):液晶顯示的數字式電腦溫度計電路 如圖為液晶顯示的數字式電腦溫度計電路。該八段式四位LCD顯示器,內置驅動器,串行數據傳送,使用方便。 本電路主要由DSl8820溫度傳感器晶片、SMCl602A液晶顯示模塊晶片和89C2051單片機晶片組成。其中,DSI8B20溫度傳感器晶片採用「一線制」與單片機相連,它獨立地完成溫度測量以及將溫度測量結果送到單片機的工作。
  • 單片機控制的密碼鎖設計(含電路圖及源程序)
    單片機控制的密碼鎖設計。AT89S52單片機P1引腳外接獨立式按鍵S1-S8,分別代表數字鍵0-5、確定鍵、取消鍵。單片機從P3.0-P3.3輸出4個信號,分別為1個電磁開鎖驅動信號和密碼錯誤指示、報警輸出、已開鎖指示信號,分別用發光二極體L1-L4指示。P3.4接一有源蜂鳴器,用於實現提示音。基本要求:(1)初始密碼為123450,輸完後按確定鍵開鎖,取消鍵清除所有輸入,每次按鍵有短「滴」聲按鍵提示音。(2)密碼輸入正確後,輸出一個電磁鎖開鎖信號與已開鎖信號,並發出兩聲短「滴」聲提示。
  • 朋友遇到一個電路,單片機復位就關機的問題,我這樣修改了電路
    朋友在設計電路時,遇到這樣一個問題。電路在工作時,單片機復位後,電路就斷電關機,需要重新長按鍵才能開機。但是這不是他想要的,他設計的目的是,長按按鍵開關機,單片機復位時,電路不能斷電關機。開關機電路如下所示。 分析上圖的電路工作原理。
  • 成本低、易於編程控制的DLP投影STM32單片機驅動電路研究設計
    1 信號輸入控制 傳統的數字微鏡顯示技術的信號輸入端是由DVI接口提供圖像信號和行場同步信號,由MSP430單片機對DLPC100進行基本的控制,且是通過I2C總線進行控制信號的傳輸,整個過程涉及的晶片較多,線路較複雜,本文設計中我們採用基於Cortex_M3內核的STM32系列單片機對信號輸入部分進行改進,將Stm32發送的圖像信號和行場同步信號傳送給DLPC100,來控制DLP1700
  • 參考:日曆及時鐘顯示接口電路 & 單片機紅外通訊原理電路圖
    1) 日曆及時鐘顯示接口電路 在電子血壓計中的應用   如圖所示,由EEPROM24C256和日曆時鐘晶片
  • 基於51單片機的電子廣告牌電路設計
    在此主要介紹以AT89S51為控制晶片,用8×8的點陣屏4塊來級聯實現16×16的點陣屏,從而用於廣告牌顯示等。1 系統設計方案 鑑於所設計的點陣屏為16×16單色顯示,可以用8×8的點陣屏4塊來級聯實現,此時點陣屏的行列各為16管腳,需要擴展口,採用74LS164串行輸入並行輸出來實現。
  • 51單片機、STM32單片機、PIC單片機性能對比
    主要是由於其針對實際應用需求,把許多模擬電路、數字電路和微處理器集成在一個晶片上,以提供「單片」解決方案。強大的處理能力,採用了精簡指令集(RISC)結構,具有豐富的尋址方式( 7 種源操作數尋址、 4 種目的操作數尋址)、簡潔的 27 條內核指令以及大量的模擬指令;大量的寄存器以及片內數據存儲器都可參加多種運算;還有高效的查表處理指令;有較高的處理速度,在 8MHz 晶體驅動下指令周期為 125 ns 。這些特點保證了可編制出高效率的源程序 2.
  • 單片機高電平和低電平復位電路
    對初學51單片機的人來說,可能不太能理解復位電路,復位電路有高電平復位和低電平復位兩種,C51是高電平復位,現在一般的MCU都是低電平復位。 左圖是高電平復位,右圖是低電平復位。
  • 基於MSP430F1611單片機實現多功能電路保護裝置的設計
    根據香農採樣定理,取R8=4 kΩ,C1=1μF,可以達到濾波的功能。另外,濾波器的地與單片機的地是一致的。 由於MSP430F1611的容許電壓是3.3 V,而電網電流可能產生瞬時脈動而造成單片機的燒毀,因而要有一限壓電路。如圖4所示。
  • 單片機簡介
    單片機簡介數字電路簡介在一個控制系統中, 單片機是電路的一部分, 單片機中的程序是針對其所在的電路編寫的。因此,要對單片機編程並實現一定的功能,必須了解整個系統的電路圖。單片機編程是針對某個特定的電路進行的單片機編程是針對某個特定的電路進行的, 這一點和普通的編程不一樣。 編程時很可能要經常參照電路圖。與單片機直接相關的電路大都是數字電路。 數字電路各部分的功能十分明確, 因此相對比較容易掌握。簡單地說,數字電路就是只有「0」和「1」兩種信號的電路。