1.UART增加2個(gè)新的特性,即幀錯(cuò)誤檢測和多機(jī)通信中的從機(jī)地址自動(dòng)識別。(1)幀錯(cuò)誤檢測可用于UART檢查工作方式1、2和3時(shí)的停止位。例如,由于UART通信線路上的噪聲或者2個(gè)MCU同時(shí)發(fā)送可能引起停止位的丟失。(2)多機(jī)通信中的從機(jī)地址自動(dòng)識別功能即是說只允許該地址從機(jī)被硬件中斷,而不是由軟件進(jìn)行地址比較的,那么自動(dòng)地址識別可以減少為UART服務(wù)所需要的MCU時(shí)間。與此同時(shí)使用廣播地址可以一次尋址所有的從處理器。2.4個(gè)中斷優(yōu)先級:IPH和IP結(jié)合使用決定了每個(gè)中斷的優(yōu)先級,00、01、10、11的排列依次由低到高組成4級中斷優(yōu)先權(quán)。3.雙DPTR指針:可用于尋址外部數(shù)據(jù)存儲器。通過對AUCR1的DPS位編程,以實(shí)現(xiàn)對2個(gè)16位DPTR寄存器的切換。4.將AUXR.0置位,禁止ALE的信號輸出,從而達(dá)到降低單片機(jī)本身的EMI電磁干擾。
標(biāo)簽: PHILIPS 80C51 單片機(jī)
上傳時(shí)間: 2013-10-23
上傳用戶:hj_18
一、實(shí)驗(yàn)要求1.指定存儲器中某塊的起始地址和長度,要求能將其內(nèi)容清零。二、實(shí)驗(yàn)?zāi)康?.掌握存儲器讀寫方法2.了解存儲器的塊操作方法三、實(shí)驗(yàn)說明通過本實(shí)驗(yàn),學(xué)生可以了解單片機(jī)讀寫存儲器的讀寫方法,同時(shí)也可以了解單片機(jī)編程,調(diào)試方法。如何將存儲器塊的內(nèi)容置成某固定值(例全填充為0FFH)?請學(xué)生修改程序,完成此操作。
標(biāo)簽: 單片機(jī)原理 實(shí)驗(yàn)指導(dǎo)書
上傳時(shí)間: 2013-10-25
上傳用戶:jyycc
概述:MC10P12XX系列是一款低功耗、8位OTP型微控制器單元(MCU),并帶有內(nèi)置高精度振蕩器及一個(gè)可直接驅(qū)動(dòng)紅外發(fā)射管的遙控碼輸出口。適用于各類家電(如電視、VCD機(jī)等)的紅外遙控器。
上傳時(shí)間: 2013-11-08
上傳用戶:digacha
單片機(jī)指令系統(tǒng)原理 51單片機(jī)的尋址方式 學(xué)習(xí)匯編程序設(shè)計(jì),要先了解CPU的各種尋址法,才能有效的掌握各個(gè)命令的用途,尋址法是命令運(yùn)算碼找操作數(shù)的方法。在我們學(xué)習(xí)的8051單片機(jī)中,有6種尋址方法,下面我們將逐一進(jìn)行分析。 立即尋址 在這種尋址方式中,指令多是雙字節(jié)的,一般第一個(gè)字節(jié)是操作碼,第二個(gè)字節(jié)是操作數(shù)。該操作數(shù)直接參與操作,所以又稱立即數(shù),有“#”號表示。立即數(shù)就是存放在程序存儲器中的常數(shù),換句話說就是操作數(shù)(立即數(shù))是包含在指令字節(jié)中的。 例如:MOV A,#3AH這條指令的指令代碼為74H、3AH,是雙字節(jié)指令,這條指令的功能是把立即數(shù)3AH送入累加器A中。MOV DPTR,#8200H在前面學(xué)單片機(jī)的專用寄存器時(shí),我們已學(xué)過,DPTR是一個(gè)16位的寄存器,它由DPH及DPL兩個(gè)8位的寄存器組成。這條指令的意思就是把立即數(shù)的高8位(即82H)送入DPH寄存器,把立即數(shù)的低8位(即00H)送入DPL寄存器。這里也特別說明一下:在80C51單片機(jī)的指令系統(tǒng)中,僅有一條指令的操作數(shù)是16位的立即數(shù),其功能是向地址指針DPTR傳送16位的地址,即把立即數(shù)的高8位送入DPH,低8位送入DPL。 直接尋址 直接尋址方式是指在指令中操作數(shù)直接以單元地址的形式給出,也就是在這種尋址方式中,操作數(shù)項(xiàng)給出的是參加運(yùn)算的操作數(shù)的地址,而不是操作數(shù)。例如:MOV A,30H 這條指令中操作數(shù)就在30H單元中,也就是30H是操作數(shù)的地址,并非操作數(shù)。 在80C51單片機(jī)中,直接地址只能用來表示特殊功能寄存器、內(nèi)部數(shù)據(jù)存儲器以及位地址空間,具體的說就是:1、內(nèi)部數(shù)據(jù)存儲器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個(gè)單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。2、位尋址區(qū)。20H-2FH地址單元。3、特殊功能寄存器。專用寄存器除以單元地址形式給出外,還可以以寄存器符號形式給出。例如下面我們分析的一條指令 MOV IE,#85H 前面的學(xué)習(xí)我們已知道,中斷允許寄存器IE的地址是80H,那么也就是這條指令可以以MOV IE,#85H 的形式表述,也可以MOV 80H,#85H的形式表述。 關(guān)于數(shù)據(jù)存儲器RAM的內(nèi)部情況,請查看我們課程的第十二課。 直接尋址是唯一能訪問特殊功能寄存器的尋址方式! 大家來分析下面幾條指令:MOV 65H,A ;將A的內(nèi)容送入內(nèi)部RAM的65H單元地址中MOV A,direct ;將直接地址單元的內(nèi)容送入A中MOV direct,direct;將直接地址單元的內(nèi)容送直接地址單元MOV IE,#85H ;將立即數(shù)85H送入中斷允許寄存器IE 前面我們已學(xué)過,數(shù)據(jù)前面加了“#”的,表示后面的數(shù)是立即數(shù)(如#85H,就表示85H就是一個(gè)立即數(shù)),數(shù)據(jù)前面沒有加“#”號的,就表示后面的是一個(gè)地址地址(如,MOV 65H,A這條指令的65H就是一個(gè)單元地址)。 寄存器尋址 寄存器尋址的尋址范圍是:1、4個(gè)工作寄存器組共有32個(gè)通用寄存器,但在指令中只能使用當(dāng)前寄存器組(工作寄存器組的選擇在前面專用寄存器的學(xué)習(xí)中,我們已知道,是由程序狀態(tài)字PSW中的RS1和RS0來確定的),因此在使用前常需要通過對PSW中的RS1、RS0位的狀態(tài)設(shè)置,來進(jìn)行對當(dāng)前工作寄存器組的選擇。2、部份專用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和進(jìn)位位CY。 寄存器尋址方式是指操作數(shù)在寄存器中,因此指定了寄存器名稱就能得到操作數(shù)。例如:MOV A,R0這條指令的意思是把寄存器R0的內(nèi)容傳送到累加器A中,操作數(shù)就在R0中。INC R3這條指令的意思是把寄存器R3中的內(nèi)容加1 從前面的學(xué)習(xí)中我產(chǎn)應(yīng)可以理解到,其實(shí)寄存器尋址方式就是對由PSW程序狀態(tài)字確定的工作寄存器組的R0-R7進(jìn)行讀/寫操作。 寄存器間接尋址 寄存間接尋址方式是指寄存器中存放的是操作數(shù)的地址,即操作數(shù)是通過寄存器間接得到的,因此稱為寄存器間接尋址。 MCS-51單片機(jī)規(guī)定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內(nèi)部或外部數(shù)據(jù)存儲器的256個(gè)單元。為什么會是256個(gè)單元呢?我們知道,R0或者R1都是一個(gè)8位的寄存器,所以它的尋址空間就是2的八次方=256。例:MOV R0,#30H ;將值30H加載到R0中 MOV A,@R0 ;把內(nèi)部RAM地址30H內(nèi)的值放到累加器A中 MOVX A,@R0 ;把外部RAM地址30H內(nèi)的值放到累加器A中 大家想想,如果用DPTR做為間址寄存器,那么它的尋址范圍是多少呢?DPTR是一個(gè)16位的寄存器,所以它的尋址范圍就是2的十六次方=65536=64K。因用DPTR做為間址寄存器的尋址空間是64K,所以訪問片外數(shù)據(jù)存儲器時(shí),我們通常就用DPTR做為間址寄存器。例:MOV DPTR,#1234H ;將DPTR值設(shè)為1234H(16位) MOVX A,@DPTR ;將外部RAM或I/O地址1234H內(nèi)的值放到累加器A中 在執(zhí)行PUSH(壓棧)和POP(出棧)指令時(shí),采用堆棧指針SP作寄存器間接尋址。例:PUSH 30H ;把內(nèi)部RAM地址30H內(nèi)的值放到堆棧區(qū)中堆棧區(qū)是由SP寄存器指定的,如果執(zhí)行上面這條命令前,SP為60H,命令執(zhí)行后會把內(nèi)部RAM地址30H內(nèi)的值放到RAM的61H內(nèi)。 那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個(gè),R0、R1、DPTR、SP 寄存器間接尋址范圍總結(jié):1、內(nèi)部RAM低128單元。對內(nèi)部RAM低128單元的間接尋址,應(yīng)使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。 2、外部RAM 64KB。對外部RAM64KB的間接尋址,應(yīng)使用@DPTR作間址尋址寄存器,其形式為:@DPTR。例如MOVX A,@DPTR;其功能是把DPTR指定的外部RAM的單元的內(nèi)容送入累加器A中。外部RAM的低256單元是一個(gè)特殊的尋址區(qū),除可以用DPTR作間址寄存器尋址外,還可以用R0或R1作間址寄存器尋址。例如MOVX A,@R0;這條指令的意思是,把R0指定的外部RAM單元的內(nèi)容送入累加器A。 堆棧操作指令(PUSH和POP)也應(yīng)算作是寄存器間接尋址,即以堆棧指針SP作間址寄存器的間接尋址方式。 寄存器間接尋址方式不可以訪問特殊功能寄存器!! 寄存器間接尋址也須以寄存器符號的形式表示,為了區(qū)別寄存器尋址我寄存器間接尋址的區(qū)別,在寄存器間接尋址方式式中,寄存器的名稱前面加前綴標(biāo)志“@”。 基址寄存器加變址寄存器的變址尋址 這種尋址方式以程序計(jì)數(shù)器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時(shí),把兩者的內(nèi)容相加,所得到的結(jié)果作為操作數(shù)的地址。這種方式常用于訪問程序存儲器ROM中的數(shù)據(jù)表格,即查表操作。變址尋址只能讀出程序內(nèi)存入的值,而不能寫入,也就是說變址尋址這種方式只能對程序存儲器進(jìn)行尋址,或者說它是專門針對程序存儲器的尋址方式。例:MOVC A,@A+DPTR這條指令的功能是把DPTR和A的內(nèi)容相加,再把所得到的程序存儲器地址單元的內(nèi)容送A假若指令執(zhí)行前A=54H,DPTR=3F21H,則這條指令變址尋址形成的操作數(shù)地址就是54H+3F21H=3F75H。如果3F75H單元中的內(nèi)容是7FH,則執(zhí)行這條指令后,累加器A中的內(nèi)容就是7FH。 變址尋址的指令只有三條,分別如下:JMP @A+DPTRMOVC A,@A+DPTRMOVC A,@A+PC 第一條指令JMP @A+DPTR這是一條無條件轉(zhuǎn)移指令,這條指令的意思就是DPTR加上累加器A的內(nèi)容做為一個(gè)16位的地址,執(zhí)行JMP這條指令是,程序就轉(zhuǎn)移到A+DPTR指定的地址去執(zhí)行。 第二、三條指令MOVC A,@A+DPTR和MOVC A,@A+PC指令這兩條指令的通常用于查表操作,功能完全一樣,但使用起來卻有一定的差別,現(xiàn)詳細(xì)說明如下。我們知道,PC是程序指針,是十六位的。DPTR是一個(gè)16位的數(shù)據(jù)指針寄存器,按理,它們的尋址范圍都應(yīng)是64K。我們在學(xué)習(xí)特殊功能寄存器時(shí)已知道,程序計(jì)數(shù)器PC是始終跟蹤著程序的執(zhí)行的。也就是說,PC的值是隨程序的執(zhí)行情況自動(dòng)改變的,我們不可以隨便的給PC賦值。而DPTR是一個(gè)數(shù)據(jù)指針,我們就可以給空上數(shù)據(jù)指針DPTR進(jìn)行賦值。我們再看指令MOVC A,@A+PC這條指令的意思是將PC的值與累加器A的值相加作為一個(gè)地址,而PC是固定的,累加器A是一個(gè)8位的寄存器,它的尋址范圍是256個(gè)地址單元。講到這里,大家應(yīng)可明白,MOVC A,@A+PC這條指令的尋址范圍其實(shí)就是只能在當(dāng)前指令下256個(gè)地址單元。所在,這在我們實(shí)際應(yīng)用中,可能就會有一個(gè)問題,如果我們需要查詢的數(shù)據(jù)表在256個(gè)地址單元之內(nèi),則可以用MOVC A,@A+PC這條指令進(jìn)行查表操作,如果超過了256個(gè)單元,則不能用這條指令進(jìn)行查表操作。剛才我們已說到,DPTR是一個(gè)數(shù)據(jù)指針,這個(gè)數(shù)據(jù)指針我們可以給它賦值操作的。通過賦值操作。我們可以使MOVC A,@A+DPTR這條指令的尋址范圍達(dá)到64K。這就是這兩條指令在實(shí)際應(yīng)用當(dāng)中要注意的問題。 變址尋址方式是MCS-51單片機(jī)所獨(dú)有的一種尋址方式。 位尋址 80C51單片機(jī)有位處理功能,可以對數(shù)據(jù)位進(jìn)行操作,因此就有相應(yīng)的位尋址方式。所謂位尋址,就是對內(nèi)部RAM或可位尋址的特殊功能寄存器SFR內(nèi)的某個(gè)位,直接加以置位為1或復(fù)位為0。 位尋址的范圍,也就是哪些部份可以進(jìn)行位尋址: 1、我們在第十二課學(xué)習(xí)51單片機(jī)的存儲器結(jié)構(gòu)時(shí),我們已知道在單片機(jī)的內(nèi)部數(shù)據(jù)存儲器RAM的低128單元中有一個(gè)區(qū)域叫位尋址區(qū)。它的單元地址是20H-2FH。共有16個(gè)單元,一個(gè)單元是8位,所以位尋址區(qū)共有128位。這128位都單獨(dú)有一個(gè)位地址,其位地址的名字就是00H-7FH。這里就有一個(gè)比較麻煩的問題需要大家理解清楚了。我們在前面的學(xué)習(xí)中00H、01H。。。。7FH等等,所表示的都是一個(gè)字節(jié)(或者叫單元地址),而在這里,這些數(shù)據(jù)都變成了位地址。我們在指令中,或者在程序中如何來區(qū)分它是一個(gè)單元地址還是一個(gè)位地址呢?這個(gè)問題,也就是我們現(xiàn)在正在研究的位尋址的一個(gè)重要問題。其實(shí),區(qū)分這些數(shù)據(jù)是位地址還是單元地址,我們都有相應(yīng)的指令形式的。這個(gè)問題我們在后面的指令系統(tǒng)學(xué)習(xí)中再加以論述。 2、對專用寄存器位尋址。這里要說明一下,不是所有的專用寄存器都可以位尋址的。具體哪些專用寄存器可以哪些專用寄存器不可以,請大家回頭去看看我們前面關(guān)于專用寄存器的相關(guān)文章。一般來說,地址單元可以被8整除的專用寄存器,通常都可以進(jìn)行位尋址,當(dāng)然并不是全部,大家在應(yīng)用當(dāng)中應(yīng)引起注意。 專用寄存器的位尋址表示方法: 下面我們以程序狀態(tài)字PSW來進(jìn)行說明 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV P 1、直接使用位地址表示:看上表,PSW的第五位地址是D5,所以可以表示為D5H MOV C,D5H 2、位名稱表示:表示該位的名稱,例如PSW的位5是F0,所以可以用F0表示 MOV C,F(xiàn)0 3、單元(字節(jié))地址加位表示:D0H單元位5,表示為DOH.5 MOV C,D0H.5 4、專用寄存器符號加位表示:例如PSW.5 MOV C,PSW.5 這四種方法實(shí)現(xiàn)的功能都是相同的,只是表述的方式不同而已。 例題: 1. 說明下列指令中源操作數(shù)采用的尋址方式。 MOV R5,R7 答案:寄存器尋址方式 MOV A,55H 直接尋址方式 MOV A,#55H 立即尋址方式 JMP @A+DPTR 變址尋址方式 MOV 30H,C 位尋址方式 MOV A,@R0 間接尋址方式 MOVX A,@R0 間接尋址方式 改錯(cuò)題 請判斷下列的MCS-51單片機(jī)指令的書寫格式是否有錯(cuò),若有,請說明錯(cuò)誤原因。 MOV R0,@R3 答案:間址寄存器不能使用R2~R7。 MOVC A,@R0+DPTR 變址尋址方式中的間址寄存器不可使用R0,只可使用A。 ADD R0,R1 運(yùn)算指令中目的操作數(shù)必須為累加器A,不可為R0。 MUL AR0 乘法指令中的乘數(shù)應(yīng)在B寄存器中,即乘法指令只可使用AB寄存器組合。
標(biāo)簽: 單片機(jī)指令 系統(tǒng)原理
上傳時(shí)間: 2013-11-11
上傳用戶:caozhizhi
HT47R20A-1時(shí)基(Time Base)使用介紹 HT47 系列單片機(jī)的時(shí)基可提供一個(gè)周期性超時(shí)時(shí)間周期以產(chǎn)生規(guī)則性的內(nèi)部中斷。時(shí)基的時(shí)鐘來源可由掩膜選擇設(shè)定為WDT 時(shí)鐘、RTC 時(shí)鐘或指令時(shí)鐘(系統(tǒng)時(shí)鐘/4);其超時(shí)時(shí)間范圍可由掩膜選擇設(shè)定為“時(shí)鐘來源”/212~“時(shí)鐘來源”/215。如果時(shí)基發(fā)生超時(shí)現(xiàn)象,則其對應(yīng)的中斷請求標(biāo)志(TBF)會被置位,如果中斷允許,則產(chǎn)生一個(gè)中斷服務(wù)到08H 的地址。
上傳時(shí)間: 2013-11-15
上傳用戶:13925096126
EZ-USB FX系列單片機(jī)USB外圍設(shè)備設(shè)計(jì)與應(yīng)用:PART 1 USB的基本概念第1章 USB的基本特性1.1 USB簡介21.2 USB的發(fā)展歷程31.2.1 USB 1.131.2.2 USB 2.041.2.3 USB與IEEE 1394的比較41.3 USB基本架構(gòu)與總線架構(gòu)61.4 USB的總線結(jié)構(gòu)81.5 USB數(shù)據(jù)流的模式與管線的概念91.6 USB硬件規(guī)范101.6.1 USB的硬件特性111.6.2 USB接口的電氣特性121.6.3USB的電源管理141.7 USB的編碼方式141.8 結(jié)論161.9 問題與討論16第2章 USB通信協(xié)議2.1 USB通信協(xié)議172.2 USB封包中的數(shù)據(jù)域類型182.2.1 數(shù)據(jù)域位的格式182.3 封包格式192.4 USB傳輸?shù)念愋?32.4.1 控制傳輸242.4.2 中斷傳輸292.4.3 批量傳輸292.4.4 等時(shí)傳輸292.5 USB數(shù)據(jù)交換格式302.6 USB描述符342.7 USB設(shè)備請求422.8 USB設(shè)備群組442.9 結(jié)論462.10 問題與討論46第3章 設(shè)備列舉3.1注冊表編輯器473.2設(shè)備列舉的步驟493.3設(shè)備列舉步驟的實(shí)現(xiàn)--使用CATC分析工具513.4結(jié)論613.5問題與討論61第4章 USB芯片與EZUSB4.1USB芯片的簡介624.2USB接口芯片644.2.1Philips接口芯片644.2.2National Semiconductor接口芯片664.3內(nèi)含USB單元的微處理器684.3.1Motorola694.3.2Microchip694.3.3SIEMENS704.3.4Cypress714.4USB芯片總攬介紹734.5USB芯片的選擇與評估744.6問題與討論80第5章 設(shè)備與驅(qū)動(dòng)程序5.1階層式的驅(qū)動(dòng)程序815.2主機(jī)的驅(qū)動(dòng)程序835.3驅(qū)動(dòng)程序的選擇865.4結(jié)論865.5問題與討論87第6章 HID群組6.1HID簡介886.2HID群組的傳輸速率886.3HID描述符906.3.1報(bào)告描述符936.3.2主要 main 項(xiàng)目類型966.3.3整體 global 項(xiàng)目卷標(biāo)976.3.4區(qū)域 local 項(xiàng)目卷標(biāo)986.3.5簡易的報(bào)告描述符996.3.6Descriptor Tool 描述符工具 1006.3.7兼容測試程序1016.4HID設(shè)備的基本請求1026.5Windows通信程序1036.6問題與討論106PART 2 硬件技術(shù)篇第7章 EZUSB FX簡介7.1簡介1097.2EZUSB FX硬件框圖1097.3封包與PID碼1117.4主機(jī)是個(gè)主控者1137.4.1從主機(jī)接收數(shù)據(jù)1137.4.2傳送數(shù)據(jù)至主機(jī)1137.5USB方向1137.6幀1147.7EZUSB FX傳輸類型1147.7.1批量傳輸1147.7.2中斷傳輸1147.7.3等時(shí)傳輸1157.7.4控制傳輸1157.8設(shè)備列舉1167.9USB核心1167.10EZUSB FX單片機(jī)1177.11重新設(shè)備列舉1177.12EZUSB FX端點(diǎn)1187.12.1EZUSB FX批量端點(diǎn)1187.12.2EZUSB FX控制端點(diǎn)01187.12.3EZUSB FX中斷端點(diǎn)1197.12.4EZUSB FX等時(shí)端點(diǎn)1197.13快速傳送模式1197.14中斷1207.15重置與電源管理1207.16EZUSB 2100系列1207.17FX系列--從FIFO1227.18FX系列--GPIF 通用型可程序化的接口 1227.19AN2122/26各種特性的摘要1227.20修訂ID1237.21引腳描述123第8章 EZUSB FX CPU8.1簡介1308.28051增強(qiáng)模式1308.3EZUSB FX所增強(qiáng)的部分1318.4EZUSB FX寄存器接口1318.5EZUSB FX內(nèi)部RAM1318.6I/O端口1328.7中斷1328.8電源控制1338.9特殊功能寄存器 SFR 1348.10內(nèi)部總線1358.11重置136第9章 EZUSB FX內(nèi)存9.1簡介1379.28051內(nèi)存1389.3擴(kuò)充的EZUSB FX內(nèi)存1399.4CS#與OE#信號1409.5EZUSB FX ROM版本141第10章 EZUSB FX輸入/輸出端口10.1簡介14310.2I/O端口14310.3EZUSB輸入/輸出端口寄存器14610.3.1端口配置寄存器14710.3.2I/O端口寄存器14710.4EZUSB FX輸入/輸出端口寄存器14910.5EZUSB FX端口配置表15110.6I2C控制器15610.78051 I2C控制器15610.8控制位15810.8.1START位15810.8.2STOP位15810.8.3LASTRD位15810.9狀態(tài)位15910.9.1DONE位15910.9.2ACK位15910.9.3BERR位15910.9.4ID1, ID015910.10送出 WRITE I2C數(shù)據(jù)16010.11接收 READ I2C數(shù)據(jù)16010.12I2C激活加載器16010.13SFR尋址 FX 16210.14端口A~E的SFR控制165第11章 EZUSB FX設(shè)備列舉與重新設(shè)備列舉11.1簡介16711.2預(yù)設(shè)的USB設(shè)備16911.3USB核心對于EP0設(shè)備請求的響應(yīng)17011.4固件下載17111.5設(shè)備列舉模式17211.6沒有存在EEPROM17311.7存在著EEPROM, 第一個(gè)字節(jié)是0xB0 0xB4, FX系列11.8存在著EEPROM, 第一個(gè)字節(jié)是0xB2 0xB6, FX系列11.9配置字節(jié)0,FX系列17711.10重新設(shè)備列舉 ReNumerationTM 17811.11多重重新設(shè)備列舉 ReNumerationTM 17911.12預(yù)設(shè)描述符179第12章 EZUSB FX批量傳輸12.1簡介18812.2批量輸入傳輸18912.3中斷傳輸19112.4EZUSB FX批量IN的例子19112.5批量OUT傳輸19212.6端點(diǎn)對19412.7IN端點(diǎn)對的狀態(tài)19412.8OUT端點(diǎn)對的狀態(tài)19512.9使用批量緩沖區(qū)內(nèi)存19512.10Data Toggle控制19612.11輪詢的批量傳輸?shù)姆独?9712.12設(shè)備列舉說明19912.13批量端點(diǎn)中斷19912.14中斷批量傳輸?shù)姆独?0112.15設(shè)備列舉說明20512.16自動(dòng)指針器205第13章 EZUSB控制端點(diǎn)013.1簡介20913.2控制端點(diǎn)EP021013.3USB請求21213.3.1取得狀態(tài) Get_Status 21413.3.2設(shè)置特性(Set_Feature)21713.3.3清除特性(Clear_Feature)21813.3.4取得描述符(Get_Descriptor)21913.3.5設(shè)置描述符(Set Descriptor)22313.3.6設(shè)置配置(Set_Configuration)22513.3.7取得配置(Get_Configuration)22513.3.8設(shè)置接口(Set_Interface)22513.3.9取得接口(Get_Interface)22613.3.10設(shè)置地址(Set_Address)22713.3.11同步幀22713.3.12固件加載228第14章 EZUSB FX等時(shí)傳輸14.1簡介22914.2等時(shí)IN傳輸23014.2.1初始化設(shè)置23014.2.2IN數(shù)據(jù)傳輸23014.3等時(shí)OUT傳輸23114.3.1初始化設(shè)置23114.3.2數(shù)據(jù)傳輸23214.4設(shè)置等時(shí)FIFO的大小23214.5等時(shí)傳輸速度23414.5.1EZUSB 2100系列23414.5.2EZUSB FX系列23514.6快速傳輸 僅存于2100系列 23614.6.1快速寫入23614.6.2快速讀取23714.7快速傳輸?shù)臅r(shí)序 僅存于2100系列 23714.7.1快速寫入波形23814.7.2快速讀取波形23914.8快速傳輸速度(僅存于2100系列)23914.9其余的等時(shí)寄存器24014.9.1除能等時(shí)寄存器24014.9.20字節(jié)計(jì)數(shù)位24114.10以無數(shù)據(jù)來響應(yīng)等時(shí)IN令牌24214.11使用等時(shí)FIFO242第15章 EZUSB FX中斷15.1簡介24315.2USB核心中斷24415.3喚醒中斷24415.4USB中斷信號源24515.5SUTOK與SUDAV中斷24815.6SOF中斷24915.7中止 suspend 中斷24915.8USB重置中斷24915.9批量端點(diǎn)中斷25015.10USB自動(dòng)向量25015.11USB自動(dòng)向量譯碼25115.12I2C中斷25215.13IN批量NAK中斷 僅存于AN2122/26與FX系列 25315.14I2C STOP反相中斷 僅存于AN2122/26與FX系列 25415.15從FIFO中斷 INT4 255第16章 EZUSB FX重置16.1簡介25716.2EZUSB FX打開電源重置 POR 25716.38051重置的釋放25916.3.1RAM的下載26016.3.2下載EEPROM26016.3.3外部ROM26016.48051重置所產(chǎn)生的影響26016.5USB總線重置26116.6EZUSB脫離26216.7各種重置狀態(tài)的總結(jié)263第17章 EZUSB FX電源管理17.1簡介26517.2中止 suspend 26617.3回復(fù) resume 26717.4遠(yuǎn)程喚醒 remote wakeup 269第18章 EZUSB FX系統(tǒng)18.1簡介27118.2DMA寄存器描述27218.2.1來源. 目的. 傳輸長度地址寄存器27218.2.2DMA起始與狀態(tài)寄存器27518.2.3DMA同步突發(fā)使能寄存器27518.2.4虛擬寄存器27818.3RD/FRD與WR/FWR DMA閃控的選擇27818.4DMA閃控波形與延伸位的交互影響27918.4.1DMA外部寫入27918.4.2DMA外部讀取280第19章 EZUSB FX寄存器19.1簡介28219.2批量數(shù)據(jù)緩沖區(qū)寄存器28319.3等時(shí)數(shù)據(jù)FIFO寄存器28419.4等時(shí)字節(jié)計(jì)數(shù)寄存器28519.5CPU寄存器28719.6I/O端口配置寄存器28819.7I/O端口A~C輸入/輸出寄存器28919.8230 Kbaud UART操作--AN2122/26寄存器29119.9等時(shí)控制/狀態(tài)寄存器29119.10I2C寄存器29219.11中斷29419.12端點(diǎn)0控制與狀態(tài)寄存器29919.13端點(diǎn)1~7的控制與狀態(tài)寄存器30019.14整體USB寄存器30519.15快速傳輸30919.16SETUP數(shù)據(jù)31119.17等時(shí)FIFO的容量大小31119.18通用I/F中斷使能31219.19通用中斷請求31219.20輸入/輸出端口寄存器D與E31319.20.1端口D輸出31319.20.2輸入端口D腳位31319.20.3端口D輸出使能31319.20.4端口E輸出31319.20.5輸入端口E腳位31419.20.6端口E輸出使能31419.21端口設(shè)置31419.22接口配置31419.23端口A與端口C切換配置31619.23.1端口A切換配置#231619.23.2端口C切換配置#231719.24DMA寄存器31919.24.1來源. 目的. 傳輸長度地址寄存器31919.24.2DMA起始與狀態(tài)寄存器32019.24.3DMA同步突發(fā)使能寄存器32019.24.4選擇8051 A/D總線作為外部FIFO321PART 3 固件技術(shù)篇第20章 EZUSB FX固件架構(gòu)與函數(shù)庫20.1固件架構(gòu)總覽32320.2固件架構(gòu)的建立32520.3固件架構(gòu)的副函數(shù)鉤子32520.3.1工作分配器32620.3.2設(shè)備請求 device request 32620.3.3USB中斷服務(wù)例程32920.4固件架構(gòu)整體變量33220.5描述符表33320.5.1設(shè)備描述符33320.5.2配置描述符33420.5.3接口描述符33420.5.4端點(diǎn)描述符33520.5.5字符串描述符33520.5.6群組描述符33520.6EZUSB FX固件的函數(shù)庫33620.6.1包含文件 *.H 33620.6.2子程序33620.6.3整體變量33820.7固件架構(gòu)的原始程序代碼338第21章 EZUSB FX固件范例程序21.1范例程序的簡介34621.2外圍I/O測試程序34721.3端點(diǎn)對, EP_PAIR范例35221.4批量測試, BulkTest范例36221.5等時(shí)傳輸, ISOstrm范例36821.6問題與討論373PART 4 實(shí)驗(yàn)篇第22章 EZUSB FX仿真器22?1簡介37522?2所需的工具37622?3EZUSB FX框圖37722.4EZUSB最終版本的系統(tǒng)框圖37822?5第一次下載程序37822.6EZUSB FX開發(fā)系統(tǒng)框圖37922.7設(shè)置開發(fā)環(huán)境38022.8EZUSB FX開發(fā)工具組的內(nèi)容38122.9EZUSB FX開發(fā)工具組軟件38222.9.1初步安裝程序38222.9.2確認(rèn)主機(jī) 個(gè)人計(jì)算機(jī) 是否支持USB38222.10安裝EZUSB控制平臺. 驅(qū)動(dòng)程序以及文件38322.11EZUSB FX開發(fā)電路板38522.11.1簡介38522.11.2開發(fā)電路板的瀏覽38522.11.3所使用的8051資源38622.11.4詳細(xì)電路38622.11.5LED的顯示38722.11.6Jumper38722.11.7連接器39122.11.8內(nèi)存映象圖39222.11.9PLD信號39422.11.10PLD源文件文件39522.11.11雛形板的擴(kuò)充連接器P1~P639722.11.12Philips PCF8574 I/O擴(kuò)充IC40022.12DMA USB FX I/O LAB開發(fā)工具介紹40122.12.1USBFX簡介40122.12.2USBFX及外圍整體環(huán)境介紹40322?12?3USBFX與PC連接軟件介紹40422.12.4USBFX硬件功能介紹404第23章 LED顯示器輸出實(shí)驗(yàn)23.1硬件設(shè)計(jì)與基本概念40923.2固件設(shè)計(jì)41023.3.1固件架構(gòu)文件FW.C41123.3.2描述符文件DESCR.A5141223.3.3外圍接口文件PERIPH.C41723.4固件程序代碼的編譯與鏈接42123.5Windows程序, VB設(shè)計(jì)42323.6INF文件的編寫設(shè)計(jì)42423.7結(jié)論42623.8問題與討論427第24章 七段顯示器與鍵盤的輸入/輸出實(shí)驗(yàn)24.1硬件設(shè)計(jì)與基本概念42824.2固件設(shè)計(jì)43124.2.1七段顯示器43124.2.24×4鍵盤掃描43324.3固件程序代碼的編譯與鏈接43424.4Windows程序, VB設(shè)計(jì)43624.5問題與討論437第25章 LCD文字型液晶顯示器輸出實(shí)驗(yàn)25.1硬件設(shè)計(jì)與基本概念43825.1.1液晶顯示器LCD43825.2固件設(shè)計(jì)45225.3固件程序代碼的編譯與鏈接45625.4Windows程序, VB設(shè)計(jì)45725.5問題與討論458第26章 LED點(diǎn)陣輸出實(shí)驗(yàn)26.1硬件設(shè)計(jì)與基本概念45926.2固件設(shè)計(jì)46326.3固件程序代碼的編譯與鏈接46326.4Windows程序, VB設(shè)計(jì)46526.5問題與討論465第27章 步進(jìn)電機(jī)輸出實(shí)驗(yàn)27.1硬件設(shè)計(jì)與基本概念46627.1.11相激磁46727.1.22相激磁46727.1.31-2相激磁46827?1?4PMM8713介紹46927.2固件設(shè)計(jì)47327.3固件程序代碼的編譯與鏈接47427.4Windows程序, VB設(shè)計(jì)47627.5問題與討論477第28章 I2C接口輸入/輸出實(shí)驗(yàn)28.1硬件設(shè)計(jì)與基本概念47828.2固件設(shè)計(jì)48128.3固件程序代碼的編譯與鏈接48328.4Windows程序, VB設(shè)計(jì)48428.5問題與討論485第29章 A/D轉(zhuǎn)換器與D/A轉(zhuǎn)換器的輸入/輸出實(shí)驗(yàn)29.1硬件設(shè)計(jì)與基本概念48629.1.1A/D轉(zhuǎn)換器48629.1.2D/A轉(zhuǎn)換器49029.2固件設(shè)計(jì)49329.2.1A/D轉(zhuǎn)換器的固件設(shè)計(jì)49329.2.2D/A轉(zhuǎn)換器的固件設(shè)計(jì)49629.3固件程序代碼的編譯與鏈接49729.4Windows程序, VB設(shè)計(jì)49829.5問題與討論499第30章 LCG繪圖型液晶顯示器輸出實(shí)驗(yàn)30.1硬件設(shè)計(jì)與基本概念50030.1.1繪圖型LCD50030.1.2繪圖型LCD控制指令集50330.1.3繪圖型LCD讀取與寫入時(shí)序圖50530.2固件設(shè)計(jì)50630.2.1LCG驅(qū)動(dòng)程序50630.2.2USB固件碼51330.3固件程序代碼的編譯與鏈接51630.4Windows程序, VB設(shè)計(jì)51730.5問題與討論518附錄A Cypress控制平臺的操作A.1EZUSB控制平臺總覽519A.2主畫面520A.3熱插拔新的USB設(shè)備521A.4各種工具欄的使用524A.5故障排除526A.6控制平臺的進(jìn)階操作527A.7測試Unary Op工具欄上的按鈕功能528A.8測試制造商請求的工具欄 2100 系列的開發(fā)電路板 529A.9測試等時(shí)傳輸工具欄532A.10測試批量傳輸工具欄533A.11測試重置管線工具欄535A.12測試設(shè)置接口工具欄537A.13測試制造商請求工具欄 FX系列開發(fā)電路板A.14執(zhí)行Get Device Descriptor 操作來驗(yàn)證開發(fā)板的功能是否正確539A.15從EZUSB控制平臺中, 加載dev_io的范例并且加以執(zhí)行540A.16從Keil偵錯(cuò)應(yīng)用程序中, 加載dev_io范例程序代碼, 然后再加以執(zhí)行542A.17將dev_io 目標(biāo)文件移開, 且使用Keil IDE 集成開發(fā)環(huán)境 來重建545A.18在偵錯(cuò)器下執(zhí)行dev_io目標(biāo)文件, 并且使用具有偵錯(cuò)能力的IDE547A.19在EZUSB控制平臺下, 執(zhí)行ep_pair目標(biāo)文件A.20如何修改fw范例, 并在開發(fā)電路板上產(chǎn)生等時(shí)傳輸550附錄BEZUSB 2100系列及EZUSB FX系列引腳表B.1EZUSB 2100系列引腳表555B?2EZUSB FX系列引腳圖表561附錄C EZUSB FX寄存器總覽附錄D EEPROM燒錄方式
標(biāo)簽: EZ-USB USB 單片機(jī) 外圍設(shè)備
上傳時(shí)間: 2013-11-21
上傳用戶:努力努力再努力
一:微電腦設(shè)計(jì)11.1:微電腦基本結(jié)構(gòu)11.2:單芯片微電腦21.3:單芯片微電腦種類3二:MCS51架構(gòu)介紹62.1:接腳說明62.2:內(nèi)部構(gòu)造圖72.3:系統(tǒng)時(shí)序82.4:內(nèi)存結(jié)構(gòu)92.5:系統(tǒng)重制142.6:中斷結(jié)構(gòu)15三:LCD簡介243.1:簡介243.2:內(nèi)部結(jié)構(gòu)263.3:模塊指令29圖1-1 微電腦基本結(jié)構(gòu)1表1-1 MCS-51 單芯片比較.5圖2-1 MCS-51 接腳圖.6圖2-2 內(nèi)部結(jié)構(gòu)方塊圖8圖2-3 MCS-51 指令執(zhí)行時(shí)序.9圖2-4 MCS-51 內(nèi)部數(shù)據(jù)存儲器.10圖2-5 MCS-51 程序內(nèi)存結(jié)構(gòu)圖.10圖2-6 MCS-51內(nèi)部數(shù)據(jù)存儲器結(jié)構(gòu)11圖2-7 特殊功能緩存器12表2-1 特殊功能緩存器(SFC)初值設(shè)定.13圖2-8 數(shù)據(jù)存儲器結(jié)構(gòu)圖13表2-2 SFR重置設(shè)定值.15表2-3 中斷向量17圖2-9 中斷結(jié)構(gòu)方塊圖18表2-4 中斷致能緩存器IE19表2-5 中斷優(yōu)先權(quán)緩存器(IP) .20表2-6 中斷源優(yōu)先權(quán)順序21表2-7 計(jì)時(shí)/計(jì)數(shù)控制緩存器TCON.21表2-8 計(jì)時(shí)/計(jì)數(shù)模式設(shè)定.23圖3-1 LCD 的接口電路方圖24表3-1 LCD 接腳說明25表3-2 控制腳功能25表3-3 LCD 模塊地址對映26表3-4 字符產(chǎn)生器與字型碼對映27表3-5 LCD 內(nèi)字型表28表3-6 LCD 控制指令表32圖3-2 初始化流程圖33表4-1 功能說明34圖4-1 電路圖35圖4-2 程序流程圖36此篇專題主要研究是利用8051芯片制作出電子鐘,利用LCD當(dāng)作顯示介面,并且設(shè)置有鬧鈴功能,是很可以融入生活的小家電。關(guān)鍵詞: AT89C51,LCD,電子鍾,數(shù)字鐘,鬧鈴。四:電子鐘344.1:相關(guān)知識344.2:功能說明344.3`:流程圖36五:心得感想41六:程序代碼42附錄:MCS51指令集.54參考數(shù)據(jù)60
上傳時(shí)間: 2013-10-11
上傳用戶:butterfly2013
1、程序的基本格式先介紹二條偽指令:EQU ——標(biāo)號賦值偽指令ORG ——地址定義偽指令PIC16C5X在RESET后指令計(jì)算器PC被置為全“1”,所以PIC16C5X幾種型號芯片的復(fù)位地址為:PIC16C54/55:1FFHPIC16C56:3FFHPIC16C57/58:7FFH一般來說,PIC的源程序并沒有要求統(tǒng)一的格式,大家可以根據(jù)自己的風(fēng)格來編寫。但這里我們推薦一種清晰明了的格式TITLE This is ⋯⋯ ;程序標(biāo)題;--------------------------------------;名稱定義和變量定義;--------------------------------------F0 EQU 0RTCC EQU 1PC EQU 2STATUS EQU 3FSR EQU 4RA EQU 5RB EQU 6RC EQU 7┋PIC16C54 EQU 1FFH ;芯片復(fù)位地址PIC16C56 EQU 3FFHPIC16C57 EQU 7FFH;-----------------------------------------ORG PIC16C54 GOTO MAIN ;在復(fù)位地址處轉(zhuǎn)入主程序ORG 0 ;在0000H開始存放程序;-----------------------------------------;子程序區(qū);-----------------------------------------DELAY MOVLW 255┋RETLW 0;------------------------------------------;主程序區(qū);------------------------------------------MAINMOVLW B‘00000000’TRIS RB ;RB已由偽指令定義為6,即B口┋LOOPBSF RB,7 CALL DELAYBCF RB,7 CALL DELAY┋GOTO LOOP;-------------------------------------------END ;程序結(jié)束注:MAIN標(biāo)號一定要處在0頁面內(nèi)。2、程序設(shè)計(jì)基礎(chǔ)
標(biāo)簽: PIC 單片機(jī)程序設(shè)計(jì)
上傳時(shí)間: 2013-11-14
上傳用戶:cjf0304
摘要:TUSB3200 是由德州儀器日本公司推出的一款用于USB 接口連接的音頻數(shù)據(jù)控制芯片,該芯片內(nèi)置8052MCU 微處理器,能實(shí)現(xiàn)多聲道的錄音和播放功能。文中介紹了TUSB3200 的內(nèi)部工作原理、框圖及功能,并給出了用TUSB3200 設(shè)計(jì)的雙聲道輸入/輸出播錄的應(yīng)用電路。關(guān)鍵詞:USB 音頻接口 單片機(jī) TUBS3200 USB 音頻接口電路是帶USB 接口的音響設(shè)備和電腦多媒體外圍設(shè)備的必需器件。德州儀器公司推出的TUSB3200 是一款最適合于音響和電腦周邊設(shè)備的USB 接口用的音頻數(shù)據(jù)控制芯片。它采用52 腳扁平封裝,帶有內(nèi)置微處理器,價(jià)格低,可實(shí)現(xiàn)多聲道播放和錄音等功能,因而具有廣泛的用途。
標(biāo)簽: TUSB 3200 USB 內(nèi)置
上傳時(shí)間: 2013-11-23
上傳用戶:dumplin9
Σ-ΔA/D技術(shù)具有高分辨率、高線性度和低成本的特點(diǎn)。本文基于TI公司的MSP430F1121單片機(jī),介紹了采用內(nèi)置比較器和外圍電路構(gòu)成類似于Σ-△的高精度A/D實(shí)現(xiàn)方案,適合用于對溫度、壓力和電壓等緩慢變化信號的采集應(yīng)用。 在各種A/D轉(zhuǎn)換器中,最常用是逐次逼近法(SAR)A/D,該類器件具有轉(zhuǎn)換時(shí)間固定且快速的特點(diǎn),但難以顯著提高分辨率;積分型A/D 有較強(qiáng)的抗干擾能力,但轉(zhuǎn)換時(shí)間較長;過采樣Σ-ΔA/D由于其高分辨率,高線性度及低成本的特點(diǎn),正得到越來越多的應(yīng)用。根據(jù)這些特點(diǎn),本文以TI公司的MSP430F1121單片機(jī)實(shí)現(xiàn)了一種類似于Σ-ΔA/D技術(shù)的高精度轉(zhuǎn)換器方案。 MSP430F1121是16位RISC結(jié)構(gòu)的FLASH型單片機(jī),該芯片有14個(gè)雙向I/O口并兼有中斷功能,一個(gè)16位定時(shí)器兼有計(jì)數(shù)和定時(shí)功能。I/O口輸出高電平時(shí)電壓接近Vcc,低電平時(shí)接近Vss,因此,一個(gè)I/O口可以看作一位DAC,具有PWM功能。 該芯片具有一個(gè)內(nèi)置模擬電壓比較器,只須外接一只電阻和電容即可構(gòu)成一個(gè)類似于Σ-Δ技術(shù)的高精度單斜率A/D。一般而言,比較器在使用過程中會受到兩種因素的影響,一種是比較器輸入端的偏置電壓的積累;另一種是兩個(gè)輸入端電壓接近到一程度時(shí),輸出端會產(chǎn)生振蕩。 MSP430F1121單片機(jī)在比較器兩輸入端對應(yīng)的單片機(jī)端口與片外輸入信號的連接線路保持不變的情況下,可通過軟件將比較器兩輸入端與對應(yīng)的單片機(jī)端口的連接線路交換,并同時(shí)將比較器的輸出極性變換,這樣抵消了比較器的輸入端累積的偏置電壓。通過在內(nèi)部將輸出連接到低通濾波器后,即使在比較器輸入端兩比較電壓非常接近,經(jīng)過濾波后也不會出現(xiàn)輸出端的振蕩現(xiàn)象,從而消除了輸出端震蕩的問題。利用內(nèi)置比較器實(shí)現(xiàn)高精度A/D圖1是一個(gè)可直接使用的A/D轉(zhuǎn)換方案,該方案是一個(gè)高精度的積分型A/D轉(zhuǎn)換器。其基本原理是用單一的I/O端口,執(zhí)行1位的數(shù)模轉(zhuǎn)換,以比較器的輸出作反饋,來維持Vout與Vin相等。圖1:利用MSP430F1121實(shí)現(xiàn)的實(shí)用A/D轉(zhuǎn)換器電路方案。
標(biāo)簽: 用單片機(jī) 內(nèi)置 比較器 變換器
上傳時(shí)間: 2013-11-10
上傳用戶:lliuhhui
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1