<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > MSP430系統應用結構設計與選型

MSP430系統應用結構設計與選型

——
作者: 時(shí)間:2007-10-12 來(lái)源:?jiǎn)纹瑱C與嵌入式系統應用 收藏

  1 MSP430簡(jiǎn)介

  MSP430是TI公司推出的16位系列產(chǎn)品,在電池供電的低功耗應用中具有獨特的優(yōu)勢。其工作電壓為1.8~3.6 V,正常工作時(shí)功耗可控制在200μA左右,低功耗模式可實(shí)現2μA甚至O.1μA的低功耗。MSP430系列作為性能優(yōu)異的MCU在中國已經(jīng)得到了廣泛的應用。MSP430具有高集成度,通常在單個(gè)芯片上集成了12位的A/D轉換器、比較器、多個(gè)定時(shí)器,以及片內USART、看門(mén)狗、片內DCO等。一般單片就可滿(mǎn)足大多數的應用需要。

  MSP430的程序存儲器是Flash存儲器,并且支持JTAG在線(xiàn)編程,可以方便地實(shí)現程序的下載、仿真、調試和升級。

  目前整合性最好的MSP430F44X系列,具有60 KB程序存儲(可記錄數據),2 KB片內RAM,6個(gè)I/O端口(P1和P2具有中斷能力),160段液晶驅動(dòng),2個(gè)串行端口,4個(gè)定時(shí)器(其中TB帶有7個(gè)捕獲/比較器,包括看門(mén)狗),模擬比較器,硬件乘法器,8路12位A/D轉換器,頻率調整電路FLL+以及系統復位SVS模塊等。而基本型的 MSP430F1101 和MSP430C1101只有1 KB程序存儲、128字節片內RAM、模擬比較器和2個(gè)定時(shí)器等。

  MSP430F44X與MSP430F11X在硬件結構上、在系統整合上存在較大差異;MSP430F41X與MSP430F11X的差異不是很大。但這3系列芯片的價(jià)格由幾元到數十元不等,那么如何選擇系統芯片呢?以3種芯片為例,其系統功能框圖分別如圖1、圖2、圖3所示。

  

  

  

  2 常用的MSP430應用系統的設計方案

  在圖4所示系統中,有模擬輸入、脈沖采集、日歷時(shí)鐘、液晶顯示、鍵盤(pán)操作和外圍設備控制等??刹捎靡韵聨追N方案進(jìn)行MSP430的選型。

  

  (1)選用MSP430F44X系列

  這個(gè)方案設計最簡(jiǎn)單,因為目前MSP430F44X系列芯片是集成度最高的。該系列任何一款芯片都能勝任(一般程序字節不會(huì )大于32 KB)。

  (2)選用MSP430F41X系列

  如果程序在8 KB范圍以?xún)?,那么這是一種較好的方案。MSP430F41X系列雖然不能直接進(jìn)行A/D轉換,但整個(gè)系統價(jià)格適中。

  (3)選用MSP430F11XX系列

  該系列芯片不能直接驅動(dòng)液晶,且程序量較小,也沒(méi)有直接的A/D轉換能力。與前兩種方案相比,這是明顯的不足,但其價(jià)格是最低的。

  在這3種方案中,如果對生產(chǎn)成本要求不高,則第1種方案最好;如果要考慮批量的生產(chǎn)成本,則第3種方案最好,性?xún)r(jià)比最高。如果使用MSP430F1121A,則批量報價(jià)不到9元,適合于大批量生產(chǎn)、成本敏感的產(chǎn)品,可得到最高的性?xún)r(jià)比。但第3種方案存在很多問(wèn)題,有待解決。

  3 高性?xún)r(jià)比的MSP430應用系統解決方法

  圖4是較為經(jīng)典的MSP430應用系統框圖。如果使用最經(jīng)濟的MSP430系列器件MSP430F11XX系列,則要解決5個(gè)問(wèn)題:模/數轉換問(wèn)題、液晶顯示問(wèn)題、程序量小的問(wèn)題、日歷時(shí)鐘的程序化問(wèn)題及串行通信問(wèn)題。

  3.1模/數轉換問(wèn)題解決方案

  MSP430F11XX系列單片機片內有模擬比較器Comparator_A和功能強大的定時(shí)器Time_A,可以構成斜率(Slope)A/D轉換,實(shí)現從模擬到數字的轉換。具體原理如圖5所示(這里以電阻模擬量到數字量的轉換為例)。

  

  在圖5中,Rref、Rmeas分別為標準的參考電阻和被測量的電阻,電容ca0起充放電作用。比較器的輸出CAOUT用于驅動(dòng)定時(shí)器捕獲的發(fā)生。MSP430內部的模擬比較器能產(chǎn)生用于比較的模擬電壓(關(guān)閉內部參考電壓,使用外部參考電壓O.25Vcc、O.5Vcc和二極管管壓降)。比較器負端選擇O.25Vcc。

  首先,標準電阻Rref對電容CAO充電到VCC,再通過(guò)參考電阻Rref放電,同時(shí)記錄定時(shí)器值T1;當電容放電到O.5Vcc時(shí),比較器產(chǎn)生輸出,CAOUT觸發(fā)定時(shí)器產(chǎn)生捕獲動(dòng)作,將定時(shí)器值T2讀出。其次,使用被測量電阻Rmeas對電容充電到Vcc,再通過(guò)Rmeas放電,同時(shí)讀取定時(shí)器值T3;當電容放電到0.5Vcc時(shí),比較器輸出信號再次捕獲定時(shí)器數據T4,則在電容放電的線(xiàn)性區域可以得到被測量電阻的阻值:

  

  對其他電壓等物理量的測量也可采用此辦法。

  3.2 液晶顯示問(wèn)題解決方案

  MSP430F11XX沒(méi)有液晶驅動(dòng)能力,必須外部擴展。如圖6所示,可以使用I/O輸出直接驅動(dòng)價(jià)格低廉的液晶驅動(dòng)芯片來(lái)顯示信息。如果這樣,為什么還要選用自帶液晶驅動(dòng)的價(jià)格昂貴的MSP430F43X或MSP430F44X呢?

  

  例如,用MSP430的Px.x兩個(gè)I/O口與驅動(dòng)芯片的CLK、DATA進(jìn)行通信,即可實(shí)現所需的顯示信息??梢怨澥”揪筒欢嗟腎/O端口以作他用。

  3.3 程序量小問(wèn)題解決方案

  MSP430F11XX系列單片機最大的程序容量只有4 KB,對較為復雜的應用來(lái)說(shuō)程序空間比較小。對于MSP430系列單片機有個(gè)巧妙的解決辦法:由于MSP430單片機的存儲器具有線(xiàn)性統一編址的特點(diǎn),因此單片機運行的程序可以在除了片內外圍模塊空間以外的任何存儲空間,這里RAM用作程序存儲器。又由于RAM內容可變,故可將程序存放在外部存儲器中,在需要時(shí)調到RAM中,再執行RAM中的程序。外部存儲器可選用串行24C系列為E2PROM,既可減小系統體積,又可使程序空間增加32 KB乃至更多,且系統總成本增加很少。24C系列E2PROM與MSP430單片機的接口,只需要2根I/O口線(xiàn)和2個(gè)上拉電阻。

  首先,需要將存放在E2PROM中的應用程序劃分為較小的模塊。這里針對MSP430F1121A將每個(gè)模塊的大小限定在128字節內。MSP430F1121A的片內RAM有256字節,一半用于存儲程序處理中的數據,另一半用于暫存程序調度的程序。

  其次,MSP430F1121A的片內存儲器用于存放對24C系列存儲器的讀寫(xiě)操作程序,以及最常用的處理程序和各種中斷服務(wù)程序等。將各個(gè)小模塊的應用程序存放在E2PROM中,同時(shí),每個(gè)小模塊的應用程序在E2PROM中的起始位置和模塊長(cháng)度在MSP430的程序存儲器中用數據表格的形式存放。每當要調用在E2PROM中的小模塊時(shí),就在表格中查找。使用E2PROM讀程序,在E2PROM中讀出全部的小模塊程序數據到MSP430的RAM中的后128字節。

  最后,將程序計數器(PC指針)壓棧,再改變PC內容為280H(RAM的后128字節開(kāi)始位置),程序將由此開(kāi)始運行。該模塊運行完畢后,最后一句是RET,將剛壓棧的PC指針恢復。程序繼續運行MSP430 Flash中的主程序。

  3.4 日歷時(shí)鐘程序化問(wèn)題解決方案

  由于MSP430系列單片機的超低功耗特性,使用其內部定時(shí)器模塊的比較模式實(shí)現日歷時(shí)鐘,時(shí)鐘源使用鐘表32 768 Hz晶振產(chǎn)生的ACLK信號。將定時(shí)器模塊設置為1 s中斷一次,在中斷服務(wù)程序中編寫(xiě)日歷時(shí)鐘程序。只要在編寫(xiě)的過(guò)程中注意公歷的各種推算,甚至可以使用某種算法將農歷也編寫(xiě)進(jìn)去。在中斷程序結束后立即進(jìn)入低功耗LMP3模式,這時(shí)系統耗電小于1μA,比多數的專(zhuān)用日歷時(shí)鐘芯片的耗電還要小。選材時(shí),只要選用精度高的晶振,做出的時(shí)鐘將是很準確的,而且使用單片機將日歷時(shí)鐘程序化從各方面講(可靠性、功耗、成本、體積等)都是很好的解決方案。

  3.5串行通信問(wèn)題解決方案

  MSP430F11XX系列單片機片內沒(méi)有串行通信模塊,不能直接用于異步串行通信,但由于定時(shí)器Time_A的捕獲與比較以及特殊的結構,利用其實(shí)現異步串行通信的位定時(shí)(波特率產(chǎn)生)以及起始位檢測等功能,可方便實(shí)現串行通信。

  串行發(fā)送相對簡(jiǎn)單一點(diǎn):設置Time_A為比較模式,比較的數據體現每一位的發(fā)送時(shí)間,使用中斷,每當時(shí)間到則發(fā)送下一位,全部發(fā)送則發(fā)送完畢。

  串行接收相對復雜一點(diǎn):設置Time_A為捕獲模式,要捕獲到串行通信的起始位;捕獲到起始位后,將Time_A設置為比較模式,同時(shí)第一位與后面其他位的定時(shí)時(shí)間不一樣,第一位的定時(shí)時(shí)間是其他位的1.5倍。所有數據接收完畢即結束。在硬件上使用RS232或RS485都可以。

  另外,也可以使用外圍模塊進(jìn)行通信。例如使用半雙工或全雙工的RS485芯片進(jìn)行485的信息傳遞。

  4 結 論

  實(shí)踐證明,在充分掌握MSP430系列各個(gè)片內模塊的性能與特性基礎上,選用最簡(jiǎn)單、最便宜、最常規的器件,設計高性?xún)r(jià)比的應用系統是非??尚械?同時(shí)隨著(zhù)產(chǎn)量的增加,經(jīng)濟效益也會(huì )顯著(zhù)增加。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>