女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一個1T模式和12T模式的區別?

單片機技術宅 ? 來源:單片機技術宅 ? 2020-05-14 11:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如圖,問題大概就是說初學單片機,用軟件仿真出來的程序,在開發板上運行的效果比仿真的快,晶振都是一樣的12M。還問到一個1T模式和12T模式的區別?

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

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

傳統單片機和增強單片機

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

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

>>>>

1T和12T

1T和12T只有在STC12系列以后的單片機里才出現的。前面我們已經說到了,傳統的單片機其實就是12T單片機,也就是晶振頻率會被12分頻后才是指令運行的頻率。到時STC12系列以后的STC單片機出現1T模式,也就是有些指令的執行時只需要兩個晶振周期就能執行完。理論上來說,這樣的運行速度會比傳統單片機快6倍,為什么加“理論”,因為不是所有的指令都快6倍,只是一部分,還有些是快4倍,快3倍的。具體的需要看STC官方數據手冊,如下圖。

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

軟件仿真和實際開發板

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

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    459

    文章

    52498

    瀏覽量

    440715
  • 單片機
    +關注

    關注

    6067

    文章

    44990

    瀏覽量

    650372

原文標題:問題:單片機軟件仿真和實際運行速度不一樣?

文章出處:【微信號:chuxue_MCU,微信公眾號:單片機技術宅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    TüV南德授予深圳吉瓦特ISO 15118 EIM模式功能測試D證書

    廣州?2025年7月1日?/美通社/ --?近日,TüV南德意志集團(以下簡稱"TüV?南德")為深圳市吉瓦特科技有限公司(以下簡稱"吉瓦特")HDP986_E充電通信控制器(SECC)頒發符合性
    的頭像 發表于 07-02 09:38 ?139次閱讀
    <b class='flag-5'>T</b>üV南德授予深圳吉瓦特ISO 15118 EIM<b class='flag-5'>模式</b>功能測試D證書

    超聲波T-SAM與C-SAM模式區別

    本文介紹了超聲波的T-SAM與C-SAM兩種模式區別。
    的頭像 發表于 05-21 15:26 ?307次閱讀
    超聲波<b class='flag-5'>T</b>-SAM與C-SAM<b class='flag-5'>模式</b>的<b class='flag-5'>區別</b>

    THA1024T具有待機模式的高速CAN收發器英文手冊

    電子發燒友網站提供《THA1024T具有待機模式的高速CAN收發器英文手冊.rar》資料免費下載
    發表于 04-02 15:50 ?0次下載

    是德示波器滾動模式設置指南

    持續捕獲并顯示波形,適用于觀察低頻信號、周期性變化或需要長時間監測的場景。例如,在電源紋波測試、音頻信號分析或通信系統調試中,滾動模式能直觀展現信號的實時演變過程。 ? 二、滾動模式設置步驟(以DSOX3024T為例)
    的頭像 發表于 04-02 11:52 ?574次閱讀
    是德示波器滾動<b class='flag-5'>模式</b>設置指南

    T4240的正確RCW值是多少?

    1)從 T4240 T2080 RM 來看,PBI_src=0110 BOOT_LOC=1 0000 似乎是正確的。 (2) 從QorIQ SDK 2.0開始,
    發表于 04-02 06:06

    爆款推薦 |?迅為RK3568開發板4核處理器+1T算力NPU+好用到爆的配套資料和視頻!

    爆款推薦 | 迅為RK3568開發板4核處理器+1T算力NPU+好用到爆的配套資料和視頻!
    的頭像 發表于 03-19 13:41 ?702次閱讀
    爆款推薦 |?迅為RK3568開發板4核處理器+<b class='flag-5'>1T</b>算力NPU+好用到爆的配套資料和視頻!

    LIS2DW12使用單次觸發模式時還能進入喚醒觸發模式嗎?

    單詞觸發模式的配置是這樣的: void LIS2DW12_InitForSingleConversion(void) {uint8_t config; // 0. 軟件復位,寄存器默認值config
    發表于 03-12 07:31

    請問Nuclei用戶模式如何切換回機器模式?

    ;uint32_t mepc = ((uint32_t *)saved_regs)[12];printf(\"ECALL Exception Triggerrn\"
    發表于 03-07 16:14

    DLP中video模式與pattern模式有什么區別?

    你好,請問,在DLP相關文檔中,有提到video模式與 pattern模式,請問這兩種模式有什么區別
    發表于 03-03 08:32

    DLPC3479圖像模式和光控制模式區別是什么?

    請問下, 問題:在dlpc3479中的 顯示模式(display mode)和光控制模式(Light Control mode)之間有什么區別
    發表于 02-24 08:27

    ADS1274低速模式和高速模式區別是什么?

    高速模式和低速模式接同樣的參考電壓,低速模式下,轉換完成后的信號電壓差不多減少半, 所以想問下,高速和低速接同樣的時鐘clk,除了采樣頻率不
    發表于 02-12 07:48

    ADS1241E在1T單片機不能讀出數據是怎么回事?

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

    TAS5611有M1,M2,M3模式設置腳,TAS5611的AD模式 BD模式有什么區別?

    TAS5611有M1,M2,M3模式設置腳,請教下芯片的AD模式BD模式有何區別?
    發表于 10-16 07:55

    usb主機模式和設備模式區別

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

    網線t568b和t568a的區別

    網線T568B和T568A是兩種常見的網線線序標準,它們之間存在多個方面的區別,主要包括以下幾個方面: 、排線順序不同 T568B:其排線
    的頭像 發表于 08-14 10:05 ?2w次閱讀