<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è) > 嵌入式系統 > 設計應用 > 51單片機編程技巧

51單片機編程技巧

作者: 時(shí)間:2012-01-20 來(lái)源:網(wǎng)絡(luò ) 收藏

1.定義的變量不要太多。低128位為用戶(hù)定義變量的存放區域(默認時(shí)),也可以把變量放在高128位,但容易出錯,盡量少放,最好不放。通過(guò)*.M51可以查看內存變量的存放,最好不要超過(guò)110個(gè)字節,否則程序無(wú)法運行或出錯。

2.如一個(gè)變量多處使用可定義為全局變量。例如循環(huán)變量i、j,盡量減少參數傳遞。

3.靜態(tài)變量最好放在程序存儲區,用code定義。

4.變量應定義為無(wú)符號數,像標志位等僅占一位的變量應定義為bit。

5.子程序在main()主程序之后的應事先聲明,放在前面的不用聲明。

6.變量、子程序定義但沒(méi)使用,系統給出警告。

7.雖然局部變量和全局變量不同名,但運行時(shí)可能被全局變量改變。

8.程序在編譯后,有可能產(chǎn)生非常大的文件。比如原來(lái)5k,編譯后變成10k,這是C匯編時(shí)程序空間分配太隨意造成的??墒紫绕帘我徊糠殖绦蚓幾g,然后再去屏蔽再編譯,可恢復,或一部分一部分復制到另一個(gè)文件中編譯。

9.如產(chǎn)生脈沖信號用到定時(shí)器,要去掉脈沖信號時(shí),應先關(guān)定時(shí)器,再按要求把電平置為高電平或低電平。

10.可使用軟件實(shí)現“看門(mén)狗”功能。比如:一個(gè)程序運行一個(gè)循環(huán)需要50ms,則定時(shí)器可定位100ms,當超過(guò)100ms時(shí),程序將復位,在程序循環(huán)最下面都重裝定時(shí)器或重置定時(shí)器參數。

11.為了提高所求值的精度,可多次測量,然后排序,去掉最大值和最小值,求平均值,或直接求平均值。

12.可使用一個(gè)定時(shí)器進(jìn)行多個(gè)定時(shí)。一般來(lái)說(shuō),兩個(gè)定時(shí)器對大一點(diǎn)的程序就不夠用了,假如幾個(gè)定時(shí)時(shí)間分別為10ms、200us、50ms,則定時(shí)值可定位200us,另設兩個(gè)變量即可。在需要多個(gè)定時(shí)時(shí),找到他們的最小公約數定時(shí)即可。

13.我們往單片機中寫(xiě)程序時(shí),寫(xiě)的是*.hex,不要被它的大小所迷惑,對于8k的單片機,小于20k的程序都可寫(xiě)進(jìn)去



關(guān)鍵詞: 51單片機 編程技巧

評論


相關(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>