在項目開發(fā)設(shè)計時,單片機(jī)的IO引腳數(shù)量不夠,該如何處理?
單片機(jī),作為一般電子類產(chǎn)品項目的關(guān)鍵元器件, 常被工程師應(yīng)用處理數(shù)據(jù)的邏輯運算,甚至包含一些軟件的算法。比如工程師在開發(fā)如下項目:
家用電飯煲項目,單片機(jī)就可以作為數(shù)據(jù)運算的核心器件,負(fù)責(zé)處理加熱、定時、顯示、按鍵等功能的實現(xiàn);
電動剃須刀項目,單片機(jī)可以作為電機(jī)控制的核心器件,負(fù)責(zé)處理電機(jī)的正轉(zhuǎn)、電池的電量管理等功能的實現(xiàn);
辦公碎紙機(jī)項目,單片機(jī)可以作為邏輯分析的核心器件,負(fù)責(zé)處理電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、堵轉(zhuǎn)、人體保護(hù)等功能的實現(xiàn)。
單片機(jī)項目
工程師在針對這類的項目開發(fā),會依據(jù)設(shè)計的功能需求確定單片機(jī)所需的內(nèi)部資源,也就是確定單片機(jī)的型號。常用單片機(jī)的內(nèi)部資源包含引腳數(shù)量、主頻時鐘、存儲空間以及通信接口等等,工程師根據(jù)這些信息選擇項目匹配的單片機(jī)型號。
確定單片機(jī)型號之后,工程師便可以進(jìn)行項目的具體研發(fā)工作,硬件工程師展開電路原理圖設(shè)計,軟件工程師展開程序的代碼設(shè)計;在項目研發(fā)階段,工程師或許會遇到類型情況:
項目的研發(fā)工作在接近完畢時,臨時需要額外增加某項功能;或者項目版本在更新迭代的過程中,臨時需要額外調(diào)整某項功能。
面對這類情況,這些臨時增加和調(diào)整的功能,可能會導(dǎo)致之前選擇的單片機(jī)的IO引腳數(shù)量不夠問題出現(xiàn);針對單片機(jī)的IO引腳數(shù)量不夠時,工程師該如何去較好地解決呢?
工程師可能會重新選擇單片機(jī)的型號,直接通過簡單地增加IO引腳數(shù)量來解決;此方案雖然可以解決,但不推薦,主要存在2個問題:
重新選擇新的單片機(jī)型號,與之相關(guān)聯(lián)的軟件代碼相當(dāng)于也需要重新開發(fā)設(shè)計,增加了項目的開發(fā)工作量,工作效率不佳;
重新選擇新的單片機(jī)型號,與之相關(guān)聯(lián)的硬件電路相當(dāng)于也需要重新開發(fā)設(shè)計,需要重新調(diào)試驗證,尤其是一些可靠性試驗的測試;
既然重新選擇新的單片機(jī)型號存在這些問題,那有沒有其他方案可以更好地解決呢?
在項目開發(fā)過程中,單片機(jī)的IO引腳數(shù)量不夠時,除了重新選擇新的單片機(jī)型號解決方案之外,還存在使用IO引腳擴(kuò)展芯片的方案,比如AL5524芯片就是一個單片機(jī)的IO引腳擴(kuò)展芯片,就能解決此類問題;
那么AL5524 IO引腳擴(kuò)展芯片,它具有什么樣的特性?它是如何解決了單片機(jī)的IO引腳數(shù)量的?它又是如何擴(kuò)展單片機(jī)的IO引腳數(shù)量的?
AL5524芯片引腳定義
Pin1引腳:INTB是實現(xiàn)中斷功能;
Pin2 & Pin3 & Pin21引腳:ADD實現(xiàn)的功能是通過硬件方式定義了IIC通信的地址信息;
Pin4 ~ Pin11引腳:RA是芯片擴(kuò)展的IO引腳;
Pin13 ~ Pin20引腳:RB是芯片擴(kuò)展的IO引腳;
Pin22 & Pin23引腳:IIC通信接口功能引腳;
Pin12 & Pin24引腳:芯片的電源輸入引腳;
(AL5224引腳定義圖)
通過引腳功能定義,工程師基本可以分析出芯片的工作原理,也就是通過IIC接口擴(kuò)展了單片機(jī)的IO引腳數(shù)量,這從芯片的內(nèi)部結(jié)構(gòu)框圖更容易看出。
AL5224芯片內(nèi)部框圖
在AL5224芯片的內(nèi)部框圖中,主要包含四個部分:地址生成器,IIC控制器,寄存器與控制器,普通IO引腳Port A與Port B;
(AL5224功能框圖)
(1)地址生成器:主要是通過ADD0、ADD1以及ADD2外部的硬件電路定義IIC的通信地址,常用的簡便設(shè)計是將ADD0、ADD1與ADD2直接接地;
(2)IIC控制器:主要是AL5224芯片與單片機(jī)之間通信的橋梁,用以數(shù)據(jù)交換,實現(xiàn)IO引腳擴(kuò)展功能;
(3)寄存器與控制器:主要是將IIC通信的數(shù)據(jù)暫存于此,便于轉(zhuǎn)換成Port A和Port B引腳輸出;
(4)普通IO引腳Port A與Port B:此兩個引腳就是芯片需要擴(kuò)展的IO引腳,等同于單片機(jī)的IO引腳功能;
分析完這些內(nèi)容之后,工程師或許更清晰地認(rèn)識了AL5224芯片的功能;但這些內(nèi)容還僅僅停留在理論層面,那么具體在項目開發(fā)中,如何去應(yīng)用呢?如何去設(shè)計呢?如何開發(fā)電路呢?
AL5224芯片應(yīng)用電路
在了解完AL5224芯片基本的電路特性之后,工程師迫切地想著手去解決項目中實際存在的問題,否則就失去了工作意義。
(AL5224芯片應(yīng)用電路)
AL5224芯片的工作電源電壓范圍為2.0V~5.5V,既可以兼容5V的邏輯電平,也可以兼容3.3V的邏輯電平。
AL5224芯片的應(yīng)用電路,工程師很容易設(shè)計開發(fā),只需將SCL與SDA引腳連接單片機(jī)的IIC引腳即可,這樣單片機(jī)就輕易地實現(xiàn)了解決擴(kuò)展IO引腳數(shù)量的問題了;單片機(jī)通過2個IO引腳SCL與SDA,擴(kuò)展了16個IO引腳數(shù)量,也就實現(xiàn)了擴(kuò)展IO引腳數(shù)量的功能。
文末結(jié)尾:
在介紹完AL5224芯片的電路特性之后,工程師或許在對比中發(fā)現(xiàn),相對重新選擇新的單片機(jī)型號而言,選擇AL5224 IO引腳擴(kuò)展芯片方案更具有普遍性,可操作性更強(qiáng);正所謂事務(wù)都具有雙重性,有正面必然有反面,AL5224芯片的電路方案也存在一些不足之處。
增加項目的BOM核算成本,主要是增加了AL5224的芯片成本;
AL5224 IO引腳擴(kuò)展芯片,擴(kuò)展了14個IO引腳數(shù)量;顯然在實際項目開發(fā)中很少會遇到需要擴(kuò)展14個IO引腳的數(shù)量,即便AL5224系列芯片也支持?jǐn)U展8個IO引腳數(shù)量,但會造成一些多余的IO引腳資源浪費現(xiàn)象。
-
單片機(jī)
+關(guān)注
關(guān)注
6042文章
44617瀏覽量
637511 -
控制器
+關(guān)注
關(guān)注
112文章
16443瀏覽量
179026 -
寄存器
+關(guān)注
關(guān)注
31文章
5363瀏覽量
120932 -
IO引腳
+關(guān)注
關(guān)注
0文章
10瀏覽量
9435
原文標(biāo)題:終于明白!如何擴(kuò)展單片機(jī)的IO引腳數(shù)量?
文章出處:【微信號:fcsde-sh,微信公眾號:fcsde-sh】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論