電阻與電容
想像一條寬闊的大河,突然被逼著擠過一根細細的花園水管。水照樣流,但水管攔著它——一次只能過那麼多。電阻就是電的那根細水管。它阻擋著電流的流動,這種「阻擋」就叫電阻(resistance)。把水管捏得更細,過去的水就更少;把一個電阻的阻值調高,通過的電流就更少。這一件事——溫和地限制有多少電流能流過——就是電阻存在的全部理由。
電阻還有第二個本領,而它正是從第一個本領裡自然長出來的。把兩個電阻首尾相接、排成一排,再從中間引出一根線:你在那裡量到的電壓(voltage),是整個電壓乾乾淨淨的一個分數——按這兩個電阻的阻值比例分配。這就是分壓器,它無處不在。音箱上的音量旋鈕,或者一個需要把較小、較安全的電壓遞給嬌貴晶片的感測器——它們都不過是兩個電阻在悄悄分擔。
現在來認識電阻活潑的表親——電容。如果說電阻是一根細水管,那麼電容(capacitor)就是一隻小小的可充電水桶:你往裡灌電流時它吸進電荷,把電荷存著,等電路需要時再還回去。由此自然引出兩個結果。第一,電容能把東西「撫平」——當供電電壓一瞬間往下掉時,水桶會把它重新補滿,所以一個跨接在電源線上的電容就像一個減震器,濾掉突如其來的顛簸和漣波。
二極體——一個單向閥門
想想腳踏車打氣筒裡那個小小的單向皮閥,或者車站裡那種只許單向通過的旋轉閘門:從一邊推,你順順當當就過去了;從另一邊推,你被結結實實地擋住。二極體正是這樣,只不過是給電用的。電流可以朝一個方向悠悠地穿過它,朝另一個方向卻被牢牢攔住。這一個倔強的習性——只讓電流朝一個方向通過——就是二極體(diode)所做的全部,而它出奇地有用。
這種單向行為是從哪來的?來自一塊半導體(semiconductor)內部的一道邊界——半導體是一種材料,通常是矽,它的導電本領恰好卡在導體和絕緣體之間。透過給一塊矽晶體的兩半摻入不同的雜質,工程師在它們之間養出一道接面,也就是 PN 接面。在那道接縫上,電荷朝一個方向輕鬆越過,朝另一個方向卻撞上一堵牆。沒有活動部件,沒有皮閥——只是一塊晶體邊界悄無聲息的物理,幹著閥門的活兒。
兩件日常的活兒最能展現二極體的本事。第一是整流:牆上插座送來的電是來回晃盪的,每秒鐘要改變好多次方向。把幾個二極體排成單向閘門,你就只放朝前的那幾下擺動通過,把這種晃盪剁成一股穩穩的單向流——這正是把牆上的電變成手機充電器所需的那種溫柔供電的第一步。第二件活兒你簡直能親眼看見:LED,也就是發光二極體,是一種當電流朝正確方向通過時就會發光的二極體。每一盞狀態指示燈、每一個螢幕像素,都是一個二極體一邊耍著它的單向把戲、一邊發著光。
電晶體——開關與放大器
如果這整篇指南你只記住一個元件,那就讓它是這個。電晶體是一道小小的閘門,在那裡一個微弱的訊號控制著一股大得多的電流——就像手指搭在水龍頭上,把一丁點兒力氣變成嘩嘩的大水,又像電燈開關,你手腕輕輕一撥,指揮的功率遠遠超過你手腕本身能出的力。在電晶體的控制端加上一個微弱的訊號,它就掌管著流過另外兩個端子、大上許多倍的電流。這就是電晶體(transistor)的全部魔法。
這一個本領會分成兩種超能力,取決於你怎麼用它。當作開關用時,你把控制端使勁推向一邊或另一邊——要麼全開,要麼全關——於是電晶體就成了一道沒有活動部件、卻能每秒翻轉上百萬次的「開/關」閘門。當作放大器用時,你讓控制端停在中間某處,輸入訊號輕輕一抖,輸出就忠實地、卻放大許多倍地跟著抖。麥克風裡那微弱的低語,被放大到足以驅動一隻揚聲器,靠的正是一路穿過電晶體。
接下來這個尺度該讓你眨眨眼。一顆現代處理器,把幾十億個電晶體塞進一塊指甲蓋大小的晶片裡,每一個都比一根頭髮絲細得多。它們是人類歷史上被製造得最多的東西——人類每年造出的電晶體,比地球上每一片海灘的沙粒加起來還多。而它們每一個,都在做著第一個電晶體做過的那件謙卑的事:讓一個小訊號去支使一個大訊號。
運算放大器
單個電晶體能放大,但要哄著它放大得既乾淨又可預測,可得費些心思。於是工程師把幾十個電晶體打包進一個可靠的、現成的模組裡:運算放大器,簡稱運放(op-amp)。把它想成一個可以直接從貨架上買來的「盒裝放大器」——它放大的勁頭大得驚人。餵給它兩個輸入之間最微弱的一點點差異,它就想把這點差異放大十萬倍甚至更多。光是這樣,這麼大的增益幾乎大到沒法用——就像一隻音量開得太高的麥克風,最輕微的聲響都能讓它尖叫。
馴服它的訣竅是回授:你把輸出的一小片繞回到輸入,於是運放就不停地核對自己的成果、把自己拉住。這跟恆溫器是同一種自我修正的迴路——加熱器盯著那個由它自己改變著的室溫,等到剛剛好就停下來。在它周圍擺上幾個電阻來設定這股回授,你就能命令運放那股脫韁的增益乖乖地穩定到一個由你挑選的、精確的量。狂野的放大器,於是變成一個聽話的、可以「撥到剛好」的放大器。
一旦被馴服,運放就成了一個萬能得驚人的小苦力。把電阻這樣擺,它就把幾個電壓加起來;那樣擺,它就比較兩個電壓、告訴你哪個更大;再換一種擺法,它就乾淨俐落地把一個微弱訊號放大到能用的大小。這正是為什麼運放是感測器和電腦之間無名的英雄。溫度計、心率貼片或麥克風送出的那種顫巍巍、幾乎看不見的電壓,對一塊晶片來說太微弱、根本讀不出來——於是運放把它哄大、撫平,塑造成一個乾淨的訊號,讓數位世界終於能讀懂它。
- 一個感測器產生一個微小而脆弱的電壓——常常只有千分之幾伏——光靠它自己太弱、用不上。
- 一個運放,周圍擺好用於回授的電阻,把這個電壓按一個精確的、挑好的倍數放大。
- 迴路裡的一個電容把抖動和雜訊抹平,留下一個乾淨、平穩的訊號。
- 這個被「調理」好的訊號現在足夠強、足夠乾淨,能讓一塊晶片讀取了——感測器和電腦終於說上了同一種語言。