菜鳥零基礎(chǔ)學(xué)電子之從屌絲向高富帥的第一步
在學(xué)習(xí)MSP430單片機中我們怎么應(yīng)用吸星大法呢?
本文引用地址:http://cafeforensic.com/article/192480.htm打開你的IE瀏覽器,進入淘寶主頁,搜索MSP430單片機開發(fā)板,出來的寶貝令郎滿目,而且絕大部分都是帶有視頻教程和數(shù)據(jù)手冊的。這些視頻教程就是可以讓你少走很多彎路,首先你要學(xué)會怎么安裝IAR軟件,然后怎么設(shè)置軟件,創(chuàng)建一個新的工程。這是最基本的技能,一步一步的跟著他學(xué),你會發(fā)現(xiàn)用msp430和51單片機是差不多一樣,有它的共性,也有它的不同。
學(xué)習(xí)單片機,就要盡可能的減少花費在尋址資料和閱讀大量數(shù)據(jù)手冊上的時間,應(yīng)該把時間花在對程序的分析,和對寄存器設(shè)置的記憶上。在你買你的開發(fā)板時,你的賣家已經(jīng)幫你把資料整理,把教程和例子都給你,那么就等你把它一一吸入你的大腦轉(zhuǎn)變成為你的知識。
吸星大法——學(xué)會利用開發(fā)板及視頻教程,盡可能的減少彎路,將更多時間用于實際的操作和開發(fā)中。
第二招:移花接木
移花接木,是一門與吸星大法相似的武功,但是移花接木的不同之處是利用自己以前用過的武功,轉(zhuǎn)接到新的武功中去,瞬間爆發(fā)出巨大的威力。
就51單片機和MSP430單片機來說,兩種單片機的編程上有它的相同的地方,也有它不同的地方,我們可以利用51單片機的程序只需要修改幾個字母,那么它的程序就能當(dāng)做MSP430的程序,這種方法叫程序移植。C語言有很強的移植性,無論是什么單片機,只要是用C語言編程的,大多都可以相互移植,但是移植程序需要將程序模塊化,否則移植會變得更加困難。
51 程序模塊化移植msp430舉例說明
分別用51單片機和MSP430控制兩個燈,一個紅燈一個綠燈,兩個燈交替亮滅,時間間隔0.5秒。 要求:程序要用模塊化設(shè)計,并且可輕易移植
51單片機硬件電路:
紅燈陽極接上拉電阻,陰極接單片機P1.0引腳。
綠燈陽極接上拉電阻,陰極接單片機P1.1引腳
Msp430單片機硬件電路:
紅燈陽極接上拉電阻,陰極接單片機P2.0引腳。
綠燈陽極接上拉電阻,陰極接單片機P2.1引腳。
紅色字體就是51單片機與MSP430單片機在編程上的不同點。 51單片機需要用IO口時需要位聲明,例如 sbit P10 = P1^0; 而MSP430單片機不需要位定義,但是要設(shè)置設(shè)置IO的方向,例如 P2DIR |= BIT0; 把P20 IO引腳配置成輸出模式。
MSP430默認打開看門狗,所有在程序開始時要關(guān)掉。
藍色字體為延遲函數(shù),每一種單片機的延遲函數(shù)都是不相同的,這取決于單片機單個機器周期所用的時間,所有在移植程序的時候不能移植延遲函數(shù)。但是為了其他程序移植方便,需要將兩種不同單片機的延遲函數(shù)的函數(shù)名取相同。
51單片機的延遲函數(shù)一般采用程序延遲,這種延遲方法不精確。
在本文中,MSP430的延遲方式采用MSP430函數(shù)庫中的延遲函數(shù),__delay_cycles((long)(CPU_F*(double)x/1000.0))來做精確延遲,只需要用戶設(shè)置好晶振頻率即可。
黑色加粗字體,就是我們應(yīng)用函數(shù),這個應(yīng)用函數(shù)就是一個可移植的模塊,這個模塊的程序無論移植到哪里都不需要修改直接就可以用。這就是程序模塊化移植思想。這個程序不僅僅能應(yīng)用與MSP430,還能應(yīng)用其他的單片機,比如STM32。
模塊化的程序有以下特點:
1. 在應(yīng)用函數(shù)內(nèi)不能出現(xiàn) P10 = 1; 或者 P1OUT &=BIT0; 這些IO口配置的代碼 ,必須使用其他名詞來代替,比如#define Red_ON P10 = 0,我們就把P10口打開狀態(tài)用Red_ON來取代。
2. 模塊化的程序一般用英文來描述,比如說 Red_ON 意思紅燈開,意思表述很明確,所有模塊化程序的優(yōu)點之一是方便閱讀和理解。
3.一般的IO配置,常用#define 來定義。并存放在頭文件內(nèi)或者程序的開頭。
51單片機相關(guān)文章:51單片機教程
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
評論