在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

超高速微控制器硬件增強串口功能

星星科技指導員 ? 來源:ADI ? 作者:ADI ? 2023-02-21 16:08 ? 次閱讀

本應用筆記介紹了達拉斯半導體DS89C430和DS89C450超高速微控制器的全新串行端口特性。增加時鐘倍頻器允許用戶選擇原始頻率四分之一的晶體,以產生相同的波特率并降低EMI。

概述

與每個指令周期至少需要8051個時鐘的原始12架構相比,超高速微控制器具有先進的8051內核架構,能夠在短短一個時鐘周期內執行指令。為了補充高性能內核,標準8051片上外設中集成了新的硬件功能。其中兩個新功能,時鐘乘法器和可選的高速時鐘到定時器,可以直接影響串行端口的波特率生成。本文檔的目的是解釋這兩個新功能與串行端口波特率生成之間的交互。

串行端口模式

DS89C430串行端口提供四種基本工作模式。模式 0 允許使用源自系統時鐘的波特時鐘對 8 位數據進行半雙工同步通信。模式 1 允許 8 位數據與源自定時器 1 或定時器 2 的波特時鐘進行全雙工異步通信。模式 3 與模式 1 的不同之處在于支持 9 位數據傳輸和接收。模式2同樣提供9位數據通信,但其波特時鐘直接來自振蕩器頻率。為了支持模式 1、2 和 3 異步通信,起始位始終位于數據之前,停止位始終位于數據之后。每種串行端口模式的完整詳細信息可在超高速微控制器用戶指南中找到。

時鐘乘法器

超高速微控制器集成了片上時鐘倍頻器,可在降低外部晶體時鐘頻率的情況下提供更高的性能。乘法器可以配置為生成雙倍 (2X) 或四倍 (4X) 的內部系統時鐘,由 2X/4X 特殊功能寄存器位 (PMR.3) 控制。請注意,由此產生的2倍或4倍乘法系統時鐘仍不能超過數據手冊中規定的最大工作頻率。有關乘法器的完整詳細信息,請參閱超高速微控制器用戶指南。

一旦時鐘乘法器輸出被選為內部系統時鐘(CD1:0 = 00b),從系統時鐘派生的某些串行端口波特率時鐘(不再等于外部振蕩器頻率)將發生變化。圖 1 突出顯示了使用 2X 或 4X 乘法系統時鐘時可能受影響的串行端口時鐘。串行模式 0 波特率始終不同,串行模式 2 波特率永遠不會不同,串行模式 1、3 波特率可能不同,具體取決于所使用的定時器和/或定時器輸入時鐘選擇。如圖1所示,表1表示哪些串行端口模式受時鐘乘法器的影響。附錄 A 包含使用 2X 或 4X 時鐘乘法器模式時執行波特率計算的詳細公式。

pYYBAGP0e_2AHRrjAABgq7kBaN4517.gif?imgver=1

圖1.串行端口時鐘受時鐘乘法器輸出選擇的影響 (CD1:0 = 00b)。

串口模式 波特時鐘源 波特時鐘取決于
內部系統時鐘(時鐘
倍頻器選擇)
模式 0
(同步 - 8 位)
系統時鐘/4
系統時鐘/12
是的
模式 1
(異步 - 10 位)
定時器 1
定時器 2
是1
否2
模式 2
(異步 - 11 位)
振蕩器時鐘/32
振蕩器時鐘/64
模式 3
(異步 - 11 位)
定時器 1
定時器 2
是1
否2
1 僅當啟用 4 分頻或 1 分頻定時器 1 輸入時鐘時(T1M = 1 或 T1MH = 1)。為了與原始 8051 兼容,默認定時器 1 輸入時鐘 (T1MH, T1M = 00b) 固定為振蕩器時鐘除以 12。
2 僅適用于串行端口 0 上的波特率生成。

優點:更快的波特率,更低的EMI

使用時鐘乘法器時,應用優勢可能很大。一個原始頻率四分之一的外部晶體時鐘可用于產生與以前相同的串行模式 0 和(定時器 1 生成)模式 1、3 波特率,但 EMI 大大降低。或者,當內部乘以 2 倍或 4 倍時,相同的外部晶體現在可以生成高達四倍的波特率!

高速輸入時鐘至定時器

