天天看點

拆解探索MagSafe電源接口結構和訓示燈變顔色原理

你有沒有想過一個Mac的MagSafe接頭裡面有什麼? 控制光線是什麼? 在Mac如何知道它是什麼樣的充電器? 本文探讨的MagSafe連接配接器内,并回答這些問題。

  2006年由蘋果公司推出的MagSafe接頭十分友善,他靠磁力吸在Mac身上,插拔友善而且有人踢到電源線時會自動斷開,而且不分反正。 連接配接器上的一個小LED燈改變顔色訓示充電狀态。

  下面的圖檔顯示了新的MagSafe 2連接配接器,很苗條,陣腳這樣的排列方法使它可以不用區分反正。 充電器和計算機通過擴充卡檢測引腳連通(也稱為充電控制引腳),本文将在下面詳細解釋。 兩個接地引腳比别的引腳稍長,是以當你插上連接配接器他們會首先接觸,這點跟USB相同。

<ignore_js_op>

MagSafe接頭拆解

  我有一個MagSafe電源電纜發生故障導緻燃燒的電源引腳,你可以看到下面的照片,我拆開看看裡面究竟是什麼。 下面的連接配接器是一個較舊的MagSafe,跟上邊的Magsafe2相比還是有很大差別的。 還要注意,中間擴充卡引腳遠遠小于其他引腳,不像MagSafe2。

  卸下塑膠外殼裡邊有一塊軟塑膠,也許是聚乙烯,有助于彌​​漫LED發出的光,并保護底下的電路。

  切割掉保護電路闆的透明塑膠塗層,該充電器電線焊接此闆的背面上。 隻有兩根線,電源線和地線連接配接到充電器。擴充卡針腳與充電器本身有沒有資料通信。

  拆卸連接配接器可以看到彈簧加載的“ 波戈銷 “,可以形成實體連接配接到Mac。 塑膠部件支撐着針腳,下圖左側的金屬塊并沒有磁力,但可以被Mac的連接配接器的強力磁鐵所吸引。

  你可以在下圖中看到MagSafe連接配接器的内部電路闆非常小,在中間有兩個LED,桔黃色/紅色和綠色,左邊是一個微小的晶片DS2413 1-Wire雙通道可尋址開關 。 該晶片有兩個功能:控制開關上的狀态LED(即“雙通道開關”部分),另外它也記錄提供充電器的規格和序列号的ID值。

  該晶片采用1-Wire協定 ,這是一個聰明的系統,可以通過一條線連接配接低速裝置(加上接地)。 1-Wire系統很友善,在這裡,Mac可以通過一個擴充卡檢測引腳與MagSafe通信。

了解充電器的ID代碼

  您可以在Mac上輕松找到充電器資訊(打開“關于本機”,“更多資訊”,“系統報告”,“電源”),裡邊的瓦數和序列号很好了解,但ID、Revision和Family是哪來的? 事實證明,這些都是用于晶片内部連接配接器1-Wire協定的一部分。

  1-Wire家族中的每一個晶片都有一個唯一的64位ID(如圖可以看到為16進制,每4位可以表示一個數字)。 在1-Wire 标準中,64位ID由8位家族碼識别1-Wire器件的類型,一個48位的唯一序列号,以及一個8位非加密的CRC校驗用以驗證ID是否正确。 這些公司(比如蘋果)可以自定義ID号:頂端12位的序列号被用作一個客戶ID,接下來的12位資料由客戶指定的,而其餘的24位為序列号。

  有了這些資訊,現在Mac的AC充電器資訊來源可依了,下面的圖顯示了如何用64位ID映射充電器的資訊。 ID字段100表明蘋果的客戶ID,在12位客戶的資料(十六進制3C是十進制的60,表明60瓦)的功率和修訂,家庭代碼BA是1-Wire家族代碼為DS2413的晶片。 是以,AC充電器資訊實際上是1-Wire晶片的底層資訊。

  有些充電器資訊可能是下圖的樣子,因為一些原因後來的充電器使用家族碼為85,這并不代表這是一個85瓦的充電器。以MacSafe2為例,在客戶ID中使用7A1表示45瓦,921表示60瓦,AA1表示85瓦。令人奇怪的是,這個85瓦充電器仍然包含60瓦的資訊(16進制的3C)。

如何讀ID号

  讀取MagSafe接頭ID号碼很容易,使用Arduino闆和一個2K上拉電阻,以及Paul Stoffregen的Arduino 1-Wire庫和簡單的Arduino程式。

  連接配接MagSafe連接配接器地線外和資料線内擴充卡感引腳可以讓Arduino立即讀取并顯示的64位ID号,該充電器不需要接電。

  用來在液晶屏上顯示序列号的電路看起來比較複雜,其實隻需要利用一個簡單的程式,就可以将64ID号碼顯示出來。

控制MagSafe狀态訓示燈

  Mac控制的MagSafe連接配接器燈光通過擴充卡引腳發送指令到DS2413 1-Wire開關IC控制兩對LED的開啟或關閉狀态。 通過擴充卡針腳發送相應的指令到IC,一個Arduino可以随意控制LED。  

充電器的啟動過程

  每次把 MagSafe 電源插到蘋果電腦側面的接口上時,會經過以下步驟:

  插到電腦上之前,MagSafe 隻維持大約 100 µA 的極弱電流

  插頭吸到蘋果電腦上一瞬間,MagSafe 電源檢測到上面說的那股極弱電流遇到了阻性負載,電阻值也吻合,于是開始全功率供電。蘋果電腦檢測到電源口有供電後,就通過接口中間那個觸點讀取 MagSafe 晶片裡儲存的身份資訊,确認後就接受供電。

  蘋果電腦通過接口中間那個觸點發送信号給 MagSafe 電源裡的晶片,控制插頭上那顆 LED 燈改變顔色以顯示供電狀态:電池充電中(橙色)還是電池已充滿隻給主機供電(綠色)。 

繼續閱讀