微型計算機課程設計論文—通用微機發聲程序的匯編設計 本文講述了在微型計算機中利用可編程時間間隔定時器的通用發聲程序設計,重點講述了程序的發聲原理,節拍的產生,按節拍改變的動畫程序原理,并以設計一個簡單的樂曲評分程序為引子,分析程序設計的細節。關鍵字:微機 8253 通用發聲程序 動畫技術 直接寫屏 1. 可編程時間間隔定時器8253在通用個人計算機中,有一個可編程時間間隔定時器8253,它能夠根據程序提供的計數值和工作方式,產生各種形狀和各種頻率的計數/定時脈沖,提供給系統各個部件使用。本設計是利用計算機控制發聲的原理,編寫演奏樂曲的程序。 在8253/54定時器內部有3個獨立工作的計數器:計數器0,計數器1和計數器2,每個計數器都分配有一個斷口地址,分別為40H,41H和42H.8253/54內部還有一個公用的控制寄存器,端地址為43H.端口地址輸入到8253/54的CS,AL,A0端,分別對3個計數器和控制器尋址. 對8353/54編程時,先要設定控制字,以選擇計數器,確定工作方式和計數值的格式.每計數器由三個引腳與外部聯系,見教材第320頁圖9-1.CLK為時鐘輸入端,GATE為門控信號輸入端,OUT為計數/定時信號輸入端.每個計數器中包含一個16位計數寄存器,這個計數器時以倒計數的方式計數的,也就是說,從計數初值逐次減1,直到減為0為止. 8253/54的三個計數器是分別編程的,在對任一個計數器編程時,必須首先講控制字節寫入控制寄存器.控制字的作用是告訴8253/54選擇哪個計數器工作,要求輸出什么樣的脈沖波形.另外,對8253/54的初始化工作還包括,向選定的計數器輸入一個計數初值,因為這個計數值可以是8為的,也可以是16為的,而8253/5的數據總線是8位的,所以要用兩條輸出指令來寫入初值.下面給出8253/54初始化程序段的一個例子,將計數器2設定為方式3,(關于計數器的工作方式參閱教材第325—330頁)計數初值為65536. MOV AL,10110110B ;選擇計數器2,按方式3工作,計數值是二進制格式 OUT 43H,AL ; j將控制字送入控制寄存器 MOV AL,0 ;計數初值為0 OUT 42H,AL ;將計數初值的低字節送入計數器2 OUT 42H,AL ;將計數初值的高字節送入計數器2 在IBM PC中8253/54的三個時鐘端CLK0,CLK1和CLK2的輸入頻率都是1.1931817MHZ. PC機上的大多數I/O都是由主板上的8255(或8255A)可編程序外圍接口芯片(PPI)管理的.關于8255A的結構和工作原理及應用舉例參閱教材第340—373頁.教材第364頁的”PC/XT機中的揚聲器接口電路”一節介紹了揚聲器的驅動原理,并給出了通用發聲程序.本設計正是基于這個原理,通過編程,控制加到揚聲器上的信號的頻率,奏出樂曲的.2.發聲程序的設計下面是能產生頻率為f的通用發聲程序:MOV AL, 10110110B ;8253控制字:通道2,先寫低字節,后寫高字節 ;方式3,二進制計數OUT 43H, AL ;寫入控制字MOV DX, 0012H ;被除數高位MOV AX, 35DEH ;被除數低位 DIV ID ;求計數初值n,結果在AX中OUT 42H, AL ;送出低8位MOV AL, AHOUT 42H,AL ;送出高8位IN AL, 61H ;讀入8255A端口B的內容MOV AH, AL ;保護B口的原狀態OR AL, 03H ;使B口后兩位置1,其余位保留OUT 61H,AL ;接通揚聲器,使它發聲
上傳時間: 2013-10-17
上傳用戶:sunjet
HI-TECH PICC C 的使用說明. 這里我們只講述了PICC C 與標準C 的不同,它不是一本C 語言的教程, 并且我們假定你有C 語言的基礎. 為了對PIC 單片機有更好的支持,PICC 在標準C 的基礎上作了一些擴充: 定義I/O 函數,以便在你的硬件系統中使用<stdio.h>中定義的函數。 用C 語言編寫中斷服務程序 用C 語言編寫I/O 操作程序 C 語言與匯編語言間的接口1-1 與標準C 的不同PICC 只在一處與標準C 不同:函數的重入。因為PIC 單片機的寄存器及堆棧有限,所以PICC 不支持可重入函數。1-2 支持的PIC 芯片PICC 支持很多PIC 單片機,支持PIC 單片機的類型在LIB 目錄下的picinfo.ini文件中有定義。1-3 PICC 包含一些標準庫1-4 PICC 編譯器可以輸出一些格式的目標文件,缺省設置為輸出Bytecraft 的'COD'格式和 Intel 的'HEX'格式。你可以用表1-1 中的命令來指定輸出格式。
上傳時間: 2013-10-10
上傳用戶:781354052
PCF8563 是低功耗的CMOS 實時時鐘日歷芯片.它提供一個可編程時鐘輸出一個中斷輸出和掉電檢測器.所有的地址和數據通過I2C 總線接口串行傳遞最大總線速度為400Kbits/s 每次讀寫數據后內嵌的字地址寄存器會自動產生增量.2 特性 低工作電流典型值為0.25 A VDD=3.0V Tamb=25 時; 世紀標志; 大工作電壓范圍1.0 5.5V; 低休眠電流典型值為0.25 A(VDD=3.0V,Tamb=25 ); 400KHz 的I2C 總線接口VDD=1.8 5.5V 時; 可編程時鐘輸出頻率為32.768KHz 1024Hz 32Hz 1Hz; 報警和定時器; 內部集成的振蕩器電容片內電源復位功能掉電檢測器; I2C 總線從地址讀0A3H 寫0A2H; 開漏中斷引腳
上傳時間: 2013-12-16
上傳用戶:liuchee
8086總線操作:8086微處理器與片外存儲器或I/O接口進行數據傳輸時,經BIU執行8086規定的總線操作。總線周期的組成:8086的基本總線周期為4個時鐘周期,每個時鐘周期間隔稱為一個T狀態。8086的中斷系統:8086微處理器可處理256種中斷。8086對外部硬件中斷請求INTR的響應: 當INTR有一高電平,即有可屏蔽中斷請求。若此時IF=1且當前指令執行完,進入中斷響應周期,處理過程如下:INTA#在兩個總線周期中分別發出有效信號,第二周期中8086讀到中斷類型碼保護現場:標志寄存器入棧,清除IF和TF標志位,保護斷點(下一條指令地址入棧)。8086總線請求:在一個系統中,若存在多個可控制總線的主模塊時,總線使用權的轉移存在著一個請求與響應的過程。
上傳時間: 2013-10-21
上傳用戶:皇族傳媒
語音編解碼芯片MT8965在ALU中的應用::MT8965是一種功能較強的語音編解碼芯片,它采用( 律編碼,可通過控制總線接收從處理器.發出的控制信號來寫控制寄存器,從而控制驅動輸出信號。文章介紹了MT8965的性能特點及其在ALU中的應用。
上傳時間: 2013-10-10
上傳用戶:wfeel
單片機基礎知識單片機的外部結構:1、 DIP40雙列直插;2、 P0,P1,P2,P3四個8位準雙向I/O引腳;(作為I/O輸入時,要先輸出高電平)3、 電源VCC(PIN40)和地線GND(PIN20);4、 高電平復位RESET(PIN9);(10uF電容接VCC與RESET,即可實現上電復位)5、 內置振蕩電路,外部只要接晶體至X1(PIN18)和X0(PIN19);(頻率為主頻的12倍)6、 程序配置EA(PIN31)接高電平VCC;(運行單片機內部ROM中的程序)7、 P3支持第二功能:RXD、TXD、INT0、INT1、T0、T1 單片機內部I/O部件:(所為學習單片機,實際上就是編程控制以下I/O部件,完成指定任務)1、 四個8位通用I/O端口,對應引腳P0、P1、P2和P3;2、 兩個16位定時計數器;(TMOD,TCON,TL0,TH0,TL1,TH1)3、 一個串行通信接口;(SCON,SBUF)4、 一個中斷控制器;(IE,IP)針對AT89C52單片機,頭文件AT89x52.h給出了SFR特殊功能寄存器所有端口的定義。教科書的160頁給出了針對MCS51系列單片機的C語言擴展變量類型。 C語言編程基礎:1、 十六進制表示字節0x5a:二進制為01011010B;0x6E為01101110。2、 如果將一個16位二進數賦給一個8位的字節變量,則自動截斷為低8位,而丟掉高8位。3、 ++var表示對變量var先增一;var—表示對變量后減一。4、 x |= 0x0f;表示為 x = x | 0x0f;5、 TMOD = ( TMOD & 0xf0 ) | 0x05;表示給變量TMOD的低四位賦值0x5,而不改變TMOD的高四位。6、 While( 1 ); 表示無限執行該語句,即死循環。語句后的分號表示空循環體,也就是{;}第一章 單片機最小應用系統:單片機最小系統的硬件原理接線圖:1、 接電源:VCC(PIN40)、GND(PIN20)。加接退耦電容0.1uF2、 接晶體:X1(PIN18)、X2(PIN19)。注意標出晶體頻率(選用12MHz),還有輔助電容30pF3、 接復位:RES(PIN9)。接上電復位電路,以及手動復位電路,分析復位工作原理4、 接配置:EA(PIN31)。說明原因。第二章 基本I/O口的應用第三章 顯示驅動第七章 串行接口應用
標簽: 單片機
上傳時間: 2013-10-30
上傳用戶:athjac
LCD為LCM161(HD44780驅動器)字符顯示器驅動程序 ;說明:本LCD為LCM161(HD44780驅動器)字符顯示器. ;接線:LCD D0-D8(PIN7-14) 對映用戶板P0.0--P0.7 ; LCD VSS(PIN1) 接 GND,VDD(PIN2)接+5V,LCD驅動電源V0(PIN3)接可調電阻ADJ,調節亮度 ; LCD寄存器選擇RS(PIN4)接P2.0,讀寫選擇R/W(PIN5)接P2.1,使能端EN(PIN6)接P2.2(高電平有效) ;本程序采用I/O口模仿總線時序,故無需做任何硬件擴展.屏幕顯示:"I'm SuperICES! ",
上傳時間: 2013-10-17
上傳用戶:ssz1990
摘 要:單片機多機通訊一般采用串行總線方式,但在通訊距離短,通訊數據量大,通訊速率高的場合也會用到多機并行通訊。本文介紹一種采用簡單邏輯電路實現單片機多機并行通訊的方法。關鍵詞:并行通訊,三態緩沖寄存器,雙端口存儲器,總線隔離1、 簡介本文介紹的單片機多機并行通訊系統,使用89C51作為主機,多片89C2051作為從機。(89C2051為20腳300MIL封裝,帶有2K FLASH E2PROM的單片機,除了少了兩個并口外,具備MCS-51系列單片機所有功能。因為其體積小,功能強,必將在單片機應用領域內廣泛使用)。這種并行通訊方法適用于在多站點,多層次的檢測和控制系統中充當通信控制器的角色;也適合于用作單片機串行口擴充電路。
上傳時間: 2013-10-31
上傳用戶:hxy200501
pic單片機實用教程(提高篇)以介紹PIC16F87X型號單片機為主,并適當兼顧PIC全系列,共分9章,內容包括:存儲器;I/O端口的復位功能;定時器/計數器TMR1;定時器TMR2;輸入捕捉/輸出比較/脈寬調制CCP;模/數轉換器ADC;通用同步/異步收發器USART;主控同步串行端口MSSP:SPI模式和I2C模式。突出特點:通俗易懂、可讀性強、系統全面、學練結合、學用并重、實例豐富、習題齊全。<br>本書作為Microchip公司大學計劃選擇用書,可廣泛適用于初步具備電子技術基礎和計算機知識基礎的學生、教師、單片機愛好者、電子制作愛好者、電器維修人員、電子產品開發設計者、工程技術人員閱讀。本教程全書共分2篇,即基礎篇和提高篇,分2冊出版,以適應不同課時和不同專業的需要,也為教師和讀者增加了一種可選方案。 第1章 EEPROM數據存儲器和FIASH程序存儲器1.1 背景知識1.1.1 通用型半導體存儲器的種類和特點1.1.2 PIC單片機內部的程序存儲器1.1.3 PIC單片機內部的EEPROM數據存儲器1.1.4 PIC16F87X內部EEPROM和FIASH操作方法1.2 與EEPROM相關的寄存器1.3 片內EEPROM數據存儲器結構和操作原理1.3.1 從EEPROM中讀取數據1.3.2 向EEPROM中燒寫數據1.4 與FLASH相關的寄存器1.5 片內FLASH程序存儲器結構和操作原理1.5.1 讀取FLASH程序存儲器1.5.2 燒寫FLASH程序存儲器1.6 寫操作的安全保障措施1.6.1 寫入校驗方法1.6.2 預防意外寫操作的保障措施1.7 EEPROM和FLASH應用舉例1.7.1 EEPROM的應用1.7.2 FIASH的應用思考題與練習題第2章 輸入/輸出端口的復合功能2.1 RA端口2.1.1 與RA端口相關的寄存器2.1.2 電路結構和工作原理2.1.3 編程方法2.2 RB端口2.2.1 與RB端口相關的寄存器2.2.2 電路結構和工作原理2.2.3 編程方法2.3 RC端口2.3.1 與RC端口相關的寄存器2.3.2 電路結構和工作原理2.3.3 編程方法2.4 RD端口2.4.1 與RD端口相關的寄存器2.4.2 電路結構和工作原理2.4.3 編程方法2.5 RE端口2.5.1 與RE端口相關的寄存器2.5.2 電路結構和工作原理2.5.3 編程方法2.6 PSP并行從動端口2.6.1 與PSP端口相關的寄存器2.6.2 電路結構和工作原理2.7 應用舉例思考題與練習題第3章 定時器/計數器TMR13.1 定時器/計數器TMR1模塊的特性3.2 定時器/計數器TMR1模塊相關的寄存器3.3 定時器/計數器TMR1模塊的電路結構3.4 定時器/計數器TMR1模塊的工作原理3.4.1 禁止TMR1工作3.4.2 定時器工作方式3.4.3 計數器工作方式3.4.4 TMR1寄存器的賦值與復位3.5 定時器/計數器TMR1模塊的應用舉例思考題與練習題第4章 定時器TMR24.1 定時器TMR2模塊的特性4.2 定時器TMR2模塊相關的寄存器4.3 定時器TMR2模塊的電路結構4.4 定時器TMR2模塊的工作原理4.4.1 禁止TMR2工作4.4.2 定時器工作方式4.4.3 寄存器TMR2和PR2以及分頻器的復位4.4.4 TMR2模塊的初始化編程4.5 定時器TMR2模塊的應用舉例思考題與練習題第5章 輸入捕捉/輸出比較/脈寬調制CCP5.1 輸入捕捉工作模式5.1.1 輸入捕捉摸式相關的寄存器5.1.2 輸入捕捉模式的電路結構5.1.3 輸入捕捉摸式的工作原理5.1.4 輸入捕捉摸式的應用舉例5.2 輸出比較工作模式5.2.1 輸出比較模式相關的寄存器5.2.2 輸出比較模式的電路結構5.2.3 輸出比較模式的工作原理5.2.4 輸出比較模式的應用舉例5.3 脈寬調制輸出工作模式5.3.1 脈寬調制模式相關的寄存器5.3.2 脈寬調制模式的電路結構5.3.3 脈寬調制模式的工作原理5.3.4 脈定調制模式的應用舉例5.4 兩個CCP模塊之間相互關系思考題與練習題第6章 模/數轉換器ADC6.1 背景知識6.1.1 ADC種類與特點6.1.2 ADC器件的工作原理6.2 PIC16F87X片內ADC模塊6.2.1 ADC模塊相關的寄存器6.2.2 ADC模塊結構和操作原理6.2.3 ADC模塊操作時間要求6.2.4 特殊情況下的A/D轉換6.2.5 ADC模塊的轉換精度和分辨率6.2.6 ADC模塊的內部動作流程和傳遞函數6.2.7 ADC模塊的操作編程6.3 PIC16F87X片內ADC模塊的應用舉例思考題與練習題第7章 通用同步/異步收發器USART7.1 串行通信的基本概念7.1.1 串行通信的兩種基本方式7.1.2 串行通信中數據傳送方向7.1.3 串行通信中的控制方式7.1.4 串行通信中的碼型、編碼方式和幀結構7.1.5 串行通信中的檢錯和糾錯方式7.1.6 串行通信組網方式7.1.7 串行通信接口電路和參數7.1.8 串行通信的傳輸速率7.2 PIC16F87X片內通用同步/異步收發器USART模塊7.2.1 與USART模塊相關的寄存器7.2.2 USART波特率發生器BRG7.2.3 USART模塊的異步工作方式7.2.4 USART模塊的同步主控工作方式7.2.5 USART模塊的同步從動工作方式7.3 通用同步/異步收發器USART的應用舉例思考題與練習題第8章 主控同步串行端口MSSP——SPI模式8.1 SPI接口的背景知識8.1.1 SPI接口信號描述8.1.2 基于SPI的系統構成方式8.1.3 SPI接口工作原理8.1.4 兼容的MicroWire接口8.2 PIC16F87X的SPI接口8.2.1 SPI接口相關的寄存器8.2.2 SPI接口的結構和操作原理8.2.3 SPI接口的主控方式8.2.4 SPI接口的從動方式8.3 SPI接口的應用舉例思考題與練習題第9章 主控同步串行端口MSSP——I(平方)C模式9.1 I(平方)C總線的背景知識9.1.1 名詞術語9.1.2 I(平方)C總線的技術特點9.1.3 I(平方)C總線的基本工作原理9.1.4 I(平方)C總線信號時序分析9.1.5 信號傳送格式9.1.6 尋址約定9.1.7 技術參數9.1.8 I(平方)C器件與I(平方)C總線的接線方式9.1.9 相兼容的SMBus總線9.2 與I(平方)C總線相關的寄存器9.3 典型信號時序的產生方法9.3.1 波特率發生器9.3.2 啟動信號9.3.3 重啟動信號9.3.4 應答信號9.3.5 停止信號9.4 被控器通信方式9.4.1 硬件結構9.4.2 被主控器尋址9.4.3 被控器接收——被控接收器9.4.4 被控器發送——被控發送器9.4.5 廣播式尋址9.5 主控器通信方式9.5.1 硬件結構9.5.2 主控器發送——主控發送器9.5.3 主控器接收——主控接收器9.6 多主通信方式下的總線沖突和總線仲裁9.6.1 發送和應答過程中的總線沖突9.6.2 啟動過程中的總線沖突9.6.3 重啟動過程中的總線沖突9.6.4 停止過程中的總線沖突9.7 I(平方)C總線的應用舉例思考題與練習題附錄A 包含文件P16F877.INC附錄B 新版宏匯編器MPASM偽指令總表參考文獻
上傳時間: 2013-12-14
上傳用戶:xiaoyuer
AVR Studio 幫助文件中文翻譯,網友翻譯的AVR Studio軟件里面的幫助文件。轉自“我們的AVR”網站,在此表示感謝。 圖元文件(metafile) 以.emf為擴展名的文件。是下面各種結構的基本組成部分,可以用來讓AVR LCD編輯器設計軟件模擬顯示器。它可以是一個段或者一個圖像。您不能直接用AVR LCD編輯器生成一個這樣的圖元文件。但是可以使用第三方軟件。Companion Software的Metafile Companion和Microsoft Visio 就是兩個讓用戶自己定義圖元文件的軟件。在市場上有好多更簡單,更便宜的轉換軟件支持gif,jpeg,bmp等的文件轉換成.emf文件。 (例如:www.harmware.com 網站上的Batch Thumb 、和www.irfanview.com網站上的IrfanView). 段(segment)這是軟件模擬顯示器的一部分。用LCD編輯器您可以分配所有的段對應到實際的LCD寄存器的位上。段被存成.emf文件。圖像(image)被用作背景圖像和外圍圖像的圖元文件。充當所有段的布景。這些對象是“靜態”的,不對任何LCD寄存器值有反映。圖像也被存成.emf文件。 模擬顯示器(display)多層的元文件和圖像的組合。它包含LCD 寄存器的分配信息。用XML格式保存成.dis文件。組(group)為了簡化設計,需要頻繁的保存使用段。組就是同一層中一些段(圖元文件)的集合。它的設計沒有實際的限制,但是不能包括靜態圖像(背景/前景)。最典型的組就是7段碼數字字型。組只是理論的設計工具,在最終的模擬顯示器文件中是沒有組存在的。組用擴展名為.pri 的文件保存。 對象(object)對包括以上各個元件的各種事物的稱謂的術語。模擬顯示器文件(display file)以.dis為擴展名的XML類型的文件。包含了所有的關于顯示器的信息。
上傳時間: 2013-10-31
上傳用戶:paladin