C8051F040/1/2/3/4/5/6/7混合信號ISP FLASH 微控制器數 據 手 冊 C8051F04x 系列器件是完全集成的混合信號片上系統型MCU,具有64 個數字I/O 引腳(C8051F040/2/4/6)或32 個數字I/O 引腳(C8051F041/3/5/7),片內集成了一個CAN2.0B 控制器。下面列出了一些主要特性;有關某一產品的具體特性參見表1.1。 高速、流水線結構的8051 兼容的CIP-51 內核(可達25MIPS) 控制器局域網(CAN2.0B)控制器,具有32 個消息對象,每個消息對象有其自己的標識 全速、非侵入式的在系統調試接口(片內) 真正12 位(C8051F040/1)或10 位(C8051F042/3/4/5/6/7)、100 ksps 的ADC,帶PGA 和8 通道模擬多路開關 允許高電壓差分放大器輸入到12/10 位ADC(60V 峰-峰值),增益可編程 真正8 位500 ksps 的ADC,帶PGA 和8 通道模擬多路開關(C8051F040/1/2/3) 兩個12 位DAC,具有可編程數據更新方式(C8051F040/1/2/3) 64KB(C8051F040/1/2/3/4/5)或32KB(C8051F046/7)可在系統編程的FLASH 存儲器 4352(4K+256)字節的片內RAM 可尋址64KB 地址空間的外部數據存儲器接口 硬件實現的SPI、SMBus/ I2C 和兩個UART 串行接口 5 個通用的16 位定時器 具有6 個捕捉/比較模塊的可編程計數器/定時器陣列 片內看門狗定時器、VDD 監視器和溫度傳感器具有片內VDD 監視器、看門狗定時器和時鐘振蕩器的C8051F04x 系列器件是真正能獨立工作的片上系統。所有模擬和數字外設均可由用戶固件使能/禁止和配置。FLASH 存儲器還具有在系統重新編程能力,可用于非易失性數據存儲,并允許現場更新8051 固件。片內JTAG 調試電路允許使用安裝在最終應用系統上的產品MCU 進行非侵入式(不占用片內資源)、全速、在系統調試。該調試系統支持觀察和修改存儲器和寄存器,支持斷點、觀察點、單步及運行和停機命令。在使用JTAG 調試時,所有的模擬和數字外設都可全功能運行。每個MCU 都可在工業溫度范圍(-45℃到+85℃)工作,工作電壓為2.7 ~ 3.6V。端口I/O、/RST和JTAG 引腳都容許5V 的輸入信號電壓。C8051F040/2/4/6 為100 腳TQFP 封裝(見圖1.1 和圖1.3的框圖)。C8051F041/3/5/7 為64 腳TQFP 封裝(見圖1.2 和圖1.4 的框圖)。
上傳時間: 2013-10-24
上傳用戶:hwl453472107
在正常操作期間,一次WDT 超時溢出將產生一次器件復位。如果器件處于休眠狀態,一次WDT超時溢出將喚醒器件,使其繼續正常操作(即稱作WDT 喚醒)。對WDTE 設置位清零可以永久性地關閉WDT。后分頻器分配完全是由軟件控制,即它可在程序執行期間隨時更改。在例26-1 中,如果需要的預分頻值不是1:1,就不需要對OPTION_REG 寄存器做初始修改。如果需要的預分頻值是1:1,那么先向OPTION_REG 設置一個非1:1 的臨時預分頻值,在完成其它操作后,在最后修改OPTION_REG 時再設置1:1 的預分頻值。這樣操作,主要是因為無法知道TMR0 預分頻器的當前計數值,而且分頻器更改后,該值將變為WDT 后分頻器的當前計數值,所以必須遵循示例中的代碼順序。如果沒有按照示例中的代碼順序改變OPTION_REG 寄存器,那么無法準確得知WDT 復位前的時間。
上傳時間: 2013-11-02
上傳用戶:674635689
Verilog_HDL的基本語法詳解(夏宇聞版):Verilog HDL是一種用于數字邏輯電路設計的語言。用Verilog HDL描述的電路設計就是該電路的Verilog HDL模型。Verilog HDL既是一種行為描述的語言也是一種結構描述的語言。這也就是說,既可以用電路的功能描述也可以用元器件和它們之間的連接來建立所設計電路的Verilog HDL模型。Verilog模型可以是實際電路的不同級別的抽象。這些抽象的級別和它們對應的模型類型共有以下五種: 系統級(system):用高級語言結構實現設計模塊的外部性能的模型。 算法級(algorithm):用高級語言結構實現設計算法的模型。 RTL級(Register Transfer Level):描述數據在寄存器之間流動和如何處理這些數據的模型。 門級(gate-level):描述邏輯門以及邏輯門之間的連接的模型。 開關級(switch-level):描述器件中三極管和儲存節點以及它們之間連接的模型。 一個復雜電路系統的完整Verilog HDL模型是由若干個Verilog HDL模塊構成的,每一個模塊又可以由若干個子模塊構成。其中有些模塊需要綜合成具體電路,而有些模塊只是與用戶所設計的模塊交互的現存電路或激勵信號源。利用Verilog HDL語言結構所提供的這種功能就可以構造一個模塊間的清晰層次結構來描述極其復雜的大型設計,并對所作設計的邏輯電路進行嚴格的驗證。 Verilog HDL行為描述語言作為一種結構化和過程性的語言,其語法結構非常適合于算法級和RTL級的模型設計。這種行為描述語言具有以下功能: · 可描述順序執行或并行執行的程序結構。 · 用延遲表達式或事件表達式來明確地控制過程的啟動時間。 · 通過命名的事件來觸發其它過程里的激活行為或停止行為。 · 提供了條件、if-else、case、循環程序結構。 · 提供了可帶參數且非零延續時間的任務(task)程序結構。 · 提供了可定義新的操作符的函數結構(function)。 · 提供了用于建立表達式的算術運算符、邏輯運算符、位運算符。 · Verilog HDL語言作為一種結構化的語言也非常適合于門級和開關級的模型設計。因其結構化的特點又使它具有以下功能: - 提供了完整的一套組合型原語(primitive); - 提供了雙向通路和電阻器件的原語; - 可建立MOS器件的電荷分享和電荷衰減動態模型。 Verilog HDL的構造性語句可以精確地建立信號的模型。這是因為在Verilog HDL中,提供了延遲和輸出強度的原語來建立精確程度很高的信號模型。信號值可以有不同的的強度,可以通過設定寬范圍的模糊值來降低不確定條件的影響。 Verilog HDL作為一種高級的硬件描述編程語言,有著類似C語言的風格。其中有許多語句如:if語句、case語句等和C語言中的對應語句十分相似。如果讀者已經掌握C語言編程的基礎,那么學習Verilog HDL并不困難,我們只要對Verilog HDL某些語句的特殊方面著重理解,并加強上機練習就能很好地掌握它,利用它的強大功能來設計復雜的數字邏輯電路。下面我們將對Verilog HDL中的基本語法逐一加以介紹。
標簽: Verilog_HDL
上傳時間: 2013-11-23
上傳用戶:青春給了作業95
針對在51單片機上移植實時操作系統μC/OS-II的目的,以μC/OS-II工作原理為基礎,結合51單片機堆棧空間少的情況,采用改變堆棧指針到不同任務寄存器組的方法,通過改變堆棧指針的實驗,得出在堆棧空間較少的情況下,也能夠實現μC/OS-II在51單片機上的運行的結論。
上傳時間: 2013-11-13
上傳用戶:hz07104032
簡單電子琴的51單片機程序 #include<reg51.h> //包含51單片機寄存器定義的頭文件 sbit P14=P1^4; //將P14位定義為P1.4引腳 sbit P15=P1^5; //將P15位定義為P1.5引腳 sbit P16=P1^6; //將P16位定義為P1.6引腳 sbit P17=P1^7; //將P17位定義為P1.7引腳 unsigned char keyval; //定義變量儲存按鍵值 sbit sound=P2^0; //將sound定義為P2.0 unsigned int C; //全局變量,儲存定時器的定時常數 unsigned int f; //全局變量,儲存音階的頻率 //以下是C調低音的音頻宏定義 #define l_dao 262 //將“l_dao”宏定義為低音“1”的頻率262Hz #define l_re 294 //將“l_re” 宏定義為低音“2”的頻率294Hz #define l_mi 330 //將“l_mi” 宏定義為低音“3”的頻率330Hz #define l_fa 349 //將“l_fa” 宏定義為低音“4”的頻率349Hz #define l_sao 392 //將“l_sao”宏定義為低音“5”的頻率392Hz #define l_la 440 //將“l_la” 宏定義為低音“6”的頻率440Hz #define l_xi 494 //將“l_xi” 宏定義為低音“7”的頻率494Hz //以下是C調中音的音頻宏定義 #define dao 523 //將“dao”宏定義為低音“1”的頻率Hz #define re 587 //將“re” 宏定義為低音“2”的頻率Hz #define mi 659 //將“mi” 宏定義為低音“3”的頻率Hz #define fa 698 //將“fa” 宏定義為低音“4”的頻率Hz #define sao 784 //將“sao”宏定義為低音“5”的頻率Hz #define la 880 //將“la” 宏定義為低音“6”的頻率Hz #define xi 988 //將“xi” 宏定義為低音“7”的頻率Hz
上傳時間: 2013-11-09
上傳用戶:tian126vip
//------------------------------------------------------------------------------------//此程序為ADC轉換程序,可以選擇向ADC0BUSY寫1或用定時器0,1,2,3作為ADC的啟動信號。////------------------------------------------------------------------------------------//頭文件定義//------------------------------------------------------------------------------------//#include <c8051f330.h> #include <stdio.h> //-----------------------------------------------------------------------------// 定義16位特殊功能寄存器//----------------------------------------------------------------------------- sfr16 ADC0 = 0xbd; sfr16 TMR0RL = 0xca; sfr16 TMR1RL = 0xca; sfr16 TMR2RL =0xca; sfr16 TMR3RL =0xca; sfr16 TMR0 = 0xCC; sfr16 TMR1 = 0xCC; sfr16 TMR2 = 0xcc; sfr16 TMR3 = 0xcc; //-----------------------------------------------------------------------------// 全局變量定義//-----------------------------------------------------------------------------char i;int result; //-----------------------------------------------------------------------------//定義常量//-----------------------------------------------------------------------------#define SYSCLK 49000000 #define SAMPLE_RATE 50000 //------------------------------------------------------------------------------------// 定義函數//------------------------------------------------------------------------------------void SYSCLK_Init (void);void PORT_Init (void);void Timer0_Init (int counts);void Timer1_Init (int counts);void Timer2_Init (int counts);void Timer3_Init (int counts);void ADC0_Init(void);void ADC0_ISR (void);void ADC0_CNVS_ADC0h(void);//------------------------------------------------------------------------------------// 主程序//------------------------------------------------------------------------------------ void main (void) { int ADCRESULT[50] ; int k; PCA0MD &= ~0x40; // 禁止看門狗 SYSCLK_Init (); PORT_Init (); Timer0_Init (SYSCLK/SAMPLE_RATE); //Timer1_Init (SYSCLK/SAMPLE_RATE); //選擇相應的啟動方式 //Timer2_Init (SYSCLK/SAMPLE_RATE); //Timer3_Init (SYSCLK/SAMPLE_RATE); ADC0_Init(); EA=1; while(1) { //ADC0_CNVS_ADC0h(); k=ADC0; ADCRESULT[i]=result; //此處設斷點,觀察ADCRESULT的結果 } }
上傳時間: 2013-10-13
上傳用戶:SimonQQ
Verilog_HDL的基本語法詳解(夏宇聞版):Verilog HDL是一種用于數字邏輯電路設計的語言。用Verilog HDL描述的電路設計就是該電路的Verilog HDL模型。Verilog HDL既是一種行為描述的語言也是一種結構描述的語言。這也就是說,既可以用電路的功能描述也可以用元器件和它們之間的連接來建立所設計電路的Verilog HDL模型。Verilog模型可以是實際電路的不同級別的抽象。這些抽象的級別和它們對應的模型類型共有以下五種: 系統級(system):用高級語言結構實現設計模塊的外部性能的模型。 算法級(algorithm):用高級語言結構實現設計算法的模型。 RTL級(Register Transfer Level):描述數據在寄存器之間流動和如何處理這些數據的模型。 門級(gate-level):描述邏輯門以及邏輯門之間的連接的模型。 開關級(switch-level):描述器件中三極管和儲存節點以及它們之間連接的模型。 一個復雜電路系統的完整Verilog HDL模型是由若干個Verilog HDL模塊構成的,每一個模塊又可以由若干個子模塊構成。其中有些模塊需要綜合成具體電路,而有些模塊只是與用戶所設計的模塊交互的現存電路或激勵信號源。利用Verilog HDL語言結構所提供的這種功能就可以構造一個模塊間的清晰層次結構來描述極其復雜的大型設計,并對所作設計的邏輯電路進行嚴格的驗證。 Verilog HDL行為描述語言作為一種結構化和過程性的語言,其語法結構非常適合于算法級和RTL級的模型設計。這種行為描述語言具有以下功能: · 可描述順序執行或并行執行的程序結構。 · 用延遲表達式或事件表達式來明確地控制過程的啟動時間。 · 通過命名的事件來觸發其它過程里的激活行為或停止行為。 · 提供了條件、if-else、case、循環程序結構。 · 提供了可帶參數且非零延續時間的任務(task)程序結構。 · 提供了可定義新的操作符的函數結構(function)。 · 提供了用于建立表達式的算術運算符、邏輯運算符、位運算符。 · Verilog HDL語言作為一種結構化的語言也非常適合于門級和開關級的模型設計。因其結構化的特點又使它具有以下功能: - 提供了完整的一套組合型原語(primitive); - 提供了雙向通路和電阻器件的原語; - 可建立MOS器件的電荷分享和電荷衰減動態模型。 Verilog HDL的構造性語句可以精確地建立信號的模型。這是因為在Verilog HDL中,提供了延遲和輸出強度的原語來建立精確程度很高的信號模型。信號值可以有不同的的強度,可以通過設定寬范圍的模糊值來降低不確定條件的影響。 Verilog HDL作為一種高級的硬件描述編程語言,有著類似C語言的風格。其中有許多語句如:if語句、case語句等和C語言中的對應語句十分相似。如果讀者已經掌握C語言編程的基礎,那么學習Verilog HDL并不困難,我們只要對Verilog HDL某些語句的特殊方面著重理解,并加強上機練習就能很好地掌握它,利用它的強大功能來設計復雜的數字邏輯電路。下面我們將對Verilog HDL中的基本語法逐一加以介紹。
標簽: Verilog_HDL
上傳時間: 2014-12-04
上傳用戶:cppersonal
HM701NEP(S3C44B0X)基本啟動代碼,在此基礎上可以做各種實驗,包括個6文件,44BINIT.S 匯編代碼,系統上電、復位及異常處理的入口點。 Memcfg.s 匯編代碼,外部存儲空間配置 OPTION.S 匯編代碼,一些匯編宏定義:RAM的起始地址,中斷入口表地址、RAM類型、系統主頻、PLL控制字等 44B.H S3C44B0X的寄存器地址宏定義 OPTION.h 供C程序使用的一些反映系統工作方式的基本宏定義 Def.h 一些數據類型的縮寫
上傳時間: 2015-03-12
上傳用戶:來茴
直線、圓等圖形函數的匯編語言實現 本例所用的繪圖函數均采用堆棧的方法傳遞參數,可以和C語言接口。畫點的函數采用直接寫顯存的方法。為了直接由CPU數據確定像素顏色,而不使用位屏蔽寄存器或置位/重置寄存器,采用了VGA的寫模式2方式。直線和圓的算法均采用Bresenham算法實現,其實現過程及堆棧狀態均有較詳細的說明。最后,將繪圖函數用宏封裝了起來,便于主程序中調用。當然,主程序中也可直接將參數壓入堆棧。其實在較高版本的編譯程序中,可以用PROTO偽指令定義函數原型,再用INVOKE偽指令調用。
上傳時間: 2013-12-20
上傳用戶:hgy9473
代碼閱讀器,可以閱讀c,c++的代碼,類似于編輯器,對c/c++的關鍵字可以給與提示,又不完善的 請多指教
上傳時間: 2015-04-23
上傳用戶:playboys0