0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一個(gè)1T模式和12T模式的區(qū)別?

單片機(jī)技術(shù)宅 ? 來源:?jiǎn)纹瑱C(jī)技術(shù)宅 ? 2020-05-14 11:26 ? 次閱讀

如圖,問題大概就是說初學(xué)單片機(jī),用軟件仿真出來的程序,在開發(fā)板上運(yùn)行的效果比仿真的快,晶振都是一樣的12M。還問到一個(gè)1T模式和12T模式的區(qū)別?

今天,我們就來說說這個(gè)問題,一看問出這樣的問題就知道學(xué)單片機(jī)沒幾天,還不算是入門吧,還走了軟件仿真的道路。

要說清這個(gè)問題,我們分幾步來慢慢叨叨。

傳統(tǒng)單片機(jī)和增強(qiáng)單片機(jī)

傳統(tǒng)單片機(jī),也就是之前的Atmel公司51單片機(jī),現(xiàn)在好多高校也都還在用的芯片,最有代表的芯片就是AT89S51/52單片機(jī)。這個(gè)單片機(jī)內(nèi)部資源不多,不帶ADC/DAC ,不帶PWM,供電電壓范圍4.5V-5.2V,最主要的是運(yùn)行速度的問題,12M的晶振頻率,但是執(zhí)行最快的 一條指令也需要12個(gè)晶振周期才能完成,這也就是所謂的12分頻。這樣一來12M的晶振頻率,到了指令周期就只有1MHz。這也就是在12M晶振下,傳統(tǒng)51單片機(jī)的定時(shí)器每加1所需要的時(shí)間是1us(1MHz頻率對(duì)應(yīng)的周期是1us),在計(jì)算定時(shí)器初值時(shí)的依據(jù)就是出自這里啦。

所謂的增強(qiáng)型單片機(jī),其實(shí)就是STC的51單片機(jī),在STC最開始的芯片中,比如STC89C51,這些芯片和AT的芯片沒多少區(qū)別,運(yùn)行速度和資源情況都差不多。到了STC12系列以后,STC公司連命名都改了,內(nèi)部資源和運(yùn)行速度都有了很大的提升,另一個(gè)很大的改動(dòng)就是引腳的排列方式,之前的STC芯片的引腳排列都是兼容傳統(tǒng)的51單機(jī)的,到時(shí)STC12系列以后,引腳不再兼容傳統(tǒng)單片機(jī),而是有了自己獨(dú)特的排列,特別是后續(xù)的STC15、STC8等系列單片機(jī)。

>>>>

1T和12T

1T和12T只有在STC12系列以后的單片機(jī)里才出現(xiàn)的。前面我們已經(jīng)說到了,傳統(tǒng)的單片機(jī)其實(shí)就是12T單片機(jī),也就是晶振頻率會(huì)被12分頻后才是指令運(yùn)行的頻率。到時(shí)STC12系列以后的STC單片機(jī)出現(xiàn)1T模式,也就是有些指令的執(zhí)行時(shí)只需要兩個(gè)晶振周期就能執(zhí)行完。理論上來說,這樣的運(yùn)行速度會(huì)比傳統(tǒng)單片機(jī)快6倍,為什么加“理論”,因?yàn)椴皇撬械闹噶疃伎?倍,只是一部分,還有些是快4倍,快3倍的。具體的需要看STC官方數(shù)據(jù)手冊(cè),如下圖。

仔細(xì)的小伙伴會(huì)看到在第5列的第一行里有個(gè)小括號(hào)(采用STC-Y2 CPU內(nèi)核指令集),STC12用的就是這個(gè)內(nèi)核,而到了STC15系列芯片用的是STC-Y5內(nèi)核,STC8系列用的是STC-Y6內(nèi)核,Y后面的數(shù)字越大,指令優(yōu)化的越厲害,表現(xiàn)出來的就是運(yùn)行的更快,STC-Y5內(nèi)核的指令集里,大部分的匯編指令到時(shí)一個(gè)晶振周期就執(zhí)行完成的了,也就是比傳統(tǒng)單片機(jī)快12倍。 現(xiàn)在我在做單片機(jī)開發(fā)的時(shí)候,絕大部分都是采用的C語言開發(fā),你還在用匯編,那我只能是膜拜你了。C語言編程的程序方便移植,好理解,容易入門,不需要去記住那些復(fù)雜的寄存器,但是確定也明顯,就是效率不高,運(yùn)行速度我們沒辦法準(zhǔn)確的計(jì)算出來。編譯器在把C語言代碼轉(zhuǎn)化為匯編語言的過程我們是沒法控制的,這樣編譯出來的機(jī)器代碼我們就沒辦法去計(jì)算時(shí)間的指令運(yùn)行時(shí)間。 >>>>

軟件仿真和實(shí)際開發(fā)板