為了使片上定時器對應用最有用,每個定時器都應能夠以相當于最小指令周期的速率跟蹤時間。對于以 8051 個振蕩器時鐘執行指令的原始 12 架構,定時器以振蕩器頻率除以 12 速率計時。當達拉斯半導體公司推出其高速微控制器時,該微控制器縮短了四個振蕩器時鐘的機器周期,為每個定時器提供了一個可選擇的振蕩器頻率除以4個輸入時鐘控制。當高速微控制器系列中添加時鐘乘法器功能時,可選擇的4分頻被修改為系統時鐘的函數,而不是振蕩器時鐘。現在,超高速微控制器具有單時鐘周期指令執行功能。同樣,每個片上定時器都進行了升級,集成了可選系統時鐘除以1個輸入。

CKMOD (0h) SFR 中包含的 T1MH、T2MH 和 T96MH 位分別使系統時鐘除以 1 個輸入到定時器 0、定時器 1 和定時器 2。啟用定時器的高速系統時鐘輸入 (TxMH = 1) 將自動覆蓋系統時鐘除以 4 個輸入 (TxM = 1) 設置。新的系統時鐘除以 1 個定時器輸入,如系統時鐘除以 4 個輸入,在使用定時器1時會影響波特率的產生。圖2突出顯示了可能受選擇定時器1高速時鐘輸入影響的串行端口時鐘。

poYBAGP0e_-ACFCQAACnxZlzde4938.gif?imgver=1

圖2.串行端口時鐘受高速定時器1輸入(T1MH = 1)選擇的影響。

優點:波特率更快,波特率分辨率更高

相對于串行端口操作,除以1個輸入時鐘功能可轉化為兩個用戶優勢。首先,在系統時鐘頻率相同的情況下,使用定時器1時,現在可以為串行模式3和1生成四倍的波特率。其次,時鐘定時器1的速度更快,可實現更高的波特率分辨率,從而可能減少與應用已使用的波特率相關的誤差,或者使新的波特率在應用使用的可接受誤差范圍內。

例如,假設用戶當前有一個以 20MHz 系統時鐘頻率運行的達拉斯高速微控制器應用程序。該應用程序使用其中一個串行端口與PC進行RS232通信,并要求兩者之間的波特率不匹配<3%。如果使用定時器1(在8位自動重新加載模式下)生成波特率,下面的表2給出了Dallas高速微控制器與新型超高速微控制器的“良好”波特率樣本。不可接受的波特率(不匹配> 3%)已用灰色陰影顯示。表3對25MHz的系統時鐘頻率進行了相同的“良好”波特率比較。可以清楚地看到,啟用高速定時器1輸入時鐘可提供更精細的波特率分辨率。附錄 A 包含利用定時器1 (T1MH = 1) 的系統時鐘輸入時執行波特率計算的詳細公式。

電腦 UART (8250/16450) 高速微控制器(T1M = 1 的定時器 1 用于波特率生成,SMOD_x = 1) 超高速微控制器(T1MH = 1 的定時器 1 用于波特率生成,SMOD_x = 1)
重新加載 波特率 波特率 (TH1) % 誤差 波特率 (TH1) 錯誤
1 115200 104166 (FD) -9.6 113636 (F5) -1.4
2 57600 62500 (FB) 8.5 56818 (EA) -1.4
3 38400 39062 (F8) 1.7 37879 (DF) -1.4
4 28800 28409 (F5) -1.4 29070 (D5) 0.9
5 23040 22321 (F2) -3.1 23148 (加利福尼亞州) 0.5
6 19200 19531 (F0) 1.7 19231 (BF) 0.2
7 16457 16447 (ED) -0.1 16447 (B4) -0.1
8 14400 14204 (EA) -1.4 14368 (A9) -0.2
9 12800 13020 (E8) 1.7 12755 (9E) -0.4
10 11520 11574 (E5) 0.5 11574 (94) 0.5
11 10472 10417 (E2) -0.5 10417 (88) -0.5
12 9600 9469 (DF) -1.4 9615 (7E) 0.2
電腦 UART
(8250/16450)
高速
微控制器
(T1M = 1 的定時器 1 用于波特
率生成,SMOD_x = 1)
超高速
微控制器
(T1MH = 1 的定時器 1 用于波特
率生成,SMOD_x = 1)
重新加載 波特率 波特率 (TH1) % 誤差 波特率 (TH1) 錯誤
1 115200 130208 (FD) 13.0 111607 (F2) -3.1
2 57600 55803 (F9) -3.1 57870 (E5) 0.4
3 38400 39062 (F6) 1.7 38110 (D7) -0.8
4 28800 27901 (F2) -3.1 28935 (加利福尼亞州) 0.5
5 23040 22978 (EF) -0.3 22978年(公元前) -0.3
6 19200 19531 (歐共體) 1.7 19290 (AF) 0.5
7 16457 16276 (E8) -1.1 16447 (A1) -0.1
8 14400 14467 (E5) 0.5 14335 (93) -0.5
9 12800 12600 (E1) -1.6 12807 (86) 0.1
10 11520 11489 (德語) -0.3 11489 (78) -0.3
11 10472 10557 (分貝) 0.8 10487 (6B) 0.1
12 9600 9527 (D7) -0.8 9586(5D) -0.1

