嵌入式分享合集75
一、快速找到PCB中的GND
??在維修電路板時,有時候需要測量板子上某一點的電位,來判斷到底是哪里出了問題,而參考點的選取一般都是選擇電源的負極,也就是GND地線。如下圖是幾種GND的符號。
???如何快速尋找出板子中的地線,就成了必須要掌握的知識了。下面我總結了幾種方法供大家參考一下。
1 通過電解電容來查找GND
????上圖中是一個電磁爐主板,我們要找地線,首先要找到板子最大的那個電解電容。
????一般情況下比較大的電解電容都是作為電源濾波的一種元件,它的負極就是GND了。
上圖中你看到的最大的電解電容就是一個電源濾波電容,它是從整流橋整流輸出約300伏的脈動直流電,再經過此電容濾波才能輸出比較平滑的直流電。它的負極就是直流電源的負極,也就是我們要找的GND地線。
2 通過查看大片銅箔來確認GND
????上圖中是一個兩層板,圖中標有紅圈的那幾個點就是地線,可以看出它和大片的銅箔相連。這是由于地線有屏蔽作用,可以有效減小地線環路帶來的干擾,所以線路板中的地線銅箔一般都是成片出現的。
3 通過查看連接插件上的標識來確認GND
?
????如上圖,一般在板子的接插件處都有各種信號的標識,我們可以通過查看這個標識來確認地線,比如上圖紅線圈內的GND就是地線了。
4 通過集成芯片來查找
????在線路板中通常有著各種各樣的集成電路,這些集成電路如果要正常工作都需要有供電電源,可以通過查看芯片的引腳來確認GND。
????如上圖,這是一個8腳的LM358比較器,通過查找它的資料可以看出它每個腳的功能 ,只要知道第四腳為GND就可以在板子上找到地線了。
最后在說說GND的本質
電路中的地線GND,它的本質是什么?
在PCB Layout布線過程中,工程師都會面臨不同的GND處理。
? ? 這是為什么呢?在電路原理設計階段,為了降低電路之間的互相干擾,工程師一般會引入不同的GND地線,作為不同功能電路的0V參考點,形成不同的電流回路。
GND地線的分類
1 模擬地線AGND
? ? 模擬地線AGND,主要是用在模擬電路部分,如模擬傳感器的ADC采集電路,運算放大比例電路等等。
? ? 在這些模擬電路中,由于信號是模擬信號,是微弱信號,很容易受到其他電路的大電流影響。如果不加以區分,大電流會在模擬電路中產生大的壓降,會使得模擬信號失真,嚴重可能會造成模擬電路功能失效。
2 數字地線DGND
? ? 數字地線DGND,顯然是相對模擬地線AGND而言,主要是用于數字電路部分,比如按鍵檢測電路,USB通信電路,單片機電路等等。
? ? 之所以設立數字地線DGND,是因為數字電路具有一個共同的特點,都屬于離散型的開光量信號,只有數字“0”和數字“1”區分,如下圖所示。
在由數字“0”電壓跳變成數字“1”電壓的過程中,或者由數字“1”電壓跳變成數字“0”電壓的過程中,電壓產生了一個變化,根據麥克斯韋電磁理論,變化的電流周圍會產生磁場,也就形成了對其他電路的EMC輻射。
? ? 沒辦法,為了降低電路的EMC輻射影響,必須使用一個單獨的數字地線DGND,讓其他電路得到有效的隔離。
3 功率地線PGND
? ? 模擬地線AGND也好,數字地線DGND也罷,它們都是小功率電路。在大功率電路中,如電機驅動電路,電磁閥驅動電路等等,也是存在一個單獨的參考地線,這個參考地線叫做功率地線PGND。
? ? 大功率電路,顧名思義,是電流比較大的電路。很顯然大的電流,容易造成不同功能電路之間的地偏移現象,如下圖所示。
?
? 一旦電路中存在地偏移,那么原來的5V電壓就可能不是5V了,而是變成了4V。因為5V電壓是參考GND地線0V而言,如果地偏移使得GND地線由0V抬升到了1V,那么之前的5V(5V-0V=5V)電壓就變成了現在的4V(5V-1V=4V)了。
4 電源地線GND
? ? 模擬地線AGND,和數字地線DGND以及功率地線PGND,都被歸類為直流地線GND。這些不同種類的地線,最后都要匯集在一起,作為整個電路的0V參考地線,這個地線叫做電源地線GND。
? ? 電源,是所有電路的能量來源。所有電路工作需要的電壓電流,均是來自電源。因此電源的地線GND,是所有電路的0V電壓參考點。
? ? 這就是為什么其他類型的地線,無論是模擬地線AGND,數字地線DGND還是功率地線PGND,最后都需要與電源地線GND匯集在一起。
5 交流地線CGND
? ? 交流地線CGND,一般是存在于含有交流電源的電路項目中,如AC-DC交流轉直流電源電路。
? ? AC-DC電源電路,分為兩個部分。電路中的前級是AC交流部分,電路中的后級是DC直流部分,這就被迫形成了兩個地線,一個是交流地線,另一個是直流地線。
? ? 交流地線作為交流電路部分的0V參考點,直流地線作為直流電路部分的0V參考點。通常為了在電路中統一一個地線GND,工程師會將交流地線通過一個耦合電容或者電感與直流地線連接在一起。
6 大地地線EGND
? ? 人體的安全電壓是在36V以下,超過36V的電壓如果施加在人體身上,會導致人體受到損傷,這是工程師在開發設計電路項目方案的一個安全常識。
? ? 為了增強電路的安全系數,工程師一般在高壓大電流的項目中使用大地的地線EGND,例如在家用電器電風扇、電冰箱、電視機等電路中。具有大地地線EGND保護功能的插座,如下圖所示。
家用電器的插座,為什么是3個接線端子?220V交流電只需要火線和零線,兩根就可以,那為什么插座是3個接線端子呢?
? ? 插座的3個接線端子,其中的兩個端子是用于220V的火線和零線,另外一個端子就是起保護作用的大地地線EGND。
? ? 芯片哥需要重點指出的是大地地線EGND,它僅僅是連接到我們的地球,起到高壓保護作用,沒有參與項目電路功能,與電路功能無關。
? ? 所以大地地線EGND,與其他類型的地線GND是存在明顯電路含義區別的。
細究GND的原理
? ? 工程師可能會問,一個地線GND怎么會有這么多區分,簡單的電路問題怎么弄得這么復雜?
? ? 為什么需要引入這么多細分的GND地線功能呢?
? ? 工程師一般針對這類GND地線設計問題,都簡單的統一命名為GND,在原理圖設計過程中沒有加以區分,導致在PCB布線的時候很難有效識別不同電路功能的GND地線,直接簡單地將所有GND地線連接在一起。
? ? 雖然這樣操作簡便,但這將導致一系列問題:
1 信號串擾
? ? 假如將不同功能的地線GND直接連接在一起,大功率電路通過地線GND,會影響小功率電路的0V參考點GND,這樣就產生了不同電路信號之間的串擾。相關推薦:認識地彈(地噪聲)。
2 信號精度
? ? 模擬電路,它的考核核心指標就是信號的精度。失去精度,模擬電路也就失去了原本的功能意義。
? ? 交流電源的地線CGND由于是正弦波,是周期性的上下波動變化,它的電壓也是上下波動,不是像直流地線GND一樣始終維持在一個0V上不變。
? ? 將不同電路的地線GND連接在一起,周期性變化的交流地線CGND會帶動模擬電路的地線AGND變化,這樣就影響了模擬信號的電壓精度值了。
3 EMC實驗
? ? 信號越弱,對外的電磁輻射EMC也就越弱;信號越強,對外的電磁輻射EMC也就越強。
? ? 假如將不同電路的地線GND連接在一起,信號強電路的地線GND,直接干擾了信號弱電路的地線GND。其后果是原本信號弱的電磁輻射EMC,也成為了對外電磁輻射強的信號源,增加了電路處理EMC實驗的難度。 ? ??whaosoft aiot?http://143ai.com
4 電路可靠性
? ? 電路系統之間,信號連接的部分越少,電路獨立運行的能力越強;信號連接的部分越多,電路獨立運行的能力就越弱。
? ? 試想,如果兩個電路系統A和電路系統B,沒有任何的交集,電路系統A的功能好壞顯然是不能影響電路系統B的正常工作,同樣電路系統B的功能好壞也是不能影響電路系統A的正常工作。
? ? 這就好比一對陌生男女,在沒有成為戀人之前,女生的情緒變化是不會影響這個男生的心情的,因為他們沒有任何交集。
? ? 假如在電路系統中,將不同功能的電路地線連接在一起,就相當于增加了電路之間干擾的一個聯系紐帶,也即降低了電路運行的可靠性。
?
二、說說PLC程序
哈哈PLC的內容終于來了第二彈
一套完整的PLC程序,并不僅僅是使系統能夠運行起來這么簡單,它也需要完整的注釋、精良的架構、良好的可擴展性、完備的報警保護系統、運行前的模擬系統。
1、簡單性
使PLC程序盡可能簡單。簡單的含義就是盡可能地使用標準化的程序框架,盡可能使用簡單的指令。
要想程序簡單,從大的方面講,要優化程序結構,用流程控制指令簡化程序,從小的方面講還要用功能強的指令取代功能單一的指令,以及注意指令的安排順序等。
2、可讀性
要求所設計的程序可讀性要好。這不僅便于程序設計者加深對程序的理解,便于調試,而且,還要便于別人讀懂你的程序,便于使用者維護。必要時,也可使程序推廣。
要使程序可讀性好,所設計的程序就要盡可能清晰。要注意層次,實現模塊化,以致于用面向對象的方法進行設計。要多用一些標準的設計。
如遇特殊情況下采用語言編程,多數情況下請使用梯形圖編程,方便閱讀。
再就是I/O分配要有規律性,便于記憶與理解。必要時,還要做一些注釋工作。內部器件的使用也要講規律性,不要隨便地拿來就用。
可讀性在程序設計開始時就要注意。這不易完全做到。因為在程序調試的過程中,指令的增減,內部器件的使用變化,可能使原較清晰的程序,變得有些亂。所以在設計時就對調試增減留有一定的余地,然后調試完畢后再做一下整理,這樣所設計的程序具有更高的質量。
程序的注釋,起碼應該有以下幾個方面:
A、系統注釋:整套程序的版權公司和此套程序用途;
B、程序塊注釋:此程序塊的主要用途和作者;
C、段注釋:此段代碼的用途;
D、變量注釋:重要性無需多言,包含I/O注釋、中間變量注釋。
而至于保密性的考慮,我覺得應該在程序的加密算法或者塊的加密上考慮,而不應該用減少注釋這種小聰明來實現。
3、正確性
PLC的程序一定要正確,并要經過實際工作驗證,證明其能夠正確工作。這是對PLC程序的最根本的要求,若這一點做不到,其它的再好也沒有用。
要使程序正確,一定要準確地使用指令,正確地使用內部器件。準確de地使用指令與準確理解指令相聯系,為此對指令含義和使用條件一定要弄清楚。必要時,可編些小程序對一些不清楚的指令作些測試。
同一指令,由于PLC的出廠批次不同或是PLC的系列型號的不同,一些指令細節有可能不一樣,應仔細查閱編程手冊。
內部器件正確使用也是重要的。如有的PLC有掉電保護,有的PLC沒有。一定要做到該掉電保護的一定要用掉電保護的器件,反之則不能用。
總之,要準確地使用指令,正確使用內部器件,使所編的程序能正確動作,這是對PLC程序最根本的要求。
舉個簡單的例子,西門子的上升沿和下降沿需要使用帶存儲功能的變量作為中間變量,比如M點或者DB點,如果使用FC的temp變量就會出問題的。
4、可靠性
程序不僅要正確,還要可靠。可靠反映著PLC程序的穩定性,這也是對PLC程序的基本要求。
有的PLC程序,在正常的工作條件下或合法操作時能正確工作,而出現非正常工作條件(如臨時停電,又很快再通電)或進行非法操作(如一些按鈕不按順序按,或同時按若干按鈕)后,程序就不能正常工作了。這種程序,就不大可靠,或說不穩定,就是不好的程序。
好的PLC程序對非正常工作條件出現,能予以識別,并能使其與正常條件銜接,可使程序適應于多種情況。好的PLC程序對非法操作能予以拒絕,且不留下“痕跡”。只接受合法操作。
聯鎖是拒絕非法操作常用的手段,繼電電路常用這個方法,PLC也可繼承這個方法。
5、易改性
要使程序易改,也就是要便于修改。PLC的特點之一就是方便,可靈活地適用于各種情況。其辦法就是靠修改或重新設計程序。
重新設計程序用于改變PLC工藝的用途要求的情況,不僅程序重編,而且I/O也要重新分配。多數情況下不需要重編程序,做一些修改就可以了。這就要求程序具有易性,便于修改。
易改也就是彈性,要求只要做很少的改動,即可達到改變參數或修改動作的目的。
6、擴展性
許多程序可能在進現場之前都已經編好,但是到了現場,可能還需要添加另外的程序,為了避免打亂整套系統的結構,需要在每個功能區預留一定的空間作為備用。
硬件上留出足夠的余量,軟件在編寫的時候把手動,自動,半自動考慮好,位置留出來。
7、完備報警系統
PLC系統往往用于工業環境中,每一次的事故都會造成或大或小的損失,為了做到事故預處理或者在事故中將損失降到最小,必須重視PLC的報警和保護,在此將其摘出來作為系統的一個重要組成部分。
8、程序模擬
為了保證現場的調試進度或者給客戶展示,往往在進現場之前,要對自己的程序進行全自動的模擬。為此需要在程序中加入模擬程序部分,模擬程序部分在正常現場運行之后斷開。為了使程序具備模擬功能,需要做以下工作:
(1)將實際的PLC的I/O點轉換為PLC的中間變量或者數據塊變量;
(2)根據工藝要求編寫各個設備的模擬程序;
在設計PLC程序的過程中,能夠滿足以上幾個方面的要求的就能稱得上是一個好程序了。
PLC程序的設計規范
1、選擇合適的PLC型號及I/O點數,有特殊功能需求時選擇特殊功能模塊。
2、熟悉所選擇的PLC編程指令及編譯軟件。
3、進行軟元件規劃,包括內部繼電器、保持繼電器、數據寄存器、定時器、計數器等。
4、進行程序規劃,一般以故障提取、故障處理、手動處理、自動處理、輸出處理這樣的順序進行編程。比較大型的工程或設備按功能單元分段、分塊進行處理,如一條自動化生產線中有提升機、移行、頂起旋轉裝置等,則應按上述單元分段分塊編程。
?
5、在分段分塊編寫的程序前應加上簡短的段注釋,說明此段程序的功能,如有必要可以注明相應的工藝流程。分塊或分段的程序在總體程序的位置順序應基本上按工藝流程順序排列,便于程序的可讀性。
6、在程序設計之前,應對設備進行抽象,對如停止、急停、過載、超限、超時、安全光幕、碰停、門開關等共用因子進行提取,放在啟動回路或啟動主控、連鎖回路,作為整個程序結構的大前提,在此基礎下,再將程序分為自動、手動兩大功能區。
7、將程序結構手動功能區共用因子,如手動、危及設備人身安全等因數因子進行提取,放在手動主控、連鎖回路,對手動控制進行保護、屏蔽、報警。
8、將程序結構自動功能區共用因子,如自動、超限、超時等因數因子進行提取,放在自動主控、連鎖回路,對自動控制下設備進行保護、屏蔽、報警。一個總的原則就是,在確保安全的前提下,嚴格限制設備的進,寬松限制設備的出。
9、程序設計時應設計程序總復位功能,便于使用者在設備出現故障情況下,可以方便盡快恢復設備正常工作。總復位應充分考慮在復位過程中設備和人員的安全。
10、自動模式切換到手動模式時,程序應清除自動模式下的輸出和中間狀態。特別是在自動模式使用SET指令時,必須在手動模式用RESET指令予以清除。
11、嚴禁在編制程序中使用雙輸出,即同一條輸出語句或同一個輸出線圈在程序中出現2次及以上。在不同模式條件下的對同一輸出點的輸出使用中間繼電器進行中轉,最后集中到一起并列到輸出點。
12、使用觸摸屏時,對觸摸屏和PLC公用的控制區和狀態區,不得做其他功能方面的編程使用。
13、對PLC的特殊模塊,在使用之前,應先查明其控制區和狀態區是否占用工作字,若占用,不得將這些工作字做其他方面的編程。
14、PLC的輸入、輸出、中間繼電器、定時器、計數器、數據寄存器等都要加中文注釋。輸入、輸出還要有元器件名稱位號。對應的輸入點,一般情況下默認為外圍開關連接的是NO觸點,對于需要接NC觸點的須在注釋中標明。所有注釋應當清晰明了,不易產生誤解,盡量少使用泛指。
15、工程調試完成后,系統必須保留最終軟件程序,保存的文件名應包含項目編號/作者/日期信息/版本號等。
16、關于程序加密:對于加密程序的密碼必須有專門的文件予以保存,并注明相應的用戶名+密碼+權限,分發給至少兩個人以上了解密碼,防止密碼丟失帶來無法打開程序的情況。
PLC程序的編程建議
1、PLC和上位機(或觸摸屏)組成監控系統時,在畫面上很多時候需要有“手動”、“自動”等控制模式(一般都是多個只能一個時)。在程序里面可以用“MOV”指令。如:當選擇“手動”就將常數1 MOV到一個寄存器VB10里面,當選擇“自動”就將2 MOV到同一寄存器VB10。只要判斷寄存器的數據是多少,就知道系統是哪種控制方式。這樣的思路好處是容易理解,不需要互鎖之類的麻煩程序。
2、程序有模擬量控制時,如果讀取的模擬量基本上沒誤差,可以采取時間濾波的方式,延時一段時間。如果讀取的數據誤差很大,就需要采取其它的濾波方式,如算平均值等。可以查閱相關的資料。
3、在程序調試過程中(特別是設備改造時,你的程序是加入到原來設備的程序中時),當程序語句中出現條件滿足,而輸出線圈不接通時,可以檢查你的這段程序是否是在這樣的語句之間,如JUMPgo to等語句。還有一種可能就是在中斷程序之后,條件滿足而沒輸出不接通,一般都是這段的程序不被掃描。
4、在順序控制程序時,即一個動作完成后,進入到下一個動作,等類似的順序控制,采用+10+10控制模式,本人覺得很方便。其思路是:預置一個寄存器,在初始化時值為0,當系統啟動后,對它+10,此時寄存器為10,寄存器等于10時可以做第一個動作;第一個動作完成后,再對寄存器+10,此時寄存器等于20,可以做第二個動作,第二個動作完成后又+10,此時寄存器等于30,這樣只要判斷寄存器里面數據為多少,就知道要完成那個動作。當需要跳躍動作時,可以不再+10,可以加+20+30....,看實際的需要而定。
為什么加10而不是加1,因為加10之后,如果插入一段,只要在這10個空余的地方隨便選擇一個位置就可以了。
5、在設計程序的時候,當出現工藝上的故障(非控制系統控制),最好將故障現象保持,并有燈光聲音報警。直到操作工復位,以便讓其知道系統出現了故障。不然停機了,別人還認為你的程序出問題了,一般在設計一個新系統時是要注意到這些。
6、對于經常調用的子程序,可以做成子模塊,頻繁調用。
7、由于生產機械在工作循環中的各工步運動在執行時需要一定的時間,且這些時間都有一定的限度,因此可以以這些時間為參考,在要檢測的工步動作開始的同時,起動一個定時器,定時器的時間設定值比正常情況下該動作要持續的時間長20%~30%,而定時器的輸出信號可以用于報警或自動停機裝置。當生產機械某工步動作的時間超過規定時間,達到對應的定時器預置時間,還未轉入下一工步動作時定時器發出故障信號,該信號停止正常工作循環程序,起動報警或停機程序,這就是我們常說的超節拍保護。
8、一些安全用檢測開關(如急停按鈕、安全光幕、極限開關等)實用常閉(NC)輸入。
9、為安全、節能考慮,盡量將輸出設計成需要動作時才動作,一旦到位就停止輸出,而不要設計成平時一直輸出,需要停止時才讓輸出斷開。
10、執行元件的動作原則應當是寧可不動,也不要亂動!
11、單臺設備控制:單臺設備必須有軟手操/自動切換以及軟手操時可以啟/停功能,由自動切換到軟手操時,設備不能停機;由軟手操切換到自動時,設備啟/停取決于自動程序。
12、單臺設備(泵、風機及其它大型設備)運行滿24小時必須進行輪換,且必須有運行時間累計,如果由上位機設定啟/停順序除外,操作人員自行設定。
PLC程序的命名通用規則
1、駝峰命令法(CamelCase)
也稱駱駝式命名法,就是當變量名或函數名由一個或多個單詞連接在一起構成唯一標識符時,作為邏輯斷點的單詞的首字母都采用大寫,例如:“myName”,這樣的變量名或函數名看上去就像駱駝峰一樣此起彼伏,故得名。駝峰命名法又分為小駝峰法和大駝峰法。
(1)小駝峰法:第一個單詞首字母小寫,其余單詞首字母大寫。變量一般使用小駝峰法命名。例如:“myName”。
(2)大駝峰法:又稱帕斯卡命名法,即所有單詞首字母大寫。函數、類,一般使用大駝峰法命名。例如:“MyName”。
2、匈牙利命名法(Hungarian)
開頭字母用變量類型的縮寫,其余部分用變量的英文或英文的縮寫,要求單詞第一個字母大寫。基本原則:變量名=屬性+類型+對象描述。例如:Int iMyAge; “i”是“int”類型的縮寫;char cMyName[10]; “c”是“char”類型的縮寫;float fManHeight; “f”是“float”類型的縮寫。
3、帕斯卡命名法(PascalCase)
即前面所述大駝峰命名法。每個單詞的第一個字母都大寫。例如:“MyName”。
4、下劃線命名法(UnderScoreCase)
變量名或函數名的每個邏輯斷點都有一個下劃線來標記。例如:“my_name”。
三、嵌入式硬件設計的注意事項
嵌入式設計是個龐大的工程,今天就說說硬件電路設計方面的幾個注意事項,首先,咱們了解下嵌入式的硬件構架。
? ? 我們知道,CPU是整個系統的靈魂,所有的外圍配置都與其相關聯,這也突出了嵌入式設計的一個特點硬件可剪裁。在做嵌入式硬件設計中,以下幾點需要關注。
1、電源的確定
? ? 電源對于嵌入式系統中的作用可以看做是空氣對人體的作用,甚至更重要:人呼吸的空氣中有氧氣、二氧化碳和氮氣等但是含量穩定,這就相當于電源系統中各種雜波,我們希望得到純凈和穩定符合要求的電源,但由于各種因素制約,只是我們的夢想。這個要關注兩個方面:
a、電壓
? ? 嵌入式系統需要各種量級的電源比如常見的5v、3.3v、1.8v等,為盡量減小電源的紋波,在嵌入式系統中使用LDO器件。如果采用DC-DC不僅個頭大,其紋波也是一個很頭疼的問題。
b、電流
? ? 嵌入式系統的正常運行不但需要穩定足夠的電源,還要有足夠的電流,因此在選擇電源器件的時候需要考慮其負載,一般留有30%的余量。
? ? 如果是多層板,電源部分在layout的時候需電源分割,這時需要注意分割路徑,盡量將一定量的電源放置在一起。如果是雙面板,則走線寬度需要注意,在板子允許的情況下盡量加寬。合適的退耦電容盡量靠近電源管腳。
2、晶振的確定
? ? 晶振相當于嵌入式系統的心臟,其穩定與否直接關系其運行狀態和通訊性能。常見的振有無源晶振,有源晶振,首先要確定其振蕩頻率,其次要確定晶振類型。
a、無源晶振
? ? 其匹配電容和匹配電阻的選擇,這部分一般依據參考手冊。在單片機設計中,經常使用插件晶振配合瓷片電容。在ARM中,為了減少空間和便于布線,經常使用四角無源晶振配合貼片電容。
? ? 雖然我們對于固定晶振的匹配電路比較熟悉,但是為了達到萬無一失,還是要看參考手冊確定電容大小,是否需要匹配電阻等細節。
b、有源晶振
? ? 具有更好的更準確的時鐘信號,但是相比之下,比無緣晶振價格高,因此這也是在硬件電路設計中需要關注的成本。在做電路板設計時需要注意晶振走線盡量靠近芯片,關鍵信號遠離時鐘走線。
? ? 在條件允許的情況下增加接地保護環。如果是多層板,也要講關鍵信號遠離晶振的走線。
3、預留測試IO口
? ? 在嵌入式調試階段,在管腳資源豐富的情況下,我通常預留一個IO口連接led或者喇叭,為下一步軟件的編寫做鋪墊。在嵌入式系統運行過程中適當控制該IO接口,從而判斷系統是否正常運行。
4、外擴存儲器
? ? 一個嵌入式系統如果有電源、晶振和CPU,那么這就是我們熟悉的最小系統。如果該嵌入式系統需要運行大點的操作系統,那么不但需要CPU具有MMU,CPU還需要外接SDRAM和NANDFLASH。
?如果該cpu具有SDRAM和NANDFLASH控制器,那么在硬件設計上不用過多的考慮地址線的使用。如果沒有相關的控制器,那么需要注意地址線的使用。
? ? 這部分在LAYOUT的時候是一個重點,究其原因就是要使相關信號線等長以確保信號的延時相等,時鐘和DQS的差分信號線走線。在布線的時候各種布線技巧需要綜合使用,例如與cpu對稱分布,菊花鏈布線、T型布線,這都需要依據內存的個數多少來進行選擇,一般來說個數越多,布線越復雜,但是知道其關鍵點,一切迎刃而解。
5、功能接口
? ? 一個嵌入式系統最重要的就是通過各種接口來控制外圍模塊,達到設計者預設的目的。常用的接口有串口(可用來連接藍牙,wifi和4G等模塊),USB接口、網絡接口、JTAG接口、音視頻接口、HDMI接口等等。
? ? 由于這些接口與外部模塊連接,做好電磁兼容設計是重要的一項工作。除此之外,在LAYOUT的時候注意差分線的使用。
6、屏幕
? ? 這個功能之所以單獨列出來,是由于其可有可無。如果一個嵌入式系統只是作為一個連接器連接外圍設備模塊,通過相關接口連接到電腦主機或者直接掛在網絡上,那么屏幕就不需要了。
? ? 但是如果做出來的是一個消費類產品,與用戶交互頻繁,這就不得不嘮叨幾句。電容屏幕是嵌入式屏幕的主要部件,在電路設計中需要注意觸屏連接線和顯示屏連接線的布局。
? ? 在走線的過程中盡量短的靠近主控cpu,同時注意配對信號走差分線,RGB控制信號走等長。各種信號走線間距遵循3W規則,避免相互干擾。在屏幕的設計中,一定要確保功率和防止干擾,以防屏幕閃屏和花屏現象的出現。
總結
- 上一篇: 【C++】十进制转化二进制,二进制转化十
- 下一篇: ubuntu 终端显示英文,桌面环境显示