仿真軟件,外國(guó)老表開發(fā)的,STC國(guó)產(chǎn)(好吧,內(nèi)核還是人家的)。不知道什么原因,我們不知道,也不敢問,在仿真軟件里就是沒有STC的單片機(jī)芯片可以選擇,沒有STC的單片機(jī),我們只能選擇傳統(tǒng)51單片機(jī),這樣一來,仿真的時(shí)候,程序運(yùn)行的速度是傳統(tǒng)的12T模式,也就是晶振頻率12分頻后才是執(zhí)行的實(shí)際頻率。 單片機(jī)開發(fā)板運(yùn)行時(shí),因?yàn)樘釂栃』锇橛玫膯纹瑱C(jī)是STC12系列的芯片,就算他運(yùn)行在12T模式下,指令系統(tǒng)還是有優(yōu)化,速度肯定比傳統(tǒng)的指令集要快。更何況呢,他連1T和12T都分不清,運(yùn)行在1T模式下也是有可能的,所以,今天的問題就來了。實(shí)際開發(fā)板運(yùn)行速度肯定會(huì)比軟件仿真快。 寫在最后 在很久之前,我就寫過一篇文字,就說了不建議初學(xué)單片機(jī)的菜鳥從軟件仿真開始?,F(xiàn)在還有多少高校的單片機(jī)課程還在是以仿真運(yùn)行的呢,希望是沒有了,但我想,僅僅是我想想。 其實(shí),小代覺得,學(xué)單片機(jī)的最終是要自己設(shè)計(jì)屬于自己的東西,比如自己的畢設(shè),更或是親手做一個(gè)小禮物俘獲女神的芳心。但是自己寫的代碼永遠(yuǎn)都運(yùn)行在軟件里,沒有實(shí)際電路,你又怎么可能會(huì)自己設(shè)計(jì)電路呢。你不自己看見過電阻,又怎么可能會(huì)知道一個(gè)長(zhǎng)得很像電阻的電子元件它其實(shí)是二極管。 最最后,回到今天的問題上,當(dāng)我們把軟件仿真運(yùn)行完美的代碼移植到實(shí)際開發(fā)板上運(yùn)行時(shí),代碼是需要做單片機(jī)的適配的,比如,采用代碼方式實(shí)現(xiàn)的延時(shí)函數(shù),比如IO端口的配置,比如某些中斷的入口,比如某些寄存器的定義等等。在移植之前,還是得拿目標(biāo)芯片的數(shù)據(jù)手冊(cè)來看看。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    455

    文章

    50818

    瀏覽量

    423719
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6037

    文章

    44558

    瀏覽量

    635400

原文標(biāo)題:?jiǎn)栴}:?jiǎn)纹瑱C(jī)軟件仿真和實(shí)際運(yùn)行速度不一樣?