應用示例 #1

SPI 模式 (1,1) 接口,使用同步串行模式 0

雖然可以通過“位敲擊”端口引腳與SPI?器件接口,但使用同步串行模式0可減少軟件開銷并實現更快的通信速度。同步串行工作模式在 TXD 引腳上提供移位時鐘,并在移位時鐘 (TXD) 的每個上升沿處在 RXD 引腳上寫入/讀取串行數據。由于 TXD 處于高電平狀態,因此同步串行模式與 CPOL = 1、CPHA = 1 SPI 模式緊密對齊。由于同步串行模式不需要每個位的 3 樣本多數投票方案(如異步串行模式),因此它能夠比任何其他串行模式更快地實現波特率。下圖顯示了DS89C430微控制器與SPI模式(1,1)兼容EEPROM器件之間的接口。

poYBAGP0fAGAOID2AAAti1IxmL8394.gif?imgver=1

圖3.SPI兼容外設的串行端口接口示例。

串行端口 0 首先置于模式 0,并配置為產生系統時鐘除以 4 波特時鐘。根據所連接的SPI外設的時序限制,可能需要選擇降低的系統時鐘或系統時鐘除以12波特時鐘。在外部,TXD引腳(P3.1)提供串行時鐘并連接到EEPROM的SCK輸入。RXD 引腳 (P3.0) 通過連接到 EEPROM 的 SI 輸入和 SO 輸出來處理所有 SPI 數據事務。使用共享 SI/SO 配置的能力將取決于連接的 SPI 外設的 I/O 時序。第三個微控制器端口引腳未鏈接到片上串行端口硬件,用作SPI外設芯片選擇輸入。在本例中,端口引腳P3.2將連接到EEPROM/CS輸入,并由軟件手動置位和取消置位。由于串行端口首先通信LSB,而SPI外設希望首先通信MSB,因此在大多數情況下使用查找表進行字節轉換。

已經創建了兩個例程,XRAM_store 和 XRAM_recall,并且完全按照它們的名字簡單地執行。XRAM_store例程將內部1kB SRAM的電流內容寫入指定的1kB范圍的EEPROM,而XRAM_recall將指定的1kB范圍的EEPROM讀取到DS89C430片內SRAM中。此代碼僅用作示例,可輕松調整為訪問微控制器或EEPROM存儲器的不同地址范圍,以較小或較大的塊。

應用示例 #2

使用異步串行模式 485 的 RS-3 網絡

異步串行端口模式以與普遍接受的RS-232協議兼容的格式發送和接收數據。超高速微控制器以其最大系統時鐘頻率(33MHz)運行時,并使用系統時鐘定時器輸入(T1MH = 1),可以實現超過2Mbaud的異步波特率。(超高速微控制器包含一個表格,顯示每種串行模式的最特率)。遺憾的是,為了符合RS-232標準的物理要求,RS-232發送器必須提供±5V的最小輸出電壓擺幅,但不能超過30V/μs的壓擺率。這些限制通常將RS-232兼容通信限制在較慢的波特率和較短的線路長度下。但是,當需要更高的傳輸速率時,與RS-232標準相關的限制不應妨礙異步串行模式的使用。首先,RS-232“兼容”(不兼容)收發器,能夠進行MegaBaud?操作,目前可從Maxim/Dallas獲得。其次,多個微控制器和/或其他異步串行設備之間的點對點連接允許創建能夠以更快的波特率進行通信的用戶定義網絡。此外,還有物理層協議(例如RS-422和RS-485)支持更遠距離的高速異步串行通信。

poYBAGP0fAKAcJ6cAAA1sYaENDU134.gif?imgver=1

圖4.使用硬件串行端口接口的RS-485網絡示例。

