久久久久久久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公交车 | av午夜电影 | 男女免费观看在线爽爽爽视频 | 中文字幕免费中文 | 日韩国产一区二区三区 | 成人二区三区 | 国产精品一码二码三码在线 | 国产一级片免费看 | 成年视频在线观看福利资源 | 国产一区久久久 | 韩日在线视频 | 欧洲成人 | 成av人电影在线 | 国产精品成人一区 | 国产欧美一区二区三区免费 | 日本三级全黄三级三级三级口周 | 国产露脸国语对白在线 | 91精品国产色综合久久不卡98口 | 国产精品国产亚洲精品看不卡15 | 欧美日韩电影一区二区 | 欧美在线一区视频 | 国产成人精品免高潮在线观看 | 国产精品久久国产精品99 gif | 久久亚洲视频网 | 成人欧美一区二区三区黑人孕妇 | 欧美日韩国产不卡 | 亚洲欧美国产毛片在线 | 久久av在线播放 | 一级在线观看 | 久久久精彩视频 | 国产第一亚洲 | 欧美日韩在线一区二区 | 国产一区中文字幕 | 免费看黄视频网站 | 综合激情av | 性一交一乱一透一a级 | 国产精品国产成人国产三级 | 中文字幕一级 | 国产精品久久久久久久久久免费看 |