亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

ole,word,自動生成

  • 基于模糊PID算法的電阻爐溫度控制系統設計

    電加熱爐是典型工業過程控制對象,其溫度控制具有升溫單向性,大慣性,純滯后,時變性等特點,很難用數學方法建立精確的模型和確定參數。而PID控制因其成熟,容易實現,并具有可消除穩態誤差的優點,在大多數情況下可以滿足系統性能要求,但其性能取決于參數的整定情況。且快速性和超調量之間存在矛盾,使其不一定滿足快速升溫、超調小的技術要求。模糊控制在快速性和保持較小的超調量方面有著自身的優勢,但其理論并不完善,算法復雜,控制過程會存在穩態誤差。 將模糊控制算法引入傳統的加熱爐控制系統構成智能模糊控制系統,利用模糊控制規則自適應在線修改PID參數,構成模糊自整定:PID控制系統,借此提高其控制效果。 基于PID控制算法,以ADuC845單片機為主體,構成一個能處理較復雜數據和控制功能的智能控制器,使其既可作為獨立的單片機控制系統,又可與微機配合構成兩級控制系統。該控制器控制精度高,具有較高的靈活性和可靠性。 2 溫度控制系統硬件設計 該系統設計的硬件設計主要由單片機主控、前向通道、后向通道、人機接口和接口擴展等模塊組成,如圖l所示。由圖1可見,以內含C52兼容單片機的ADuC845為控制核心.配有640 KB的非易失RAM數據存儲器、外擴鍵盤輸人、320x240點陣的圖形液晶顯示器進行漢字、圖形、曲線和數據顯示,超溫報警裝置等外圍電路;預留微型打印機接口,可以現場打印輸出結果;預留RS232接口,能和PC機聯機,將現場檢測的數據傳輸至PC機來進一步處理、顯示、打印和存檔。

    標簽: PID 模糊 算法 電阻爐

    上傳時間: 2013-10-11

    上傳用戶:vodssv

  • at91rm9200啟動過程教程

    at91rm9200啟動過程教程 系統上電,檢測BMS,選擇系統的啟動方式,如果BMS為高電平,則系統從片內ROM啟動。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個地址處都可以訪問到ROM。由于9200的ROM中固化了一個BOOTLOAER程序。所以PC從0X0處開始執行這個BOOTLOAER(準確的說應該是一級BOOTLOADER)。這個BOOTLOER依次完成以下步驟: 1、PLL SETUP,設置PLLB產生48M時鐘頻率提供給USB DEVICE。同時DEBUG USART也被初始化為48M的時鐘頻率; 2、相應模式下的堆棧設置; 3、檢測主時鐘源(Main oscillator); 4、中斷控制器(AIC)的設置; 5、C 變量的初始化; 6、跳到主函數。 完成以上步驟后,我們可以認為BOOT過程結束,接下來的就是LOADER的過程,或者也可以認為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設備的開始地址處連續的存放的32個字節,也就是8條指令必須是跳轉指令或者裝載PC的指令,其實這樣規定就是把這8條指令當作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關于如何計算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當BOOT程序完成了把合法的映像搬到SRAM的任務以后,接下來就進行存儲器的REMAP,經過REMAP之后,SRAM從映設前的0X200000地址處被映設到了0X0地址并且程序從0X0處開始執行。而ROM這時只能在0X100000這個地址處看到了。至此9200就算完成了一種形式的啟動過程。如果BOOT程序在以上所列的幾種存儲設備中找到合法的映像,則自動初始化DEBUG USART口和USB DEVICE口以準備從外部載入映像。對DEBUG口的初始化包括設置參數115200 8 N 1以及運行XMODEM協議。對USB DEVICE進行初始化以及運行DFU協議。現在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設然后執行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內的ROM啟動的一個過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動,這時片外的FLASH的起始地址就是0X0了,接下來的過程和片內啟動的過程是一樣的,只不過這時就需要自己寫啟動代碼了,至于怎么寫,大致的內容和ROM的BOOT差不多,不同的硬件設計可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設計的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內啟動可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個開放源代碼的軟件,用戶可以自由下載并根據自己的應用配置。總的說來,筆者以為AT91RM9200的啟動過程比較簡單,ATMEL的服務也不錯,不但提供了片內啟動的功能,還提供了UBOOT可供下載。筆者寫了一個BOOTLODER從片外的FLASHA啟動,效果還可以。 uboot結構與使用uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設的驅動,是一個功能強大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動uboot,還有兩個boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網站下載。 我們知道,當9200系統上電后,如果bms為高電平,則系統從片內rom啟動,這時rom中固化的boot程序初始化了debug口并向其發送'c',這時我們打開超級終端會看到ccccc...。這說明系統已經啟動,同時xmodem協議已經啟動,用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內的sram中。這個loder完成的功能主要是初始化時鐘,sdram和xmodem協議,為下載和啟動uboot做準備。當下載了loader.bin后,超級終端會繼續打印:ccccc....。這時我們就可以下在uboot了。uboot將被下載到sdram中的一個地址后并把pc指針調到此處開始執行uboot。接著我們就可以在終端上看到uboot的shell啟動了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內存、flash、網絡、系統啟動等一些命令。 如果系統上電時bms為低電平,則系統從片外的flash啟動。為了從片外的flash啟動uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動后首先執行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內rom啟動uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經啟動了uboot,可以這樣操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系統復位,就可以看到系統先啟動boot,然后解壓縮uboot.gz,然后啟動uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯。 怎么編譯這三個源碼包呢,首先要建立一個arm的交叉編譯環境,關于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個,有什么區別嗎?首先有區別,boot主要完成從flash中啟動uboot的功能,他要對uboot的壓縮文件進行解壓,除此之外,他和loader并無大的區別,你可以把boot理解為在loader的基礎上加入了解壓縮.gz的功能而已。所以這兩個并無多大的本質不同,只是他們的使命不同而已。 特別說名的是這三個軟件包都是開放源碼的,所以用戶可以根據自己的系統的情況修改和配置以及裁減,打造屬于自己系統的bootloder。

    標簽: 9200 at 91 rm

    上傳時間: 2013-10-27

    上傳用戶:wsf950131

  • Keil C51使用詳解

    Keil C51使用詳解Keil C51 是美國Keil Software 公司出品的51 系列兼容單片機C 語言軟件開發系統,與匯編相比,C 語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。用過匯編語言后再使用C 來開發,體會更加深刻。Keil C51 軟件提供豐富的庫函數和功能強大的集成開發調試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數語句生成的匯編代碼很緊湊,容易理解。在開發大型軟件時更能體現高級語言的優勢。下面詳細介紹 Keil C51 開發系統各部分功能和使用。第二節 Keil C51 單片機軟件開發系統的整體結構C51 工具包的整體結構,如圖(1)所示,其中uVision 與Ishell 分別是C51 forWindows 和for Dos 的集成開發環境(IDE),可以完成編輯、編譯、連接、調試、仿真等整個開發流程。開發人員可用IDE 本身或其它編輯器編輯C 或匯編源文件。然后分別由C51 及A51 編譯器編譯生成目標文件(.OBJ)。目標文件可由LIB51 創建生成庫文件,也可以與庫文件一起經L51 連接定位生成絕對目標文件(.ABS)。ABS 文件由OH51 轉換成標準的Hex 文件,以供調試器dScope51 或tScope51 使用進行源代碼級調試,也可由仿真器使用直接對目標板進行調試,也可以直接寫入程序存貯器如EPROM 中。圖(1) C51 工具包整體結構圖第三節 Keil C51 工具包的安裝81. C51 for Dos在 Windows 下直接運行軟件包中DOS\C51DOS.exe 然后選擇安裝目錄即可。完畢后欲使系統正常工作須進行以下操作(設C:\C51 為安裝目錄):修改 Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后運行Autoexec.bat2. C51 for Windows 的安裝及注意事項:在 Windows 下運行軟件包中WIN\Setup.exe,最好選擇安裝目錄與C51 for Dos相同,這樣設置最簡單(設安裝于C:\C51 目錄下)。然后將軟件包中crack 目錄中的文件拷入C:\C51\Bin 目錄下。第四節 Keil C51 工具包各部分功能及使用簡介1. C51 與A51(1) C51C51 是C 語言編譯器,其使用方法為:C51 sourcefile[編譯控制指令]或者 C51 @ commandfile其中 sourcefile 為C 源文件(.C)。大量的編譯控制指令完成C51 編譯器的全部功能。包控C51 輸出文件C.LST,.OBJ,.I 和.SRC 文件的控制。源文件(.C)的控制等,詳見第五部分的具體介紹。而 Commandfile 為一個連接控制文件其內容包括:.C 源文件及各編譯控制指令,它沒有固定的名字,開發人員可根據自己的習慣指定,它適于用控制指令較多的場合。(2) A51A51 是匯編語言編譯器,使用方法為:9A51 sourcefile[編譯控制指令]或 A51 @ commandfile其中sourcefile 為匯編源文件(.asm或.a51),而編譯控制指令的使用與其它匯編如ASM語言類似,可參考其他匯編語言材料。Commandfile 同C51 中的Commandfile 類似,它使A51 使用和修改方便。2. L51 和BL51(1) L51L51 是Keil C51 軟件包提供的連接/定位器,其功能是將編譯生成的OBJ 文件與庫文件連接定位生成絕對目標文件(.ABS),其使用方法為:L51 目標文件列表[庫文件列表] [to outputfile] [連接控制指令]或 L51 @Commandfile源程序的多個模塊分別經 C51 與A51 編譯后生成多個OBJ 文件,連接時,這些文件全列于目標文件列表中,作為輸入文件,如果還需與庫文件(.LiB)相連接,則庫文件也必須列在其后。outputfile 為輸文件名,缺少時為第一模塊名,后綴為.ABS。連接控制指令提供了連接定位時的所有控制功能。Commandfile 為連接控制文件,其具體內容是包括了目標文件列表,庫文件列表及輸出文件、連接控制命令,以取代第一種繁瑣的格式,由于目標模塊庫文件大多不止1 個,因而第2 種方法較多見,這個文件名字也可由使用者隨意指定。(2) Bl51BL51 也是C51 軟件包的連接/定位器,其具有L51 的所有功能,此外它還具有以下3 點特別之處:a. 可以連接定位大于64kBytes 的程序。b. 具有代碼域及域切換功能(CodeBanking & Bank Switching)c. 可用于RTX51 操作系統RTX51 是一個實時多任務操作系統,它改變了傳統的編程模式,甚至不必用main( )函數,單片機系統軟件向RTOS 發展是一種趨勢,這種趨勢對于186 和38610及68K 系列CPU 更為明顯和必須,對8051 因CPU 較為簡單,程序結構等都不太復雜,RTX51 作用顯得不太突出,其專業版軟件PK51 軟件包甚至不包括RTX51Full,而只有一個RTX51TINY 版本的RTOS。RTX51 TINY 適用于無外部RAM 的單片機系統,因而可用面很窄,在本文中不作介紹。Bank switching 技術因使用很少也不作介紹。3. DScope51,Tscope51 及Monitor51(1) dScope51dScope51 是一個源級調試器和模擬器,它可以調試由C51 編譯器、A51 匯編器、PL/M-51 編譯器及ASM-51 匯編器產生的程序。它不需目標板(for windows 也可通過mon51 接目標板),只能進行軟件模擬,但其功能強大,可模擬CPU 及其外圍器件,如內部串口,外部I/O 及定時器等,能對嵌入式軟件功能進行有效測試。

    標簽: Keil C51 使用詳解

    上傳時間: 2013-11-01

    上傳用戶:zhouxuepeng1

  • 開放式匯編器系統的設計

    匯編器在微處理器的驗證和應用中舉足輕重,如何設計通用的匯編器一直是研究的熱點之一。本文提出了一種開放式的匯編器系統設計思想,在匯編語言與機器語言間插入中間代碼CMDL(code mapping description language)語言,打破匯編語言與機器語言的直接映射關系,由此建立起一套描述匯編語言與機器語言的開放式映射體系。基于此開放式映射體系開發了一套匯編器系統,具有較高層次上的通用性和可移植性。【關鍵詞】指令集,CMDL,匯編器,開放式 Design of Retargetable Assembler System Liu Ling Feng Wen Nan Wang Ying Chun Jiang An Ping Ji Li Jiu IME of Peking University, 100871【摘要】An assembler plays a very important role in the field of microprocessor verifications and applications, thus how to build a retargetable assembler system has been a hotspot in this field for long time. This paper presents a new method about the retargetable assembler system design.It provides a kind of language CMDL, code mapping description language. During the process of assembling, assembler languages are firstly translated to CMDL, and then mapped to the machine codes. In an other word, CMDL is inserted between assembler languages and machine codes during the translation procedure. As a medium code, CMDL has a lot of features, such as high extraction, strong descript capabilities. It can describe almost all attributes of assembler languages. By breaking the direct mapping relationship between assembler languages and machine codes, the complexities of machine codes are hided to the users, therefore, the new retargetable assembler system has higher retargetable level by converting the mapping from assembler languages and machine codes to assembler languages and CMDL, and implementationof it becomes easier. Based on the new mapping system structure, a retargetable assemblersystem is developed. It proved the whole system has good retargetability and implantability.【關鍵詞】instruction set, symbol table, assembler, lexical analysis, retargetability

    標簽: 開放式 匯編器

    上傳時間: 2013-10-10

    上傳用戶:meiguiweishi

  • 利用SPMC75本身的Flash做數據備份

    利用SPMC75本身的Flash做數據備份:SPMC75F2413A 32k字的內嵌Flash(embedded Flash)分為兩區:信息區和通用區,在同一時間只能訪問其中的一區。信息區包含64個字,尋址空間為0x8000 ~ 0x803F。地址0x8000為系統選項寄存器P_System_Option。其它地址空間可由用戶自定義重要信息比如:版本控制,日期,版權名稱,項目名稱等等。信息區的內容只有在仿真或燒錄的狀態下才能改變。32k字Flash被劃分為16個頁,每頁2K字,每頁可分為8幀,這樣32K的Flash就可以分成128個幀。只有位于00F000 ~00F7FF區域的頁面在自由運行模式下可以設置為只讀或可讀可寫,其它頁面均為只讀.也就說片內FLASH數據備份區為是0xF000~0xF7FF,備份區為Bank14,最多存儲的數據為2K字。SPMC75F2413A的32K字的內嵌式閃存結構入下圖2-1,圖2-2。

    標簽: Flash SPMC 75 數據備份

    上傳時間: 2013-11-08

    上傳用戶:6546544

  • 單片機程序遠程升級的設計

    為了解決一些遠程單片機設備不方便升級內部程序的困難,本文提出了利用單片機系統中現有的數據獲取方式來升級單片機內部程序的方法。本文利用凌陽16 位單片機可以自讀寫片內程序空間的特性,通過在片內駐留BootLoader 程序的方式實現了凌陽16 位單片機片內程序的在需要時的遠程升級。單片機獲取數據的方式可以有很多,本文選取通過串口獲取數據進行程序升級為例,并選取常見的凌陽單片機SPCE061A 為例介紹了此方法的設計思路以及實現過程。單片機的應用非常廣泛,在某些情況下,單片機內部程序的升級在所難免,但是往往需要對單片機產品進行收回才能實現,這樣在一些遠程設備的程序升級問題上就顯得非常不方便。但是有些遠程設備本身留有遠程通訊的方式:例如某些遠程數據傳輸模塊,為了把數據上報總會留有通訊的接口,比如422、485 甚至GPRS 或者局域網接口;又或者某些車載定位設備,為了和監控中心通訊會留有GSM、CDMA 或者GPRS 等通訊方式。在這種情況下就可以利用其現有的通訊方式對其內部單片機程序進行升級而不需要收回產品。本文的主要內容就是來研究這種遠程升級單片機程序的方法。由于近年來凌陽科技的單片機,尤其是 16 位單片機,得到了越來越多的推廣,其應用領域越來越廣泛。本文選取一種常見的凌陽科技的16 位單片機SPCE061A 為例,來介紹單片機程序遠程升級的方法。SPCE061A 里內嵌了32K 字的閃存(FLASH),即可以作為程序存儲空間又可以存儲數據,并且有自讀寫任意閃存地址的能力,本文利用這一功能,提出了通過在單片機中駐留BootLoader 程序的方法,來實現單片機程序的遠程升級。遠程升級的實現,需要單片機自身的響應同時還需要遠程服務器提供升級所需的代碼。下文將通過這兩個方面來分別介紹。

    標簽: 單片機程序 遠程升級

    上傳時間: 2013-10-31

    上傳用戶:yxgi5

  • 同地彈現象的分析和講解

    地彈的形成:芯片內部的地和芯片外的PCB地平面之間不可避免的會有一個小電感。這個小電感正是地彈產生的根源,同時,地彈又是與芯片的負載情況密切相關的。下面結合圖介紹一下地彈現象的形成。 簡單的構造如上圖的一個小“場景”,芯片A為輸出芯片,芯片B為接收芯片,輸出端和輸入端很近。輸出芯片內部的CMOS等輸入單元簡單的等效為一個單刀雙擲開關,RH和RL分別為高電平輸出阻抗和低電平輸出阻抗,均設為20歐。GNDA為芯片A內部的地。GNDPCB為芯片外PCB地平面。由于芯片內部的地要通過芯片內的引線和管腳才能接到GNDPCB,所以就會引入一個小電感LG,假設這個值為1nH。CR為接收端管腳電容,這個值取6pF。這個信號的頻率取200MHz。雖然這個LG和CR都是很小的值,不過,通過后面的計算我們可以看到它們對信號的影響。先假設A芯片只有一個輸出腳,現在Q輸出高電平,接收端的CR上積累電荷。當Q輸出變為低電平的時候。CR、RL、LG形成一個放電回路。自諧振周期約為490ps,頻率為2GHz,Q值約為0.0065。使用EWB建一個仿真電路。(很老的一個軟件,很多人已經不懈于使用了。不過我個人比較依賴它,關鍵是建模,模型參數建立正確的話仿真結果還是很可靠的,這個小軟件幫我發現和解決過很多實際模擬電路中遇到的問題。這個軟件比較小,有比較長的歷史,也比較成熟,很容易上手。建議電子初入門的同學還是熟悉一下。)因為只關注下降沿,所以簡單的構建下面一個電路。起初輸出高電平,10納秒后輸出低電平。為方便起見,高電平輸出設為3.3V,低電平是0V。(實際200M以上芯片IO電壓會比較低,多采用1.5-2.5V。)

    標簽:

    上傳時間: 2013-10-17

    上傳用戶:zhishenglu

  • SOC與單片機應用技術的發展

    SOC與單片機應用技術的發展:本文討論SOC和單片機應用技術的發展;介紹SOC的基本技術特點和應用概念;分析作為IP家庭重要成員的單片機在SOC應用設計中的特點。通過討論指出以嵌入技術為基礎,單片機再次成為現代電子應用技術的核心之一,為SOC應用技術提供了堅實的基礎。 關鍵字:SOC;單片機;嵌入式系統 引言 現場電子技術應用中包含了硬件(HW)、硬件加軟件(HW+SW)、固件(FW)3個層次。這3個層次也可以說是現代電子技術應用的3人發展階段。自1997年以來,電子技術應用又增加了一個新的層次??片上系統(SOC)層次。SOC技術概念和應用技術層次的出現,標志著現代電子技術應用進入了SOC階段。 從各個發展階段看,自HW+SW階段開始,電子技術應用就與單片機緊密地聯系在一起。在FW階段,作為固件系統的重要核心技術,單片機又以嵌入式技術為基礎,再次成為現代電子應用技術的核心技術之一,并為SOC應用技術提供了緊實的基礎。 SOC為各種應用提供了一個新的實現技術。這種新的電子系統實現技術促使工業界在近3年中發生了巨大的變化,為信息技術的應用提供堅實的基礎,因此,完全可以稱之為SOC革命。同時,SOC也為單片機技術提供了更廣闊的應用領域,使單片機應用技術發生了革命性的變化。

    標簽: SOC 單片機 應用技術 發展

    上傳時間: 2013-10-31

    上傳用戶:qb1993225

  • 波形發生器,含原理圖+電路圖+源程序

    含原理圖+電路圖+程序的波形發生器:在工作中,我們常常會用到波形發生器,它是使用頻度很高的電子儀器。現在的波形發生器都采用單片機來構成。單片機波形發生器是以單片機核心,配相應的外圍電路和功能軟件,能實現各種波形發生的應用系統,它由硬件部分和軟件部分組成,硬件是系統的基礎,軟件則是在硬件的基礎上,對其合理的調配和使用,從而完成波形發生的任務。 波形發生器的技術指標:(1) 波形類型:方型、正弦波、三角波、鋸齒波;(2) 幅值電壓:1V、2V、3V、4V、5V;(3) 頻率值:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;(4) 輸出極性:雙極性操作設計1、 機器通電后,系統進行初始化,LED在面板上顯示6個0,表示系統處于初始狀態,等待用戶輸入設置命令,此時,無任何波形信號輸出。2、 用戶按下“F”、“V”、“W”,可以分別進入頻率,幅值波形設置,使系統進入設置狀態,相應的數碼管顯示“一”,此時,按其它鍵,無效;3、 在進入某一設置狀態后,輸入0~9等數字鍵,(數字鍵僅在設置狀態時,有效)為欲輸出的波形設置相應參數,LED將參數顯示在面板上;4、 如果在設置中,要改變已設定的參數,可按下“CL”鍵,清除所有已設定參數,系統恢復初始狀態,LED顯示6個0,等待重新輸入命令;5、 當必要的參數設定完畢后,所有參數顯示于LED上,用戶按下“EN”鍵,系統會將各波形參數傳遞到波形產生模塊中,以便控制波形發生,實現不同頻率,不同電壓幅值,不同類型波形的輸出;6、 用戶按下“EN”鍵后,波形發生器開始輸出滿足參數的波形信號,面板上相應類型的運行指示燈閃爍,表示波形正在輸出,LED顯示波形類型編號,頻率值、電壓幅值等波形參數;7、 波形發生器在輸出信號時,按下任意一個鍵,就停止波形信號輸出,等待重新設置參數,設置過程如上所述,如果不改變參數,可按下“EN”鍵,繼續輸出原波形信號;8、 要停止波形發生器的使用,可按下復位按鈕,將系統復位,然后關閉電源。硬件組成部分通過綜合比較,決定選用獲得廣泛應用,性能價格高的常用芯片來構成硬件電路。單片機采用MCS-51系列的89C51(一塊),74LS244和74LS373(各一塊),反相驅動器 ULN2803A(一塊),運算放大器 LM324(一塊)  波形發生器的硬件電路由單片機、鍵盤顯示器接口電路、波形轉換(D/ A)電路和電源線路等四部分構成。1.單片機電路功能:形成掃描碼,鍵值識別,鍵功能處理,完成參數設置;形成顯示段碼,向LED顯示接口電路輸出;產生定時中斷;形成波形的數字編碼,并輸出到D/A接口電路;如電路原理圖所示: 89C51的P0口和P2口作為擴展I/O口,與8255、0832、74LS373相連接,可尋址片外的寄存器。單片機尋址外設,采用存儲器映像方式,外部接口芯片與內部存儲器統一編址,89C51提供16根地址線P0(分時復用)和P2,P2口提供高8位地址線,P0口提供低8位地址線。P0口同時還要負責與8255,0832的數據傳遞。P2.7是8255的片選信號,P2.6是0832(1)的片選,P2.5是0832(2)的片選,低電平有效,P0.0、P0.1經過74LS373鎖存后,送到8255的A1、A2作,片內A口,B口,C口,控制口等寄存器的字選。89C51的P1口的低4位連接4只發光三極管,作為波形類型指示燈,表示正在輸出的波形是什么類型。單片機89C51內部有兩個定時器/計數器,在波形發生器中使用T0作為中斷源。不同的頻率值對應不同的定時初值,定時器的溢出信號作為中斷請求。控制定時器中斷的特殊功能寄存器設置如下:定時控制寄存器TCON=(00010000)工作方式選擇寄存器(TMOD)=(00000000)中斷允許控制寄存器(IE)=(10000010)2、鍵盤顯示器接口電路功能:驅動6位數碼管動態顯示;           提供響應界面;           掃面鍵盤;           提供輸入按鍵。由并口芯片8255,鎖存器74LS273,74LS244,反向驅動器ULN2803A,6位共陰極數碼管(LED)和4×4行列式鍵盤組成。8255的C口作為鍵盤的I/O接口,C口的低4位輸出到掃描碼,高4位作為輸入行狀態,按鍵的分布如圖所示。8255的A口作為LED段碼輸出口,與74LS244相連接,B口作為LED的位選信號輸出口,與ULN2803A相連接。8255內部的4個寄存器地址分配如下:控制口:7FFFH , A口:7FFFCH , B口:7FFDH ,  C口:7FFEH    3、D/A電路功能:將波形樣值的數字編碼轉換成模擬值;完成單極性向雙極性的波形輸出;構成由兩片0832和一塊LM324運放組成。0832(1)是參考電壓提供者,單片機向0832(1)內的鎖存器送數字編碼,不同的編碼會產生不同的輸出值,在本發生器中,可輸出1V、2V、3V、4V、5V等五個模擬值,這些值作為0832(2)的參考電壓,使0832(2)輸出波形信號時,其幅度是可調的。0832(2)用于產生各種波形信號,單片機在波形產生程序的控制下,生成波形樣值編碼,并送到0832(2)中的鎖存器,經過D/A轉換,得到波形的模擬樣值點,假如N個點就構成波形的一個周期,那么0832(2)輸出N個樣值點后,樣值點形成運動軌跡,就是波形信號的一個周期。重復輸出N個點后,由此成第二個周期,第三個周期……。這樣0832(2)就能連續的輸出周期變化的波形信號。運放A1是直流放大器,運放A2是單極性電壓放大器,運放A3是雙極性驅動放大器,使波形信號能帶得起負載。地址分配:0832(1):DFFFH ,0832(2):BFFFH4、電源電路:功能:為波形發生器提供直流能量;構成由變壓器、整流硅堆,穩壓塊7805組成。220V的交流電,經過開關,保險管(1.5A/250V),到變壓器降壓,由220V降為10V,通過硅堆將交流電變成直流電,對于諧波,用4700μF的電解電容給予濾除。為保證直流電壓穩定,使用7805進行穩壓。最后,+5V電源配送到各用電負載。

    標簽: 波形發生器 原理圖 電路圖 源程序

    上傳時間: 2013-11-08

    上傳用戶:685

  • 8051單片機教程 (word版)

    8051單片機教程:一臺能夠工作的計算機要有這樣幾個部份構成:CPU(進行運算、控制)、RAM(數據存儲)、ROM(程序存儲)、輸入/輸出設備(例如:串行口、并行輸出口等)。在個人計算機上這些部份被分成若干塊芯片,安裝一個稱之為主板的印刷線路板上。而在單片機中,這些部份,全部被做到一塊集成電路芯片中了,所以就稱為單片(單芯片)機,而且有一些單片機中除了上述部份外,還集成了其它部份如A/D,D/A等。 PC中的CPU一塊就要賣幾千塊錢,這么多東西做在一起,還不得買個天價!再說這塊芯片也得非常大了。 不,價格并不高,從幾元人民幣到幾十元人民幣,體積也不大,一般用40腳封裝,當然功能多一些單片機也有引腳比較多的,如68引腳,功能少的只有10多個或20多個引腳,有的甚至只8只引腳。為什么會這樣呢? 功能有強弱,打個比方,市場上面有的組合音響一套才賣幾百塊錢,可是有的一臺功放機就要賣好幾千。另外這種芯片的生產量很大,技術也很成熟,51系列的單片機已經做了十幾年,所以價格就低了。 既然如此,單片機的功能肯定不強,干嗎要學它呢? 話不能這樣說,實際工作中并不是任何需要計算機的場合都要求計算機有很高的性能,一個控制電冰箱溫度的計算機難道要用PIII?應用的關鍵是看是否夠用,是否有很好的性能價格比。所以8051出來十多年,依然沒有被淘汰,還在不斷的發展中。 2、MCS51單片機和8051、8031、89C51等的關系我們平常老是講8051,又有什么8031,現在又有89C51,它們之間究竟是什么關系? MCS51是指由美國INTEL公司(對了,就是大名鼎鼎的INTEL)生產的一系列單片機的總稱,這一系列單片機包括了好些品種,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的產品,該系列其它單片機都是在8051的基礎上進行功能的增、減、改變而來的,所以人們習慣于用8051來稱呼MCS51系列單片機,而8031是前些年在我國最流行的單片機,所以很多場合會看到8031的名稱。INTEL公司將MCS51的核心技術授權給了很多其它公司,所以有很多公司在做以8051為核心的單片機,當然,功能或多或少有些改變,以滿足不同的需求,其中89C51就是這幾年在我國非常流行的單片機,它是由美國ATMEL公司開發生產的。以后我們將用89C51來完成一系列的實驗。

    標簽: 8051 word 單片機教程

    上傳時間: 2013-11-17

    上傳用戶:crazyer

主站蜘蛛池模板: 鄂托克前旗| 河池市| 蛟河市| 浑源县| 离岛区| 从化市| 富源县| 从化市| 武汉市| 满城县| 邵武市| 阜康市| 台中市| 巴彦淖尔市| 湖北省| 金阳县| 会宁县| 赤水市| 延寿县| 奈曼旗| 永年县| 都兰县| 鄂托克旗| 江北区| 大田县| 鄂伦春自治旗| 库车县| 德保县| 锡林郭勒盟| 安陆市| 盐边县| 河源市| 英德市| 贡觉县| 淮阳县| 英德市| 阳曲县| 吴堡县| 屯门区| 宜川县| 青州市|