上圖顯示了(485)個DS3C89微控制器之間的RS-430網絡接口。異步串行模式使用 TXD 引腳進行傳輸,使用 RXD 引腳進行接收。這些引腳直接連接到RS-485收發器的DI(數據輸入)和RO(接收輸出)引腳。第三個微控制器端口引腳P1.4連接到DE(數據使能)和/RE(接收使能),并將用作半雙工收發器的方向控制。網絡使用主/從架構(1個主站,2個從站),其中每個從設備都有自己唯一的地址,在總線上傳輸之前必須首先由主設備尋址。所有器件均以 22.1184MHz 系統時鐘頻率運行,并使用定時器 1 產生 1.38M 波特率。生成此波特率所需的設置可在圖后的表4中找到。

系統時鐘(兆赫) 外部晶體或時鐘頻率 (MHz) 時鐘乘法器模式2 計時器 1 重新加載值
FB 足球俱樂部 FD FF
7.3728 7.3728 - 92,160 115,200 153,600 230,400 460,800
10.0000 10.0000 - 125,000 156,250 208,333 312,250 625,000
11.0592 11.0592 - 138,240 172,800 230,400 345,600 691,200
14.7456 7.3728 2 倍 184,320 230,400 307,200 460,800 921,600
16.0000 16.0000 - 200,000 250,000 333,333 500,000 1,000,000
18.4320 18.4320 - 230,400 288,000 384,000 576,000 1,152,000
20.0000 10.0000 2 倍 250,000 312,250 416,667 625,000 1,250,000
22.1184 11.0592 2 倍 276,480 345,600 460,800 691,200 1,382,4001
25.0000 25.0000 - 312,500 390,625 520,833 781,250 1,562,500
29.4912 7.3728 4 倍 368,640 460,800 614,400 921,600 1,843,200
32.0000 16.0000 2 倍 400,000 500,000 666,667 1,000,000 2,000,000
33.0000 33.0000 - 412,500 515,625 687,500 1,031,250 2,062,500
1 應用示例 #2 中使用的波特率。
2 時鐘乘法器用于說明,不需要生成這些系統時鐘頻率。

代碼示例:主代碼

主器件初始化為發送器,并驅動其收發器的DE(/RE引腳)至邏輯高電平。發送從地址后,主機將收發器置于接收模式。從機接收到兩個數據字節后,主機將收發器返回到其發送模式。如果在一定時間內未從尋址從站接收到兩個數據字節,則主站使用 13 位定時器0 超時。在對另一個從站尋址之前,主站將從地址和接收的數據字節(或指示未收到響應)發送到串行端口0。

審核編輯:郭婷

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

    關注

    48

    文章

    7552

    瀏覽量

    151423
  • 振蕩器
    +關注

    關注

    28

    文章

    3832

    瀏覽量

    139088
  • 定時器
    +關注

    關注

    23

    文章

    3248

    瀏覽量

    114800
