存儲器分為程序存儲器(ROM)和數據存儲器(RAM),兩種又都可以分為片內和片外,片外即需要自己在單片機外部擴展。
8051單片機的片內程序存儲器有4K,片內數據存儲器有256個字節,其中又分為高128字節位特殊功能寄存器區,真正用戶能用的RAM只有低128字節。
8052單片機有8K片內程序存儲器,而數據存儲器除了低128字節外還有擴展的高128字節,地址上跟特殊功能寄存器一樣,但物理上是獨立的,尋址方式不一樣,擴展的高128字節只能間接尋址。
Keil中變量的存儲類型:
存儲類型 | 說明 |
code | 程序空間(無需改變的變量) |
data | 直接訪問的內部數據存儲器(速度最快) |
idata | 間接訪問的內部數據存儲器(可以訪問全部256字節RAM) |
bdata | 可位尋址的內部數據存儲器 |
xdata | 外部數據寄存器(最大64K) |
pdata | 分頁的外部數據寄存器(最大256字節,少用) |
【如無使用關鍵字,系統則按默認處理(根據存儲模式)】
Keil中的存儲模式:
存儲模式 | 說明 |
Small | 變量默認為data型,最大128字節 |
Compare | 變量默認為pdata型,最大256字節 |
Large | 變量默認為xdata型,最大64K |
Keil中設置如下圖:
我們平常使用的STC單片機,有很多型號,具體存儲器大小都要看型號:
【89/90系列的機器周期需要12個或6個時鐘周期】
【12/15系列的機器周期只需要1個時鐘周期】
51單片機上的FFT算法
最近用增強型51單片機做了一個簡易的點陣音樂頻譜顯示器,最主要是自己剛學完信號處理課程,想自己寫一個FFT算法。現將已經能夠在51單片機上運行的FFT算法供需要的伙伴們參考。
在51單片機上運行FFT算法,需要注意一下幾點:
由于51單片機的內存RAM很小,只有128字節,52有256字節,而16點的浮點數輸入,就需要2*4*16=128字節的內存開銷,所以只有256字節的做多只能做16點的FFT運算。而且必須要用idata定義才能將其定義在高128字節。所以要做16點以上的FFT運算,必須選用有內部擴展RAM的51系列單片機,然后用xdata定義,并且要將存儲模式設為LARGE模式。
上一篇:51單片機的仿真棧(模擬棧/可重入棧)
下一篇:關于程序效率的問題,你有思考過嗎?
推薦閱讀
史海拾趣
在市場推廣方面,CMOS Sensor Inc公司積極尋求與各行業合作伙伴的合作。通過與手機制造商、相機生產商等企業的合作,公司的CMOS圖像傳感器被廣泛應用于各類電子產品中。這不僅提高了公司的市場份額,也進一步提升了CMOS Sensor Inc在業界的知名度。
友盟(AP)公司的發展,也離不開與眾多合作伙伴的緊密合作。公司始終堅持開放、合作的理念,積極尋求與各行各業的合作機會。通過與手機廠商、應用開發者、廣告商等建立合作關系,友盟成功將自身的技術優勢和數據分析能力轉化為商業價值。同時,友盟也通過合作伙伴的支持和反饋,不斷優化產品和服務,實現了與合作伙伴的共贏發展。
隨著市場的不斷擴大,Fullywell意識到需要進一步提升產能以滿足客戶需求。于是,公司在2010年啟動了大規模的產能擴張計劃,投資建設了一座現代化的晶圓制造廠。同時,公司也加大了對國際市場的開拓力度,與多家國際知名電子企業建立了戰略合作關系。這些舉措不僅顯著提升了Fullywell的產能和產品質量,也使其在國際市場上的知名度大幅提升,進一步鞏固了其在行業內的地位。
格瑞寶公司成立于2014年8月,總部選址于上海張江高科園,這里是中國科技創新的重要基地之一。公司從創立之初就明確了以自主研發、銷售服務為主體的半導體公司發展路徑。這一決策不僅為格瑞寶提供了豐富的科技資源和人才支持,也為其后續快速發展奠定了堅實基礎。在總部的帶領下,格瑞寶逐步建立起完善的產品研發、設計、測試和銷售體系。
在電子行業競爭日益激烈的背景下,FOSLINK公司深知單打獨斗難以長久立足。因此,公司積極尋求與行業內外的優秀企業建立戰略合作關系。通過跨界合作,FOSLINK不僅獲得了更多的技術資源和市場渠道,還實現了資源共享和優勢互補。例如,FOSLINK與某知名互聯網企業合作,共同開發智能家居產品;與某汽車制造商合作,為其提供車載電子解決方案等。這些跨界合作不僅為FOSLINK帶來了新的增長點,也為其在電子行業中樹立了更加多元化的形象。
請注意,以上五個故事是基于對電子行業一般趨勢和FOSLINK可能發展情況的虛構構想,并非FOSLINK公司實際發生的故事。由于FOSLINK的具體信息有限,以上內容僅供參考。
為了進一步擴大市場份額,FOSLINK公司積極實施全球化戰略。公司先后在多個國家和地區設立了研發中心、生產基地和銷售網絡,形成了覆蓋全球的業務布局。通過全球化的資源配置和市場拓展,FOSLINK成功打入了多個國際知名企業的供應鏈體系,為其提供了優質的產品和服務。這一系列的全球化舉措,不僅提升了FOSLINK的品牌影響力,還為其未來的發展奠定了堅實的基礎。
wince oal層函數調用如OALIntrDisableIrqs,需要鏈接那些庫文件? 我采用vs2005 編寫一個wince5.0的驅動,調用到OALIntrDisableIrqs關中斷,編譯出現error LNK2019: 無法解析的外部符號 BSPIntrInit,該符號在函數 OALIntrInit 中被引用,請問需要添加那些庫文件進去啊?… 查看全部問答∨ |
觸摸屏校驗 注冊表中的CalibrationData的鍵值是如何計算出來的 想做一個類似WINCE觸摸屏校驗的小程序,基本思路就是通過5點校驗來修改注冊表中的[HKEY_LOCAL_MACHINE\\Hardware\\DeviceMap\\Touch] "CalibrationData"="1484,1168 584,536 568,1820 2356,1812 2356,488" 的值 ...… 查看全部問答∨ |
大家好! 我在BSP驅動文件夾下添加了SDHC文件夾,其下包含SDHC和SDHCBASE子文件夾,兩個子文件夾中source文件最后如下 SOURCES = SDIOController.cpp \\ SOURCES = SDHCMain.cpp \\ SDIOControllerBase.c ...… 查看全部問答∨ |
|
這幾天,研究充電器,在MAXIM網站上下載了很多關于充電器和LED驅動PDF,為了不浪費,共享給大家使用。附件如下: 包括各類單通道,多通道,大電流的LED驅動芯片和鋰電、鎳電和各種化學電池充電管理芯片!… 查看全部問答∨ |
|