文章出處:【微信號(hào):chuxue_MCU,微信公眾號(hào):?jiǎn)纹瑱C(jī)技術(shù)宅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ADS1241E在1T單片機(jī)不能讀出數(shù)據(jù)是怎么回事?

    在使用ADS1241E時(shí)用STC90系列單片機(jī)采集數(shù)據(jù)時(shí)工作狀態(tài)時(shí)讀取數(shù)據(jù)是正常的,采用STC12系列(1T),不能讀取數(shù)據(jù),有哪位大神指教下,謝謝!
    發(fā)表于 12-23 08:36

    TAS5611有M1,M2,M3模式設(shè)置腳,TAS5611的AD模式 BD模式有什么區(qū)別

    TAS5611有M1,M2,M3模式設(shè)置腳,請(qǐng)教下芯片的AD模式BD模式有何區(qū)別?
    發(fā)表于 10-16 07:55

    usb主機(jī)模式和設(shè)備模式區(qū)別

    USB(通用串行總線)是種廣泛使用的接口技術(shù),用于連接計(jì)算機(jī)和外部設(shè)備。USB主機(jī)模式和設(shè)備模式是USB通信中的兩種不同角色,它們定義了設(shè)備和計(jì)算機(jī)之間的通信方式。以下是對(duì)這兩種模式
    的頭像 發(fā)表于 09-25 09:06 ?856次閱讀

    TEA1995T同步整流器(SR)開關(guān)模式電源的控制器ic

    TEA1995T是新代同步整流器(SR)的首款產(chǎn)品。用于開關(guān)模式電源的控制器ic。它包含了個(gè)自適應(yīng)柵極驅(qū)動(dòng)器在任何負(fù)載下獲得最大效率的方
    的頭像 發(fā)表于 07-03 17:05 ?831次閱讀
    TEA1995<b class='flag-5'>T</b>同步整流器(SR)開關(guān)<b class='flag-5'>模式</b>電源的控制器ic

    idf 4.0支持的的u盤,最大存儲(chǔ)容量是多少?是否支持1T呢?

    idf 4.0支持的的u盤,最大存儲(chǔ)容量是多少?是否支持1T的?
    發(fā)表于 06-20 06:09

    Si12T:低功耗12通道電容觸摸傳感器方案選型

    我們可以看到Si12T它是款具有自動(dòng)靈敏度校準(zhǔn)功能的12通道電容傳感器,這種電容傳感器的工作電壓范圍為1.8~5.0V。 另外Si12T還可設(shè)置IDLE
    的頭像 發(fā)表于 06-12 15:08 ?507次閱讀
    Si<b class='flag-5'>12T</b>:低功耗<b class='flag-5'>12</b>通道電容觸摸傳感器方案選型

    智嵌物聯(lián)100/1000BASE-T1千兆車載以太網(wǎng)交換機(jī)

    ZQWL-AES6502是智嵌物聯(lián)自主研發(fā)生產(chǎn)的款2+5端口千兆車載以太網(wǎng)(100/1000BASE-T1)交換機(jī)。具有2個(gè)RJ45千兆網(wǎng)口(100BASE-Tx/1000BASE-T
    的頭像 發(fā)表于 06-06 09:29 ?1148次閱讀
    智嵌物聯(lián)100/1000BASE-<b class='flag-5'>T1</b>千兆車載以太網(wǎng)交換機(jī)

    伺服電機(jī)位置模式和速度模式區(qū)別

    伺服電機(jī)作為現(xiàn)代工業(yè)自動(dòng)化領(lǐng)域中的核心動(dòng)力裝置,其控制模式的選擇對(duì)于整個(gè)系統(tǒng)的性能有著至關(guān)重要的影響。在伺服電機(jī)的控制模式中,位置模式和速度模式是最為常見的兩種。本文將對(duì)這兩種
    的頭像 發(fā)表于 06-05 15:02 ?3465次閱讀

    網(wǎng)絡(luò)橋接模式是什么? 網(wǎng)絡(luò)橋接模式和路由模式區(qū)別

    ,以便將多個(gè)計(jì)算機(jī)連接在起并共享資源。 網(wǎng)絡(luò)橋接模式和路由模式區(qū)別 網(wǎng)絡(luò)橋接模式和路由模式
    的頭像 發(fā)表于 05-10 13:48 ?4323次閱讀

    555集成芯片的三種工作模式區(qū)別

    555集成芯片是個(gè)功能強(qiáng)大的模擬電路和數(shù)字電路結(jié)合的中規(guī)模集成電路,它主要有三種工作模式:?jiǎn)畏€(wěn)態(tài)模式、雙穩(wěn)態(tài)模式和無穩(wěn)態(tài)
    的頭像 發(fā)表于 03-26 14:46 ?1664次閱讀

    H743zit6使用SPIDMA模式接收數(shù)據(jù)異常怎么解決?

    數(shù)據(jù)。 監(jiān)視變量確實(shí)與上位機(jī)接收后顯示的樣,再次證明上位機(jī)與USB傳輸無問題。 總結(jié)問題: 1.為什么調(diào)試模式與正常模式運(yùn)行會(huì)有區(qū)別?
    發(fā)表于 03-15 06:01

    工業(yè)智能網(wǎng)關(guān)的網(wǎng)關(guān)模式和交換機(jī)模式有哪些區(qū)別

    工業(yè)智能網(wǎng)關(guān)主要用以實(shí)現(xiàn)工業(yè)物聯(lián)網(wǎng)絡(luò)中不同設(shè)備和系統(tǒng)之間的通信,工業(yè)智能網(wǎng)關(guān)常見的兩種工作模式是網(wǎng)關(guān)模式和交換機(jī)模式,在功能和應(yīng)用場(chǎng)景上存在顯著差異,本篇就為大家簡(jiǎn)單介紹下兩者之間的
    的頭像 發(fā)表于 03-12 17:24 ?980次閱讀
    工業(yè)智能網(wǎng)關(guān)的網(wǎng)關(guān)<b class='flag-5'>模式</b>和交換機(jī)<b class='flag-5'>模式</b>有哪些<b class='flag-5'>區(qū)別</b>

    臨界模式與連續(xù)模式區(qū)別

    在功率因數(shù)校正(PFC)電路設(shè)計(jì)中,臨界模式(Boundary Conduction Mode,BCM)和連續(xù)模式(Continuous Conduction Mode,CCM)是兩種關(guān)鍵的操作模式
    的頭像 發(fā)表于 02-23 15:35 ?2128次閱讀
    臨界<b class='flag-5'>模式</b>與連續(xù)<b class='flag-5'>模式</b>的<b class='flag-5'>區(qū)別</b>

    t觸發(fā)器和jk觸發(fā)器的區(qū)別和聯(lián)系

    觸發(fā)器是數(shù)字電路中常用的組合邏輯電路,在現(xiàn)代電子系統(tǒng)中有著廣泛的應(yīng)用。其中,最常用的兩種觸發(fā)器是T觸發(fā)器和JK觸發(fā)器。本文將詳細(xì)介紹T觸發(fā)器和JK觸發(fā)器的區(qū)別和聯(lián)系。 、
    的頭像 發(fā)表于 02-06 14:04 ?6164次閱讀

    開關(guān)電源的突發(fā)模式和脈沖跳躍模式的原理及區(qū)別是什么?

    想弄懂開關(guān)電源的突發(fā)模式和脈沖跳躍模式的原理及區(qū)別,以BOOST拓?fù)錇槔M軌蛴袑?duì)應(yīng)的電感、開關(guān)以及輸出的波形,謝謝。。
    發(fā)表于 01-08 07:25