收藏 人收藏

    評論

    相關推薦

    基于FPGA的超高速FFT硬件實現

    基于FPGA的超高速FFT硬件實現介紹了頻域抽取基二快速傅里葉運算的基本原理;討論了基于FPGA達4 096點的大點數超高速FFT硬件系統設計與實現方法,當多組大點數進行FFT運算時,
    發表于 06-14 00:19

    請問我使用超高速控制器時該怎么處理這些針呢?

    我想使用超高速控制器,但只適用于USB 2。所以我不需要超速引腳或OTG引腳。我該怎么處理這些針呢?投入或離開地面浮動?謝謝喬恩 以上來自于百度翻譯 以下為原文I want to use
    發表于 06-12 11:42

    超高速大電流有源濾波LDO控制器

    MIC5190的典型應用:超高速,大電流有源濾波/ LDO控制器。 MIC5190提供超高速,可滿足微處理內核,ASIC和其他
    發表于 03-19 10:12

    具有超高速控制的2MHz PWM 2A降壓穩壓

    MIC23201的典型應用:具有超高速控制的2MHz PWM 2A降壓穩壓。 MIC23201是一款高效率2MHz,2A同步降壓穩壓,具有超高速
    發表于 08-10 09:40

    超高速電機控制方式討論

    超高速10萬轉電機(1對極)控制方式討論
    發表于 08-27 08:22

    高速微控制器系列向超高速閃存微控制器的升級

    高速微控制器系列向超高速閃存微控制器的升級 Porting Applications from the High-Speed Micro Family to
    發表于 07-27 23:26 ?958次閱讀

    高速微控制器系列向超高速閃存微控制器的升級

    高速微控制器系列向超高速閃存微控制器的升級 摘要:多種原
    發表于 08-13 13:29 ?732次閱讀

    高速微控制器系列向超高速閃存微控制器的升級

    摘要:多種原因會促使我們把以前使用高速微控制器(DS80C310/DS80C320/DS80C323/DS8xC520)的8051設計升級到新的超高速閃存微控制器(DS89C430/D
    發表于 04-23 10:32 ?526次閱讀

    USB 3.0超高速集線器控制器RTS5411

    USB 3.0超高速集線器控制器RTS5411
    發表于 08-02 10:13 ?37次下載

    超高速USB3.0主機和設備控制器接口應用方案

    CH569/565 片上集成超高速USB3.0主機和設備控制器(內置 PHY)、千兆以太網控制器、專用高速 SerDes 控制器(內置 PH
    的頭像 發表于 09-05 15:29 ?3140次閱讀
    <b class='flag-5'>超高速</b>USB3.0主機和設備<b class='flag-5'>控制器</b>接口應用方案

    超高速閃存微控制器軟件SPI

    本應用筆記介紹了用于超高速閃存微控制器(如DS89C430和DS89C450)的軟件(bitbang)SPI庫。對庫的應用程序接口及其功能說明進行了說明。該應用程序接受串行輸入并在Crystalfontz LCD上顯示文本。
    的頭像 發表于 01-10 11:08 ?1220次閱讀
    <b class='flag-5'>超高速</b>閃存<b class='flag-5'>微控制器</b>軟件SPI

    使用超高速閃存微控制器實現快速內存傳輸

    達拉斯半導體超高速閃存微控制器具有雙數據指針,具有自動遞增/遞減和切換選擇功能。本應用筆記將采用一個數據指針的原始8051架構與DS89C430和DS89C450的新架構及其更高的數據移動效率進行了比較。本文提供了大量代碼示例,
    的頭像 發表于 02-21 16:43 ?989次閱讀
    使用<b class='flag-5'>超高速</b>閃存<b class='flag-5'>微控制器</b>實現快速內存傳輸

    DS89C430/DS89C450超高速閃存微控制器存儲接口時序

    達拉斯半導體DS89C430超高速微控制器是一款每機器周期1時鐘的器件。DS89C430可直接替代舊的8051架構設計。但是,必須評估內存接口時序。本應用筆記介紹了使用DS89C430微控制器時支持的五種總線模式。
    的頭像 發表于 03-01 14:31 ?1748次閱讀
    DS89C430/DS89C450<b class='flag-5'>超高速</b>閃存<b class='flag-5'>微控制器</b>存儲<b class='flag-5'>器</b>接口時序

    將基于8051的微控制器連接到SCI端口

    本應用筆記介紹如何配置高速微控制器超高速閃存微控制器的UART,以便與支持SCI的設備通信。它首先簡要討論了SCI和UART模塊之間的差異,并以一個實際示例結束,說明如何配置基于80
    的頭像 發表于 06-13 15:48 ?764次閱讀
    將基于8051的<b class='flag-5'>微控制器</b>連接到SCI端口

    超高速微控制器硬件增強串口功能

    本應用筆記介紹了達拉斯半導體DS89C430和DS89C450超高速微控制器的全新串行端口特性。增加時鐘倍頻允許用戶選擇原始頻率四分之一的晶體,以產生相同的波特率并降低EMI。
    的頭像 發表于 06-13 16:27 ?758次閱讀
    <b class='flag-5'>超高速</b><b class='flag-5'>微控制器</b><b class='flag-5'>硬件</b><b class='flag-5'>增強</b><b class='flag-5'>串口</b><b class='flag-5'>功能</b>
    主站蜘蛛池模板: 毛片综合| 5g影院天天爽 | 特级免费毛片| 亚洲卡一卡2卡三卡4卡国色| 黄页网站在线| 午夜高清在线| 夜夜夜夜曰天天天天拍国产 | 日一区二区三区| 国产黄色的视频| 国产九九热| 人人草人人| 天天碰视频| 天天天天天干| 亚洲偷图色综合色就色| 波多野结衣在线视频免费观看| 免费的色网站| 免费看日本黄色片| 国产三及| 国产成人精品视频一区二区不卡| 美女 免费 视频 黄的| 国模绪| 国产一级爱c片免费播放| 美女爱爱网站| bt天堂在线www中文在线| 俺去啦最新官网| 天天干夜夜夜操| 最近国语视频免费观看在线播放| 国产欧美日韩视频免费61794| 午夜三级理论在线观看视频| 亚洲国产成人久久精品影视| 亚洲精品免费视频| 亚洲不卡在线播放| 性欧美xxxxhd| 欧美日韩国产一区| 美国一级做a一级爱视频| 国产精品视频一区二区三区| 国产www色| 日日操免费视频| 国产在线观看福利| 白浆喷射| 202z欧美成人|