久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

51單片機開發原則

作者:劉小嬗   來源:本站原創   點擊數:  更新時間:2013年11月27日   【字體:

1.盡可能讓變量使用占用代碼空間最小的變量類型。例如無符號字符型和位操作(8051作為一款8位處理器提供了位操作支持,而且大多數操作指令都是8位或者位操作的通常用小的數據類型去編寫代碼其效率更高)

2.盡可能使用無符號類型數據(8051單片機不直接支持有符號的數據類型,有符號的操作需要額外的指令來支持,但是無符號的數據類型是直接就能被8051支持的)

3.盡可能選擇小的存儲模式即small(絕大多數的應用采用small存儲模式都能滿足,也可以選擇large存儲模式,將一些數組和結構體存入xdata或者pdata存儲空間的話選擇極大存儲模式,注意的是keil c51實時庫使用的基本指針可以工作在任何存儲模式)

4.當應用其他存儲模式的時候盡可能將變量存儲在data區域內(將變量存儲在data空間里,這部分空間單片機可以直接訪問,據有最高的執行效率,通常這個區域存儲的是最有效率的代碼)本地圖片,請重新上傳

5.要知道如何在你的設備上使用PDATA存儲模式(pdata提供的256字節的空間,使用MOVX @Ri指令訪問8位地址,pdata存儲空間的使用不同于8051單片機內部的設備,需要設置頁寄存器。Xdata 存儲類型是通用的能達到的最大的存儲空間64kb)

6.盡可能使用內存類型的指針(默認的,keil c51編譯器使用通用指針可以訪問任何類型的內存空間,內存型的指針只能訪問固定的存儲空間,但是這種方式能夠產生更快更小的程序代碼)

7.減少使用重入函數(8051系列缺乏對堆棧變量的支持,重入函數的實現通過keil c51 編譯器使用一個編譯時間的堆棧對內存范圍內的數據內容的覆蓋實現的,重入函數在8051單片機上模擬出堆棧的結構。由于在嵌入式應用很少會用到重入函數代碼,但是你在設計的過程中應盡可能的少用這種重入屬性)

8.使用LX51 Linker/Locate 和Linker code packing來減少程序的體積。(LX51 Linker/Locate分析并且優化你的整個程序。代碼將會在內存中重新排列,最大限度的使用2字節的AJMP和ACALL指令來代替3字節的LJMP和LCALL指令。Linker code packing利用通用代碼段生成子程序)

9.盡量保持短的中斷函數(結構好的的中斷函數僅僅是執行數據的獲取或者是計時,數據的處理是在主函數或者實時系統的任務函數中完成,這樣可以有效的降低涉及保存/存儲的中斷函數的調用)

10.檢查對于時鐘周期的需求(代碼訪問數據需要一定的周期,尤其是在實時系統中使用多個線程或者中斷服務程序中需要在主函數中)

關閉窗口

相關文章

主站蜘蛛池模板: 中文字幕成人av | 亚洲国产精品美女 | 亚洲成人www | 成人在线播放 | 中文字幕在线免费 | 久久88 | 中文字幕综合 | 成人免费观看男女羞羞视频 | 中文在线视频 | www.色.com | 国产精品美女久久久久aⅴ国产馆 | 婷婷久久网 | 色视频在线播放 | 国产精品欧美大片 | 国产二区av | 国产成人免费视频网站高清观看视频 | 国产一区二区三区免费 | 欧美激情在线观看一区二区三区 | 成人精品视频在线 | 中文字幕一区二区三 | 在线中文字幕国产 | 超碰人人艹 | 看一级毛片视频 | 国产精品久久久久久久午夜片 | 成人av观看 | 91一区二区三区在线观看 | 欧美操操操 | 极品销魂美女一区二区 | 免费一级片 | 国产欧美一区二区三区另类精品 | 超黄视频网站 | 亚洲福利在线观看 | 免费h在线 | 91精品久久 | 黄色大片在线播放 | 亚洲色片网站 | 青青草原综合久久大伊人精品 | www.国产精品 | 热99精品视频 | 狠狠艹 | 9久久精品 |