亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 9526|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

STC16F40K128單片機(jī)LQFP48核心板PCB文件 使用keil C251的注意事項(xiàng)總結(jié)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
本帖最后由 人人學(xué)會(huì)單片機(jī) 于 2021-2-2 17:55 編輯




下載:
PCB文件 STC8H8K64S4U+STC16F40K128 LQFP48.zip (13.22 MB, 下載次數(shù): 68)
STC16F40K128的數(shù)據(jù)手冊(cè)超過(guò)20MB,只能放百度盤(pán)下載:https://pan.baidu.com/s/1bp4HLl9
一、編譯器相關(guān):
        1、必須安裝keil C251編譯器,并且,需要把STC16F的型號(hào)添加到軟件安裝目錄,并且需要使用STC16F系列的頭文件

        2、項(xiàng)目工程O(píng)ptions for Target 的配置
                A、CPU Model 選擇:Source (251 native)
                B、Memory Model 選擇:需要根據(jù)程序復(fù)雜程度做選擇。一般選擇Small:data vars far const ptr-4
                C、Code Rom Size 選擇:Large,64K program。Code Rom Size 模式如果是:Huge,64K functions,16M progr,那么會(huì)導(dǎo)致P0口的矩陣鍵盤(pán)工作不正常。
        
        3、keil軟件的BUG—0xfD的問(wèn)題,導(dǎo)致了C251的文件名不能出現(xiàn)以下漢字:
        褒餅昌除待諜洱俘庚過(guò)糊積箭燼君魁例籠慢謬凝琵訖驅(qū)三升數(shù)她聽(tīng)妄錫淆旋妖引育札正鑄佚冽邶
        埤犖蔟摭啐幘獫愷泯潺嫗紈琮槧輦挲臊忑睚銓稞瘕頎螨籪酏觚鳊鼾        

二、芯片接口相關(guān):
        1、除P30 、P31,其余IO口默認(rèn)都是高祖模式,需要配置IO口模式才能正常使用。

        2、LQFP48的第16腳不同:STC15W是P5.5,STC16F是電壓參考腳ADC_VRef+。

        3、和STC8H8K一樣,STC16F LQFP48 也沒(méi)有P1.2,用P4.2來(lái)控制NRF24L01_CSN


三、C251的語(yǔ)法與STC16F的寄存器:
        1、xdata 的變量,必須是寫(xiě)成 static u8 xdata count;  而不能寫(xiě)成 static xdata u8 count;

        2、C251的函數(shù)中定義的 指向code的指針變量,需要填寫(xiě)數(shù)據(jù)的存儲(chǔ)位置code。例如:(u8 Reg,u8 code *pBuf,u8 len),表示查找code 數(shù)組。

        3、16位全局變量保存到xdata區(qū)間后,如果不能正常讀寫(xiě),調(diào)整Memory Model選擇:Large,xdata vars far const ptr-4。也有可能選擇Small:data vars far const ptr-4

        4、帶參函數(shù)賦值時(shí),不支持+-*/ 符號(hào),例如 OLED_Write_Reg(0xb0+PAGE);   改成OLED_Write_Reg(0xb0|PAGE); 即可。加號(hào)改成 按位或

        5、STC16F需要在主函數(shù)第一句寫(xiě)  WTST=0;  讓CPU執(zhí)行單指令,讓CPU速度正常

        6、STC16F需要把AUXR的 EXTRAM位寫(xiě)1,才能讀寫(xiě)xdata存儲(chǔ)空間。


四、其他
        1、WS2812、DS18B20、LCD1602等 需要短暫延遲的代碼 需要增加延遲_nop_();的數(shù)量

        2、ADC的寄存器不一樣 需要仔細(xì)修改,STC15W是內(nèi)置參考電壓。STC16F是ADC_VRef+做參考電壓。沒(méi)有P1.2,ADC腳是P5.4。如果是實(shí)時(shí)測(cè)量ADC,關(guān)閉電源會(huì)嚴(yán)重影響采集結(jié)果。

        3、IIC 函數(shù)  每次時(shí)鐘上升沿之前 加一句 IIC_Delay();延遲。

        4、STC16F單片機(jī)的PWM的寄存器,和STC8H8K的PWM寄存器兼容。但是和STC15W的PWM寄存器完全不同。需要全部重新改寫(xiě)。


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1017706 發(fā)表于 2022-5-16 23:38 | 只看該作者
編譯器都不一樣了
回復(fù)

使用道具 舉報(bào)

板凳
ID:290373 發(fā)表于 2022-5-18 20:18 | 只看該作者
感謝分享!這下可以少走很多彎路了。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表