摘要:本應用筆記列舉了Maxim網絡微控制器的一些常見問題(FAQ)。針對應用DS80C400、DS80C410或者DS80C411構建網絡設備時所遇到的硬件和軟件問題進行了解答,并解答了網絡微控制器的一般性問題。本文給出了可供參考的應用筆記、技術指南和軟件資源。
1B. DS80C400、DS80C410和DS80C411之間的差別是什么?
1C.我如何運用64kB內部SRAM?
1D. TINI? OS是什么?
1E. Slush是什么?
1F. 網絡微控制器是如何與因特網接口的?
1G. 網絡棧是什么?
1H. 我以前沒有用過網絡協議。我應該怎樣開始設計?
1I. 提供哪些開發工具?
1J. 提供DS80C400、DS80C410和DS80C411在線仿真器(ICE)嗎?
1K. 我怎樣獲得DS80C400和TINI OS方面的技術支持?
2B. 我怎樣對DS80C400進行編程?我必須用Java?編程嗎?
2C. 使用Maxim的TCP/IP棧需要付費嗎?
2D. 我必須使用Maxim的MAC ID芯片(DS2502)嗎?
2E. 有C、Java和TCP編程方面的參考書嗎?
2F. 如果我使用C或匯編語言編程,該怎樣訪問棧呢?
2G. 我怎樣將DS80C390的代碼移植到DS80C400上運行呢?
2H. 生產過程中,我如何對閃存和NV RAM進行編程呢?
2I. 一個外部文件系統可以和TINI協同工作嗎?
2J. TINI可以從網絡上讀取音頻數據流,并輸出給一個數字揚聲器嗎?
3B. 使用套接字的以太網端口,其最大傳輸速率是多少?
3C. 有沒有參考設計來幫助我加快設計進程?
3D. 連接到以太網需要哪些接口器件?
3E. 設備如何獲得它的以太網MAC地址?
3F. DS80C400需要多高的工作電壓?
3G. 對最低存儲器配置有何要求?
3H. 基于DS80C400的設計是如何加載程序存儲器的?
3I. 我如何在DS80C400/DS80C410/DS80C411評估板上獲得更多的IO呢?
3J. 為什么我的TINI評估板無法使用x4時鐘倍頻呢?
3K. 我的應用需要更多的串口。我可以為我的TINI評估板增加外部串口嗎?
3L. 什么是以太網供電(PoE)?
欲了解更多信息,請參考下面的文檔:
DS80C400數據資料
高速微控制器用戶指南:網絡微控制器補充資料(English only)
高速微控制器用戶指南(English only)
DS80C410和DS80C411數據資料
應用筆記707:"Using the DS80C400 to Maximize System Performance"
表1. TINI運行環境支持的網絡協議
有關TINI運行環境的更多信息,請參考下面的鏈接。
TINI接口方面,應用筆記708:"Exploring Tiny InterNet Interfaces (TINI)"
PPP方面,應用筆記702:"Using TINI Point-to-Point Protocol (PPP)"
IPv4/6方面,應用筆記703:"Embedded Networking with IPv6"
TCP方面,應用筆記196:"Designing a Virtual Modem Using TINI"
HTTP方面,TINIWebserver (位于tini_1.1x SDK的examples目錄下)
Slush不是一個完整的操作系統,但又比一個簡單的shell功能多。它提供了查看和操作文件系統的方法,并可控制包括看門狗定時器和網絡配置等在內的系統功能。
Slush文檔資料可從以下鏈接獲取:TINI SDK的tini1.1x\doc目錄
應用筆記3108:"Modifying and Rebuilding Slush"
與因特網的物理連接是通過一個物理層接口(PHY)實現的。它將微控制器的0V到3V信號轉換為0V高電平、-2.05V低電平的信號。PHY由集成電路、變壓器和相關的支持電路組成。用標準的Cat 5E電纜,并通過一個插孔將系統與墻上以太網網口相連。
了解更多信息,請查閱參考指南:Getting Started with TINI (PDF)和TINI規范和開發指南
DS80C400-KIT:該評估套件包括評估DS80C400微控制器所需的所有軟硬件。它包括DSTINIm400 + DSTINIs400評估板、DB9直通式電纜、以太網交叉電纜、Keil C編譯器試用版、Keil C函數庫和TINI SDK。
模塊和插座板可在生產或設計中分別購買。
DSTINIm400:評估模塊,評估DS80C400的子板。
DSTINIm400:插座板,DSTINIm400的母板。
DSTINIm410:評估模塊,用于評估DS80C410和DS80C411。
Systronix制造的TStik評估板,允許開發人員以單板機或評估板的形式使用DS80C390或DS80C400。
TINI軟件開發工具包(SDK)是一套免費的開發工具,它包含編程用的API和TINI JAVA運行環境,并提供應用實例和文檔資料。
TINI SoM-400EM模塊由EMAC, Inc.提供。模塊基于DS80C400網絡微控制器,并可定購與DSTINIm400引腳兼容的版本。
如需技術支持,請訪問Maxim支持中心。
應用筆記2935:"Design Considerations for CAN Bus and Asynchronous Serial"
應用筆記704:"Asynchronous Serial-to-Ethernet Device Servers"
Getting Started with TINI (PDF)
應用筆記614:"Diagnostic Port for the TINIs400"
應用筆記613:"DS80C400的Keil C語言編程"
應用筆記3362:"Using the Keil μVision Debugger with the DS89C4x0"
應用筆記606:"Configuring Keil PK51 Tools to Support 24-Bit Contiguous Addressing Mode"
應用筆記2777:"用Keil MON390編程TINIm400"
應用筆記3346:"在DS80C400應用中使用SDCC編譯器"
The TINI Specification and Developer's Guide,作者Don Loomis (Addison-Wesley,2001)。這本書已經停止出版,但是舊的版本可以在網上書店找到。本書的免費PDF格式文件,可從這里下載:TCP/IP Illustrated,Volume 1:The Protocols,W. Richard Stevens,(Addison-Wesley,1994)。
Thinking in Java,Bruce Eckel,(Prentice Hall PTR,2002)。
更多技術問題,參見Jan Axelson編寫的Embedded Ethernet and Internet Complete。
也可以在匯編語言中調用網絡棧。我們在TINI SDK中提供了一個匯編器。程序名是a390.exe。匯編語言與網絡棧接口的實例可參見應用筆記609:"Internet Speaker with the DS80C400 Silicon Software"。
更多信息參見:Getting Started with TINI Guide (PDF)
應用筆記3398:"DS80C400/DS80C410/DS80C411 Network Boot"
應用筆記709:"Adding An External File System to TINI"
應用筆記609:"Internet Speaker with the DS80C400 Silicon Software"
應用筆記3266:"Using the DS80C400/TINIm400 for Remote Audio"
應用筆記615:"Design Considerations for DS80C400-Based TINI Systems"
應用筆記3478:"DS80C400/410/411閃存選擇"
應用筆記2935:"Design Considerations for CAN Bus and Asynchronous Serial"
存儲器的訪問速度取決于工作時鐘頻率和電路板設計。例如我們經常說,一個運行在36MHz時鐘頻率下的系統,需要一個70ns RAM和閃存。為實現全速運行,你需要使用15ns或者更快訪問時間的RAM。
應用筆記3478:"DS80C400/410/411閃存選擇"
應用筆記1087:"Micro Tutorial 1: Understanding DC Electrical Characteristics of Microcontrollers"
ROM加載器使用一個由外部時鐘源(晶體或振蕩器)作為時鐘的內部計數器,并將波特率自動調整到與輸入串行數據流相一致。由于自動波特率特性和外部時鐘源有關,我們建議你采用18.432MHz晶振和x4倍頻模式,從而使其運行在大約73MHz頻率下。這個頻率可使自動波特率程序與大多數標準波特率相同步。
關于如何使用一個復雜的可編程邏輯器件(CPLD)來配置硬件并開發相應的軟件,從而為TINIs400插座板提供32個額外GPIO引腳,有一篇應用筆記對此進行了逐步說明。請參考應用筆記3664:"擴展TINI的IO性能"。
應用筆記3413:"初始化高速TINI系統"
應用筆記3412:"TINIS400外部串口參考設計"
應用筆記2380:"Using TINI's Serial Ports"
應用筆記3363:"新型以太網系統,與數據傳輸一起提供直流供電"
1. 一般性問題
1A. 什么是網絡微控制器?1B. DS80C400、DS80C410和DS80C411之間的差別是什么?
1C.我如何運用64kB內部SRAM?
1D. TINI? OS是什么?
1E. Slush是什么?
1F. 網絡微控制器是如何與因特網接口的?
1G. 網絡棧是什么?
1H. 我以前沒有用過網絡協議。我應該怎樣開始設計?
1I. 提供哪些開發工具?
1J. 提供DS80C400、DS80C410和DS80C411在線仿真器(ICE)嗎?
1K. 我怎樣獲得DS80C400和TINI OS方面的技術支持?
2. 軟件問題
2A. 串口/CAN/1-Wire的以太網橋是什么?2B. 我怎樣對DS80C400進行編程?我必須用Java?編程嗎?
2C. 使用Maxim的TCP/IP棧需要付費嗎?
2D. 我必須使用Maxim的MAC ID芯片(DS2502)嗎?
2E. 有C、Java和TCP編程方面的參考書嗎?
2F. 如果我使用C或匯編語言編程,該怎樣訪問棧呢?
2G. 我怎樣將DS80C390的代碼移植到DS80C400上運行呢?
2H. 生產過程中,我如何對閃存和NV RAM進行編程呢?
2I. 一個外部文件系統可以和TINI協同工作嗎?
2J. TINI可以從網絡上讀取音頻數據流,并輸出給一個數字揚聲器嗎?
3. 硬件問題
3A. 使用TINI OS訪問串口時,串口的最大吞吐速率是多少?3B. 使用套接字的以太網端口,其最大傳輸速率是多少?
3C. 有沒有參考設計來幫助我加快設計進程?
3D. 連接到以太網需要哪些接口器件?
3E. 設備如何獲得它的以太網MAC地址?
3F. DS80C400需要多高的工作電壓?
3G. 對最低存儲器配置有何要求?
3H. 基于DS80C400的設計是如何加載程序存儲器的?
3I. 我如何在DS80C400/DS80C410/DS80C411評估板上獲得更多的IO呢?
3J. 為什么我的TINI評估板無法使用x4時鐘倍頻呢?
3K. 我的應用需要更多的串口。我可以為我的TINI評估板增加外部串口嗎?
3L. 什么是以太網供電(PoE)?
1. 一般性問題
1A. 什么是網絡微控制器?
網絡微控制器,使設計者能夠快捷、簡單地為嵌入式系統增加以太網/因特網連接功能。除了具有一個10/100以太網MAC外,微控制器還有三個串口、一個控制器局域網(CAN) 2.0B控制器和一個1-Wire?網絡主機。為實現對網絡的訪問,ROM中提供了TCP IPv4/6網絡棧和操作系統,它們完全可以被應用程序訪問。網絡棧支持TINI OS下最多20個并發TCP連接,并通過以太網MAC實現高達5Mbps的傳輸速率。欲了解更多信息,請參考下面的文檔:
DS80C400數據資料
高速微控制器用戶指南:網絡微控制器補充資料(English only)
高速微控制器用戶指南(English only)
DS80C410和DS80C411數據資料
應用筆記707:"Using the DS80C400 to Maximize System Performance"
1B. DS80C400、DS80C410和DS80C411之間的差別是什么?
DS80C400包括:一個CAN控制器、64kB ROM存儲器、8kB網絡SRAM、1kB應用RAM和一個以太網MAC。DS80C410和DS80C411是DS80C400的衍生版本。DS80C410具有64kB應用SRAM;DS80C411具有64kB內部SRAM,但沒有CAN控制器。1C. 我如何運用64kB內部SRAM?
64kB SRAM和TINIm41x外部存儲器是重疊的。你可以使用這兩個存儲器中的任何一個,但不能同時使用。(TINI OS不會識別到重疊現象。)1D. TINI OS是什么?
更確切地講,TINI OS是指TINI運行環境,它是一個Java運行環境,用于開發Maxim系列內置IP協議棧的微控制器(如DS80C400)的網絡應用程序。隨著IP網絡的普及,嵌入式系統的聯網功能也變得十分必要。然而,網絡協議編程十分復雜,而且需要很長的測試周期。TINI運行環境提供了完整的TCP IPv4/6協議棧,它符合因特網標準。網絡棧由一個多任務操作系統TINI OS驅動。使用TINI運行環境和它自帶的API,開發者能夠快速編寫嵌入式網絡應用程序。表1列出了目前支持的網絡協議。表1. TINI運行環境支持的網絡協議
PPP | DAD |
IPv4/6 | SMTP |
TCP | DHCP |
UDP | FTP |
IGMP | HTTP |
ICMP | TELNET |
有關TINI運行環境的更多信息,請參考下面的鏈接。
TINI接口方面,應用筆記708:"Exploring Tiny InterNet Interfaces (TINI)"
PPP方面,應用筆記702:"Using TINI Point-to-Point Protocol (PPP)"
IPv4/6方面,應用筆記703:"Embedded Networking with IPv6"
TCP方面,應用筆記196:"Designing a Virtual Modem Using TINI"
HTTP方面,TINIWebserver (位于tini_1.1x SDK的examples目錄下)
1E. Slush是什么?
Slush是一個小型的系統shell。類似Unix?,它提供與串口(TTY)、Telnet和FTP服務器的接口。Slush不是一個完整的操作系統,但又比一個簡單的shell功能多。它提供了查看和操作文件系統的方法,并可控制包括看門狗定時器和網絡配置等在內的系統功能。
Slush文檔資料可從以下鏈接獲取:TINI SDK的tini1.1x\doc目錄
應用筆記3108:"Modifying and Rebuilding Slush"
1F. 網絡微控制器是如何與因特網接口的?
一個內置的10/100 Base-T以太網媒體訪問控制(MAC)模塊,構成了微控制器和以太網之間的數據接口。它將文件或數據轉換為符合以太網傳輸規范的數據包。與因特網的物理連接是通過一個物理層接口(PHY)實現的。它將微控制器的0V到3V信號轉換為0V高電平、-2.05V低電平的信號。PHY由集成電路、變壓器和相關的支持電路組成。用標準的Cat 5E電纜,并通過一個插孔將系統與墻上以太網網口相連。
1G. 網絡棧是什么?
網絡棧是協同工作的一組TCP/IP協議,它定義了因特網的通信過程。為便于軟件訪問,內部ROM存儲了處理這些協議的軟件。用戶使用TINI編程時,可以自動訪問這些棧空間;或者由用戶編寫的C和匯編程序來訪問它們。使用TINI棧可以訪問局域網和廣域網。對以太網的全面支持使得設計能夠與LAN連接。點對點(PPP)協議可實現串口IP (IP over serial),并支持無線網絡或使用modem的電話線網絡。1H. 我以前沒有用過網絡協議。我應該怎樣開始設計?
幸運的是,通過TINI平臺進行設計,并不需要你對以太網硬件或軟件非常了解。搭配使用DSTINIm400評估模塊和DSTINIs400插座板,即構成了整個硬件開發平臺的基礎。使用Java編程語言,可以方便地使用廣泛的TINI平臺軟件函數庫。TINI開發環境還提供了使用BSD套接字的標準套接字接口,更可簡化高級用戶的編程工作。了解更多信息,請查閱參考指南:Getting Started with TINI (PDF)和TINI規范和開發指南
1I. 提供哪些開發工具?
開發工具包括:DS80C400-KIT:該評估套件包括評估DS80C400微控制器所需的所有軟硬件。它包括DSTINIm400 + DSTINIs400評估板、DB9直通式電纜、以太網交叉電纜、Keil C編譯器試用版、Keil C函數庫和TINI SDK。
模塊和插座板可在生產或設計中分別購買。
DSTINIm400:評估模塊,評估DS80C400的子板。
DSTINIm400:插座板,DSTINIm400的母板。
DSTINIm410:評估模塊,用于評估DS80C410和DS80C411。
Systronix制造的TStik評估板,允許開發人員以單板機或評估板的形式使用DS80C390或DS80C400。
TINI軟件開發工具包(SDK)是一套免費的開發工具,它包含編程用的API和TINI JAVA運行環境,并提供應用實例和文檔資料。
1J. 提供DS80C400、DS80C410和DS80C411在線仿真器(ICE)嗎?
Metalink Corporation和Phyton提供DS80C400的ICE。欲獲取更多信息,請與這些廠商聯系。1K. 我怎樣獲得DS80C400和TINI OS方面的技術支持?
TINI論壇是最快捷的途徑,從那里可以得到大多數問題的答案。Maxim的專家和嵌入式開發社區的同伴經常在社區中進行在線交流。由于這些討論組具有大量交流信息,因此與向下面技術支持郵件地址發送郵件的方式相比,提交到社區的技術問題可能會得到更快解答。登陸TINI論壇Maxim Discussion Board吧。登陸后,你就可以搜索一般問題的解答信息存檔。如需技術支持,請訪問Maxim支持中心。
2.軟件問題
2A. 串口/CAN/1-Wire的以太網橋是什么?
一個系統經常需要將一種通信協議轉換到另一種通信協議。例如,一個工廠設備可能有一個RS-232串口,但是它需要通過以太網接口與監控計算機進行通信。網絡微控制器是在這些系統間實現橋接的理想器件。基于DS80C400的設計擁有四個串口、一個CAN接口和一個1-Wire接口,它可以作為不同類型網絡間的高速智能橋。可以在TINI - Tiny InterNet Interfaces中找到一個以太網到串口橋的例子。應用筆記2935:"Design Considerations for CAN Bus and Asynchronous Serial"
應用筆記704:"Asynchronous Serial-to-Ethernet Device Servers"
2B. 我怎樣對DS80C400進行編程?我必須用Java嗎?
網絡微控制器可以用Java、C或8051匯編語言進行編程。TINI運行環境同樣支持DS80C400。Java
Sun Microsystems和Borland的Java編譯器是兼容的。要運用所有以太網功能,并非必須采用Java,但它是在TINI環境下編程時最簡單的首選方式。此外,Java環境的支撐工具和函數庫是最多的。編譯器可從Java Technology獲得,需要“Java 2 Platform,Standard Edition” (J2SE)包;1.2.2、1.3.1或1.4.1版本以及Java Communications API。Getting Started with TINI (PDF)
應用筆記614:"Diagnostic Port for the TINIs400"
C
SDCC和Keil Software提供C編譯器。可以使用傳統的8051編譯器,但是只有Keil Software的PK51 C編譯器支持DS80C400和ROM網絡棧的擴展地址空間。DS80C400的ROM中包含完整的TCP/IPv4/6網絡棧和一個小型操作系統,可由用戶編寫的應用軟件來訪問。C函數庫的主頁參見Maxim DS80C400/410/411,這里包括函數庫和用Keil工具開發的示例應用程序。文檔/示例
Keil,IAR和SDCC的C函數庫應用筆記613:"DS80C400的Keil C語言編程"
應用筆記3362:"Using the Keil μVision Debugger with the DS89C4x0"
應用筆記606:"Configuring Keil PK51 Tools to Support 24-Bit Contiguous Addressing Mode"
應用筆記2777:"用Keil MON390編程TINIm400"
應用筆記3346:"在DS80C400應用中使用SDCC編譯器"
2C. 使用Maxim的TCP/IP棧需要付費嗎?
與其它網絡解決方案不同,Maxim允許用戶免費使用微控制器內部基于ROM的TCP/IP棧,不收取任何費用。2D. 我必須使用Maxim的MAC ID芯片(DS2502)嗎?
不是必須使用DS2502才能獲取MAC ID。MAC ID可以用TINI OS通過軟件編入設備中。但是根據許可協議,所有用于軟件產品的程序,只允許與以太網地址芯片(DS2502)或其它被認可的替代品一起使用,以表明得到了Maxim的批準。2E. 有C、Java和TCP編程方面的參考書嗎?
有很多這方面的書籍。我們的工程人員推薦以下參考書目:The TINI Specification and Developer's Guide,作者Don Loomis (Addison-Wesley,2001)。這本書已經停止出版,但是舊的版本可以在網上書店找到。本書的免費PDF格式文件,可從這里下載:TCP/IP Illustrated,Volume 1:The Protocols,W. Richard Stevens,(Addison-Wesley,1994)。
Thinking in Java,Bruce Eckel,(Prentice Hall PTR,2002)。
更多技術問題,參見Jan Axelson編寫的Embedded Ethernet and Internet Complete。
2F. 如果我使用C或匯編語言編程,該怎樣訪問棧呢?
網絡棧和調度程序存放在內部64kB ROM中,以BSD套接字或API的形式訪問它們。Maxim為那些用C語言編程的人員提供了BSD套接字接口。也可以在匯編語言中調用網絡棧。我們在TINI SDK中提供了一個匯編器。程序名是a390.exe。匯編語言與網絡棧接口的實例可參見應用筆記609:"Internet Speaker with the DS80C400 Silicon Software"。
2G. 我怎樣將DS80C390的代碼移植到DS80C400上運行呢?
DS80C400是建立在DS80C390體系結構基礎上的。TINI運行環境支持兩款微控制器。兩個器件最重要的區別是:DS80C400包含以太網MAC和一個Maxim的1-Wire接口,并且只有一個CAN模塊。如果沒有全部使用DS80C390的兩個CAN控制器,微控制器就會共享加載器與應用程序間的第一個閃存扇區。DS80C390的TINI OS(0-6)和應用程序(7-...)也使用固定的扇區。DS80C400提供TINI字符串搜索機制(一般來講,扇區采用0x40-0x46和0x47-...)。片選也是不同的。DS80C400提供更多的DPTR選項,這對于匯編語言編碼非常有用。更多信息參見:Getting Started with TINI Guide (PDF)
2H. 生產過程中,我如何對閃存和NV RAM進行編程呢?
網絡啟動(NetBoot)特性內嵌于Maxim網絡微控制器(DS80C400,DS80C410和DS80C411)的ROM中。在生產環境下,NetBoot特性可實現快速、簡單的閃存和非易失性SRAM存儲器編程。應用筆記3398:"DS80C400/DS80C410/DS80C411 Network Boot"
2I. 一個外部文件系統可以和TINI協同工作嗎?
可以。TINI提供了一個訪問其它文件系統的方法,用戶不會再受所能處理的信息類型和信息量的限制。由于TINI也把它的RAM當作操作堆使用,所以使用遠程文件系統時,允許使用更多的RAM來運行應用程序。應用筆記709:"Adding An External File System to TINI"
2J. TINI可以從網絡上讀取音頻數據流,并輸出給一個數字揚聲器嗎?
DS80C400微處理器的網絡支持功能,使其成為簡單以太網揚聲器設計的自然選擇。使用處理器ROM內置的TCP/IP棧,一個8051匯編語言編寫的應用程序就可以很輕松地從網絡上讀取音頻流數據,并使用這些數據來驅動一個數模轉換器(DAC),從而為一組揚聲器提供線路輸出。應用筆記609:"Internet Speaker with the DS80C400 Silicon Software"
應用筆記3266:"Using the DS80C400/TINIm400 for Remote Audio"
3.網絡微控制器的硬件問題
3A. 使用TINI OS訪問串口時,串口的最大吞吐速率是多少?
當串口配置為115,200bps波特率,并且采用36MHz系統時鐘頻率時,最大發送和接收速率大約為每秒10kB。持續的傳輸速率高度依賴于CPU的負荷,且每種應用都會有所不同。最大波特率取決于具體設計采用的工作頻率,更多信息參見應用筆記2935。3B. 使用套接字的以太網端口,其最大傳輸速率是多少?
采用36MHz系統時鐘頻率時,最大發送和接收速率為每秒266kB。3C. 有沒有參考設計來幫助我加快設計進程?
我們已經將參考設計電路圖放到了網上,見TINI Board。應用筆記615:"Design Considerations for DS80C400-Based TINI Systems"
應用筆記3478:"DS80C400/410/411閃存選擇"
應用筆記2935:"Design Considerations for CAN Bus and Asynchronous Serial"
3D. 連接到以太網需要哪些接口器件?
為了將微控制器(和相關的存儲器)連接到因特網,你需要一個物理層接口(PHY)器件與網口(比如10/100 BASE-T或光纖)連接。我們的參考設計采用了Intel LXT972ALC,但可使用任何與媒體無關接口(MII)協議兼容的PHY。另外,我們的參考設計采用Belfuse的S558-5999-T7變壓器。3E. 設備如何獲得它的以太網MAC地址?
啟動時,DS80C400會自動搜索外部1-Wire總線,以查找外部DS2502-E48器件(需另外購買)。如果找到,DS2502-E48會給DS80C400提供一個唯一的IEEE?以太網MAC地址。以太網MAC物理地址也可以通過用戶應用軟件來編程設置。3F. DS80C400需要多高的工作電壓?
DS80C400需要一個1.8V和一個3.3V電源電壓。器件的I/O引腳由3.3V電源供電,允許器件與3.3V邏輯電平接口。微處理器的I/O能夠耐受5V電壓,因此可與5V外設連接。VCC1和VCC3的上電順序并不重要。DSTINIm400采用MAX1792低壓差線性穩壓器,由3.3V電源產生1.8V電源。3G. 對最低存儲器配置有何要求?
一個最小的網絡設備需要64kB SRAM。應用代碼可以通過網絡下載到SRAM中。網絡初始化(Netboot)可在一個聯網的裸機中進行。如果需要非易失性程序存儲器,可以采用外部閃存/EPROM,但這不是必須的。存儲器的訪問速度取決于工作時鐘頻率和電路板設計。例如我們經常說,一個運行在36MHz時鐘頻率下的系統,需要一個70ns RAM和閃存。為實現全速運行,你需要使用15ns或者更快訪問時間的RAM。
應用筆記3478:"DS80C400/410/411閃存選擇"
應用筆記1087:"Micro Tutorial 1: Understanding DC Electrical Characteristics of Microcontrollers"
3H. 基于DS80C400的設計是如何加載程序存儲器的?
微控制器具有一個ROM (引導裝載程序)加載器,可用來配置微控制器的某些特性。ROM也可用來將軟件載入NV SRAM中,然后將SRAM作為程序存儲器。ROM支持加載Advanced Micro Devices提供的任何閃存器件,從而滿足特定設計所需的速度和空間/格式要求。在具體設計中使能ROM加載器的細節,可參見高速微控制器用戶指南:網絡微控制器補充資料(English only)的第173頁。ROM加載器使用一個由外部時鐘源(晶體或振蕩器)作為時鐘的內部計數器,并將波特率自動調整到與輸入串行數據流相一致。由于自動波特率特性和外部時鐘源有關,我們建議你采用18.432MHz晶振和x4倍頻模式,從而使其運行在大約73MHz頻率下。這個頻率可使自動波特率程序與大多數標準波特率相同步。
3I. 我如何在DS80C400/DS80C410/DS80C411評估板上獲得更多的IO呢?
結合TINIm400參考電路板和TINIs400插座板,DS80C400評估板為你提供了一個出色的評估平臺,可用于評估TINI運行環境并開發基于TINI的應用。TINIm400/TINIs400配套電路板有一點不足之處,即它的通用IO (GPIO)引腳數有限。TINIs400插座板只提供了幾個可用作GPIO的引腳;插座板上的大多數IO引腳都專門用于其它功能(比如,J27提供I2C引腳,J4提供外部中斷引腳)。關于如何使用一個復雜的可編程邏輯器件(CPLD)來配置硬件并開發相應的軟件,從而為TINIs400插座板提供32個額外GPIO引腳,有一篇應用筆記對此進行了逐步說明。請參考應用筆記3664:"擴展TINI的IO性能"。
3J. 為什么我的TINI評估板無法使用x4時鐘倍頻呢?
在DS80C400推出之前,由于受到DS80C390處理器的最大速率限制,TINI系統的最大運行頻率被限制在40MHz以下。DS80C400支持75 MHz速率,使TINI固件能夠支持系統使用最快的晶振倍頻因子。然而,為實現價格低廉的系統,TINI參考設計(TINIm400和TINIs400)并不支持這樣高的速率。很多開發者試圖讓他們的TINI運行在x4晶振倍頻因子下,但最后發現TINI竟然停止工作。產生這種故障現象,并不是因為DS80C400處理器不支持這么高的速率,而是因為閃存不支持該速率。因此,一個高速TINI系統需要裝有快速RAM (固件存儲和執行)的定制電路板。應用筆記3413:"初始化高速TINI系統"
3K. 我的應用需要更多的串口。我可以為我的TINI評估板增加外部串口嗎?
可以。在運行1.1x版TINI OS的DSTINIs400插座板上,可以加入外部串口。請參考下面的應用筆記:應用筆記3412:"TINIS400外部串口參考設計"
應用筆記2380:"Using TINI's Serial Ports"
3L. 什么是以太網供電(PoE)?
以太網供電(PoE)是近期被IEEE 802.3af標準認可的一項配電技術。PoE允許通過無處不在的通用網絡(以太網)來同時傳送直流電和數據包。也就是說,不必再為任何需要始終供電的網絡設備提供本地交流電源,類似網絡設備包括IP電話、無線接入點和網絡監控相機。它同時意味著這些設備不必再靠近墻壁的插座附近安放,并省去那些電源電纜。應用筆記3363:"新型以太網系統,與數據傳輸一起提供直流供電"
評論
查看更多