a_bit equ 20h ;個(gè)位數(shù)存放處 b_bit equ 21h ;十位數(shù)存放處 temp equ 22h ;計(jì)數(shù)器寄存器 star: mov temp,#0 ;初始化計(jì)數(shù)器 stlop: acall display inc temp mov a,temp cjne a,#100,next ;=100重來 mov temp,#0 next: ljmp stlop ;顯示子程序 display: mov a,temp ;將temp中的十六進(jìn)制數(shù)轉(zhuǎn)換成10進(jìn)制 mov b,#10 ;10進(jìn)制/10=10進(jìn)制 div ab mov b_bit,a ;十位在a mov a_bit,b ;個(gè)位在b mov dptr,#numtab ;指定查表啟始地址 mov r0,#4 dpl1: mov r1,#250 ;顯示1000次 dplop: mov a,a_bit ;取個(gè)位數(shù) MOVC A,@A+DPTR ;查個(gè)位數(shù)的7段代碼 mov p0,a ;送出個(gè)位的7段代碼
標(biāo)簽: 直接驅(qū)動(dòng) 數(shù)碼管 計(jì)數(shù)器 程序
上傳時(shí)間: 2013-11-06
上傳用戶:lx9076
單片機(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ù),有“#”號(hào)表示。立即數(shù)就是存放在程序存儲(chǔ)器中的常數(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ù)存儲(chǔ)器以及位地址空間,具體的說就是:1、內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個(gè)單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。2、位尋址區(qū)。20H-2FH地址單元。3、特殊功能寄存器。專用寄存器除以單元地址形式給出外,還可以以寄存器符號(hào)形式給出。例如下面我們分析的一條指令 MOV IE,#85H 前面的學(xué)習(xí)我們已知道,中斷允許寄存器IE的地址是80H,那么也就是這條指令可以以MOV IE,#85H 的形式表述,也可以MOV 80H,#85H的形式表述。 關(guān)于數(shù)據(jù)存儲(chǔ)器RAM的內(nèi)部情況,請(qǐng)查看我們課程的第十二課。 直接尋址是唯一能訪問特殊功能寄存器的尋址方式! 大家來分析下面幾條指令: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ù)前面沒有加“#”號(hào)的,就表示后面的是一個(gè)地址地址(如,MOV 65H,A這條指令的65H就是一個(gè)單元地址)。 寄存器尋址 寄存器尋址的尋址范圍是:1、4個(gè)工作寄存器組共有32個(gè)通用寄存器,但在指令中只能使用當(dāng)前寄存器組(工作寄存器組的選擇在前面專用寄存器的學(xué)習(xí)中,我們已知道,是由程序狀態(tài)字PSW中的RS1和RS0來確定的),因此在使用前常需要通過對(duì)PSW中的RS1、RS0位的狀態(tài)設(shè)置,來進(jìn)行對(duì)當(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í)寄存器尋址方式就是對(duì)由PSW程序狀態(tài)字確定的工作寄存器組的R0-R7進(jìn)行讀/寫操作。 寄存器間接尋址 寄存間接尋址方式是指寄存器中存放的是操作數(shù)的地址,即操作數(shù)是通過寄存器間接得到的,因此稱為寄存器間接尋址。 MCS-51單片機(jī)規(guī)定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內(nèi)部或外部數(shù)據(jù)存儲(chǔ)器的256個(gè)單元。為什么會(huì)是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ù)存儲(chǔ)器時(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í)行后會(huì)把內(nèi)部RAM地址30H內(nèi)的值放到RAM的61H內(nèi)。 那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個(gè),R0、R1、DPTR、SP 寄存器間接尋址范圍總結(jié):1、內(nèi)部RAM低128單元。對(duì)內(nèi)部RAM低128單元的間接尋址,應(yīng)使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。 2、外部RAM 64KB。對(duì)外部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作間址寄存器的間接尋址方式。 寄存器間接尋址方式不可以訪問特殊功能寄存器!! 寄存器間接尋址也須以寄存器符號(hào)的形式表示,為了區(qū)別寄存器尋址我寄存器間接尋址的區(qū)別,在寄存器間接尋址方式式中,寄存器的名稱前面加前綴標(biāo)志“@”。 基址寄存器加變址寄存器的變址尋址 這種尋址方式以程序計(jì)數(shù)器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時(shí),把兩者的內(nèi)容相加,所得到的結(jié)果作為操作數(shù)的地址。這種方式常用于訪問程序存儲(chǔ)器ROM中的數(shù)據(jù)表格,即查表操作。變址尋址只能讀出程序內(nèi)存入的值,而不能寫入,也就是說變址尋址這種方式只能對(duì)程序存儲(chǔ)器進(jìn)行尋址,或者說它是專門針對(duì)程序存儲(chǔ)器的尋址方式。例:MOVC A,@A+DPTR這條指令的功能是把DPTR和A的內(nèi)容相加,再把所得到的程序存儲(chǔ)器地址單元的內(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。我們?cè)趯W(xué)習(xí)特殊功能寄存器時(shí)已知道,程序計(jì)數(shù)器PC是始終跟蹤著程序的執(zhí)行的。也就是說,PC的值是隨程序的執(zhí)行情況自動(dòng)改變的,我們不可以隨便的給PC賦值。而DPTR是一個(gè)數(shù)據(jù)指針,我們就可以給空上數(shù)據(jù)指針DPTR進(jìn)行賦值。我們?cè)倏粗噶頜OVC 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)用中,可能就會(huì)有一個(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ī)有位處理功能,可以對(duì)數(shù)據(jù)位進(jìn)行操作,因此就有相應(yīng)的位尋址方式。所謂位尋址,就是對(duì)內(nèi)部RAM或可位尋址的特殊功能寄存器SFR內(nèi)的某個(gè)位,直接加以置位為1或復(fù)位為0。 位尋址的范圍,也就是哪些部份可以進(jìn)行位尋址: 1、我們?cè)诘谑n學(xué)習(xí)51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)時(shí),我們已知道在單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM的低128單元中有一個(gè)區(qū)域叫位尋址區(qū)。它的單元地址是20H-2FH。共有16個(gè)單元,一個(gè)單元是8位,所以位尋址區(qū)共有128位。這128位都單獨(dú)有一個(gè)位地址,其位地址的名字就是00H-7FH。這里就有一個(gè)比較麻煩的問題需要大家理解清楚了。我們?cè)谇懊娴膶W(xué)習(xí)中00H、01H。。。。7FH等等,所表示的都是一個(gè)字節(jié)(或者叫單元地址),而在這里,這些數(shù)據(jù)都變成了位地址。我們?cè)谥噶钪校蛘咴诔绦蛑腥绾蝸韰^(qū)分它是一個(gè)單元地址還是一個(gè)位地址呢?這個(gè)問題,也就是我們現(xiàn)在正在研究的位尋址的一個(gè)重要問題。其實(shí),區(qū)分這些數(shù)據(jù)是位地址還是單元地址,我們都有相應(yīng)的指令形式的。這個(gè)問題我們?cè)诤竺娴闹噶钕到y(tǒng)學(xué)習(xí)中再加以論述。 2、對(duì)專用寄存器位尋址。這里要說明一下,不是所有的專用寄存器都可以位尋址的。具體哪些專用寄存器可以哪些專用寄存器不可以,請(qǐng)大家回頭去看看我們前面關(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、專用寄存器符號(hào)加位表示:例如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ò)題 請(qǐng)判斷下列的MCS-51單片機(jī)指令的書寫格式是否有錯(cuò),若有,請(qǐng)說明錯(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
MCS-51系列單片機(jī)芯片結(jié)構(gòu):2.1 MCS—51系列單片機(jī)的結(jié)構(gòu)原理2.1.1 MCS-51單片機(jī)邏輯結(jié)構(gòu) MCS-51單片機(jī)的系統(tǒng)結(jié)構(gòu)框圖如圖2.1所示。 圖2.1 MCS-51單片機(jī)的系統(tǒng)結(jié)構(gòu)框圖由圖2.1可以看出,單片機(jī)內(nèi)部主要包含下列幾個(gè)部件:u 一個(gè)8位CPU;u 一個(gè)時(shí)鐘電路;u 4Kbyte程序存儲(chǔ)器;u 128byte數(shù)據(jù)存儲(chǔ)器;u 兩個(gè)16位定時(shí)/計(jì)數(shù)器;u 64Kbyte擴(kuò)展總線控制電路;u 四個(gè)8-bit并行I/O端口;u 一個(gè)可編程串行接口;五個(gè)中斷源,其中包括兩個(gè)優(yōu)先級(jí)嵌套中斷 1. CPU CPU即中央處理器的簡稱,是單片機(jī)的核心部件,它完成各種運(yùn)算和控制操作,CPU由運(yùn)算器和控制器兩部分電路組成。(1)運(yùn)算器電路 運(yùn)算器電路包括ALU(算術(shù)邏輯單元)、ACC(累加器)、B寄存器、狀態(tài)寄存器、暫存器1和暫存器2等部件,運(yùn)算器的功能是進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算。 (2)控制器電路 控制器電路包括程序計(jì)數(shù)器PC、PC加1寄存器、指令寄存器、指令譯碼器、數(shù)據(jù)指針DPTR、堆棧指針SP、緩沖器以及定時(shí)與控制電路等。控制電路完成指揮控制工作,協(xié)調(diào)單片機(jī)各部分正常工作。
標(biāo)簽: MCS 51 單片機(jī) 芯片結(jié)構(gòu)
上傳時(shí)間: 2013-10-27
上傳用戶:tianyi223
MSP430系列flash型超低功耗16位單片機(jī)MSP430系列單片機(jī)在超低功耗和功能集成等方面有明顯的特點(diǎn)。該系列單片機(jī)自問世以來,頗受用戶關(guān)注。在2000年該系列單片機(jī)又出現(xiàn)了幾個(gè)FLASH型的成員,它們除了仍然具備適合應(yīng)用在自動(dòng)信號(hào)采集系統(tǒng)、電池供電便攜式裝置、超長時(shí)間連續(xù)工作的設(shè)備等領(lǐng)域的特點(diǎn)外,更具有開發(fā)方便、可以現(xiàn)場編程等優(yōu)點(diǎn)。這些技術(shù)特點(diǎn)正是應(yīng)用工程師特別感興趣的。《MSP430系列FLASH型超低功耗16位單片機(jī)》對(duì)該系列單片機(jī)的FLASH型成員的原理、結(jié)構(gòu)、內(nèi)部各功能模塊及開發(fā)方法與工具作詳細(xì)介紹。MSP430系列FLASH型超低功耗16位單片機(jī) 目錄 第1章 引 論1.1 MSP430系列單片機(jī)1.2 MSP430F11x系列1.3 MSP430F11x1系列1.4 MSP430F13x系列1.5 MSP430F14x系列第2章 結(jié)構(gòu)概述2.1 引 言2.2 CPU2.3 程序存儲(chǔ)器2.4 數(shù)據(jù)存儲(chǔ)器2.5 運(yùn)行控制2.6 外圍模塊2.7 振蕩器與時(shí)鐘發(fā)生器第3章 系統(tǒng)復(fù)位、中斷及工作模式3.1 系統(tǒng)復(fù)位和初始化3.1.1 引 言3.1.2 系統(tǒng)復(fù)位后的設(shè)備初始化3.2 中斷系統(tǒng)結(jié)構(gòu)3.3 MSP430 中斷優(yōu)先級(jí)3.3.1 中斷操作--復(fù)位/NMI3.3.2 中斷操作--振蕩器失效控制3.4 中斷處理 3.4.1 SFR中的中斷控制位3.4.2 中斷向量地址3.4.3 外部中斷3.5 工作模式3.5.1 低功耗模式0、1(LPM0和LPM1)3.5.2 低功耗模式2、3(LPM2和LPM3)3.5.3 低功耗模式4(LPM4)22 3.6 低功耗應(yīng)用的要點(diǎn)23第4章 存儲(chǔ)空間4.1 引 言4.2 存儲(chǔ)器中的數(shù)據(jù)4.3 片內(nèi)ROM組織4.3.1 ROM 表的處理4.3.2 計(jì)算分支跳轉(zhuǎn)和子程序調(diào)用4.4 RAM 和外圍模塊組織4.4.1 RAM4.4.2 外圍模塊--地址定位4.4.3 外圍模塊--SFR4.5 FLASH存儲(chǔ)器4.5.1 FLASH存儲(chǔ)器的組織4.5.2 FALSH存儲(chǔ)器的數(shù)據(jù)結(jié)構(gòu)4.5.3 FLASH存儲(chǔ)器的控制寄存器4.5.4 FLASH存儲(chǔ)器的安全鍵值與中斷4.5.5 經(jīng)JTAG接口訪問FLASH存儲(chǔ)器39第5章 16位CPU5.1 CPU寄存器5.1.1 程序計(jì)數(shù)器PC5.1.2 系統(tǒng)堆棧指針SP5.1.3 狀態(tài)寄存器SR5.1.4 常數(shù)發(fā)生寄存器CG1和CG25.2 尋址模式5.2.1 寄存器模式5.2.2 變址模式5.2.3 符號(hào)模式5.2.4 絕對(duì)模式5.2.5 間接模式5.2.6 間接增量模式5.2.7 立即模式5.2.8 指令的時(shí)鐘周期與長度5.3 指令組概述5.3.1 雙操作數(shù)指令5.3.2 單操作數(shù)指令5.3.3 條件跳轉(zhuǎn)5.3.4 模擬指令的簡短格式5.3.5 其他指令第6章 硬件乘法器6.1 硬件乘法器6.2 硬件乘法器操作6.2.1 無符號(hào)數(shù)相乘(16位×16位、16位×8位、8位×16位、8位×8位)6.2.2 有符號(hào)數(shù)相乘(16位×16位、16位×8位、8位×16位、8位×8位)6.2.3 無符號(hào)數(shù)乘加(16位×16位、16位×8位、8位×16位、8位×8位)6.2.4 有符號(hào)數(shù)乘加(16位×16位、16位×8位、8位×16位、8位×8位)6.3 硬件乘法器寄存器6.4 硬件乘法器的軟件限制6.4.1 尋址模式6.4.2 中斷程序6.4.3 MACS第7章 基礎(chǔ)時(shí)鐘模塊7.1 基礎(chǔ)時(shí)鐘模塊7.2 LFXT1與XT27.2.1 LFXT1振蕩器7.2.2 XT2振蕩器7.2.3 振蕩器失效檢測7.2.4 XT振蕩器失效時(shí)的DCO7.3 DCO振蕩器7.3.1 DCO振蕩器的特性7.3.2 DCO調(diào)整器7.4 時(shí)鐘與運(yùn)行模式7.4.1 由PUC啟動(dòng)7.4.2 基礎(chǔ)時(shí)鐘調(diào)整7.4.3 用于低功耗的基礎(chǔ)時(shí)鐘特性7.4.4 選擇晶振產(chǎn)生MCLK7.4.5 時(shí)鐘信號(hào)的同步7.5 基礎(chǔ)時(shí)鐘模塊控制寄存器7.5.1 DCO時(shí)鐘頻率控制7.5.2 振蕩器與時(shí)鐘控制寄存器7.5.3 SFR控制位第8章 輸入輸出端口8.1 引 言8.2 端口P1、P28.2.1 P1、P2的控制寄存器8.2.2 P1、P2的原理8.2.3 P1、P2的中斷控制功能8.3 端口P3、P4、P5和P68.3.1 端口P3、P4、P5和P6的控制寄存器8.3.2 端口P3、P4、P5和P6的端口邏輯第9章 看門狗定時(shí)器WDT9.1 看門狗定時(shí)器9.2 WDT寄存器9.3 WDT中斷控制功能9.4 WDT操作第10章 16位定時(shí)器Timer_A10.1 引 言10.2 Timer_A的操作10.2.1 定時(shí)器模式控制10.2.2 時(shí)鐘源選擇和分頻10.2.3 定時(shí)器啟動(dòng)10.3 定時(shí)器模式10.3.1 停止模式10.3.2 增計(jì)數(shù)模式10.3.3 連續(xù)模式10.3.4 增/減計(jì)數(shù)模式10.4 捕獲/比較模塊10.4.1 捕獲模式10.4.2 比較模式10.5 輸出單元10.5.1 輸出模式10.5.2 輸出控制模塊10.5.3 輸出舉例10.6 Timer_A的寄存器10.6.1 Timer_A控制寄存器TACTL10.6.2 Timer_A寄存器TAR10.6.3 捕獲/比較控制寄存器CCTLx10.6.4 Timer_A中斷向量寄存器10.7 Timer_A的UART應(yīng)用 第11章 16位定時(shí)器Timer_B11.1 引 言11.2 Timer_B的操作11.2.1 定時(shí)器長度11.2.2 定時(shí)器模式控制11.2.3 時(shí)鐘源選擇和分頻11.2.4 定時(shí)器啟動(dòng)11.3 定時(shí)器模式11.3.1 停止模式11.3.2 增計(jì)數(shù)模式11.3.3 連續(xù)模式11.3.4 增/減計(jì)數(shù)模式11.4 捕獲/比較模塊11.4.1 捕獲模式11.4.2 比較模式11.5 輸出單元11.5.1 輸出模式11.5.2 輸出控制模塊11.5.3 輸出舉例11.6 Timer_B的寄存器11.6.1 Timer_B控制寄存器TBCTL11.6.2 Timer_B寄存器TBR11.6.3 捕獲/比較控制寄存器CCTLx11.6.4 Timer_B中斷向量寄存器第12章 USART通信模塊的UART功能12.1 異步模式12.1.1 異步幀格式12.1.2 異步通信的波特率發(fā)生器12.1.3 異步通信格式12.1.4 線路空閑多機(jī)模式12.1.5 地址位多機(jī)通信格式12.2 中斷和中斷允許12.2.1 USART接收允許12.2.2 USART發(fā)送允許12.2.3 USART接收中斷操作12.2.4 USART發(fā)送中斷操作12.3 控制和狀態(tài)寄存器12.3.1 USART控制寄存器UCTL12.3.2 發(fā)送控制寄存器UTCTL12.3.3 接收控制寄存器URCTL12.3.4 波特率選擇和調(diào)整控制寄存器12.3.5 USART接收數(shù)據(jù)緩存URXBUF12.3.6 USART發(fā)送數(shù)據(jù)緩存UTXBUF12.4 UART模式,低功耗模式應(yīng)用特性12.4.1 由UART幀啟動(dòng)接收操作12.4.2 時(shí)鐘頻率的充分利用與UART的波特率12.4.3 多處理機(jī)模式對(duì)節(jié)約MSP430資源的支持12.5 波特率計(jì)算 第13章 USART通信模塊的SPI功能13.1 USART同步操作13.1.1 SPI模式中的主模式13.1.2 SPI模式中的從模式13.2 中斷與控制功能 13.2.1 USART接收/發(fā)送允許位及接收操作13.2.2 USART接收/發(fā)送允許位及發(fā)送操作13.2.3 USART接收中斷操作13.2.4 USART發(fā)送中斷操作13.3 控制與狀態(tài)寄存器13.3.1 USART控制寄存器13.3.2 發(fā)送控制寄存器UTCTL13.3.3 接收控制寄存器URCTL13.3.4 波特率選擇和調(diào)制控制寄存器13.3.5 USART接收數(shù)據(jù)緩存URXBUF13.3.6 USART發(fā)送數(shù)據(jù)緩存UTXBUF第14章 比較器Comparator_A14.1 概 述14.2 比較器A原理14.2.1 輸入模擬開關(guān)14.2.2 輸入多路切換14.2.3 比較器14.2.4 輸出濾波器14.2.5 參考電平發(fā)生器14.2.6 比較器A中斷電路14.3 比較器A控制寄存器14.3.1 控制寄存器CACTL114.3.2 控制寄存器CACTL214.3.3 端口禁止寄存器CAPD14.4 比較器A應(yīng)用14.4.1 模擬信號(hào)在數(shù)字端口的輸入14.4.2 比較器A測量電阻元件14.4.3 兩個(gè)獨(dú)立電阻元件的測量系統(tǒng)14.4.4 比較器A檢測電流或電壓14.4.5 比較器A測量電流或電壓14.4.6 測量比較器A的偏壓14.4.7 比較器A的偏壓補(bǔ)償14.4.8 增加比較器A的回差第15章 模數(shù)轉(zhuǎn)換器ADC1215.1 概 述15.2 ADC12的工作原理及操作15.2.1 ADC內(nèi)核15.2.2 參考電平15.3 模擬輸入與多路切換15.3.1 模擬多路切換15.3.2 輸入信號(hào)15.3.3 熱敏二極管的使用15.4 轉(zhuǎn)換存儲(chǔ)15.5 轉(zhuǎn)換模式15.5.1 單通道單次轉(zhuǎn)換模式15.5.2 序列通道單次轉(zhuǎn)換模式15.5.3 單通道重復(fù)轉(zhuǎn)換模式15.5.4 序列通道重復(fù)轉(zhuǎn)換模式15.5.5 轉(zhuǎn)換模式之間的切換15.5.6 低功耗15.6 轉(zhuǎn)換時(shí)鐘與轉(zhuǎn)換速度15.7 采 樣15.7.1 采樣操作15.7.2 采樣信號(hào)輸入選擇15.7.3 采樣模式15.7.4 MSC位的使用15.7.5 采樣時(shí)序15.8 ADC12控制寄存器15.8.1 控制寄存器ADC12CTL0和ADC12CTL115.8.2 轉(zhuǎn)換存儲(chǔ)寄存器ADC12MEMx15.8.3 控制寄存器ADC12MCTLx15.8.4 中斷標(biāo)志寄存器ADC12IFG.x和中斷允許寄存器ADC12IEN.x15.8.5 中斷向量寄存器ADC12IV15.9 ADC12接地與降噪第16章 FLASH型芯片的開發(fā)16.1 開發(fā)系統(tǒng)概述16.1.1 開發(fā)技術(shù)16.1.2 MSP430系列的開發(fā)16.1.3 MSP430F系列的開發(fā)16.2 FLASH型的FET開發(fā)方法16.2.1 MSP430芯片的JTAG接口16.2.2 FLASH型仿真工具16.3 FLASH型的BOOT ROM16.3.1 標(biāo)準(zhǔn)復(fù)位過程和進(jìn)入BSL過程16.3.2 BSL的UART協(xié)議16.3.3 數(shù)據(jù)格式16.3.4 退出BSL16.3.5 保護(hù)口令16.3.6 BSL的內(nèi)部設(shè)置和資源附錄A 尋址空間附錄B 指令說明B.1 指令匯總B.2 指令格式B.3 不增加ROM開銷的模擬指令B.4 指令說明(字母順序)B.5 用幾條指令模擬的宏指令附錄C MSP430系列單片機(jī)參數(shù)表附錄D MSP430系列單片機(jī)封裝形式附錄E MSP430系列器件命名
上傳時(shí)間: 2014-04-28
上傳用戶:sssnaxie
單片機(jī)應(yīng)用技術(shù)選編(3) 目錄 第一章 單片機(jī)的綜合應(yīng)用技術(shù)1.1 8098單片機(jī)存儲(chǔ)器的擴(kuò)展技術(shù)1.2 87C196KC單片機(jī)的DMA功能1.3 MCS?96系列單片機(jī)高精度接口設(shè)計(jì)1.4 利用PC機(jī)的8096軟件開發(fā)系統(tǒng)1.5 EPROM模擬器及其應(yīng)用1.6 MCS?51智能反匯編軟件的設(shè)計(jì)與實(shí)現(xiàn)1.7 MCS?51系列軟件設(shè)計(jì)與調(diào)試中一個(gè)值得注意的問題1.8 PL/M語言在微機(jī)開發(fā)系統(tǒng)中的應(yīng)用特性1.9 MCS?51單片機(jī)開發(fā)系統(tǒng)中的斷點(diǎn)產(chǎn)生1.10 C語言實(shí)型數(shù)與單片機(jī)浮點(diǎn)數(shù)之間數(shù)據(jù)格式的轉(zhuǎn)換1.11 微機(jī)控制系統(tǒng)初始化問題探討1.12 MCS?51中斷系統(tǒng)中的復(fù)位問題1.13 工業(yè)控制軟件的編程原則與編程技巧1.14 CMOS微處理器的功耗特性及其功耗控制原理和應(yīng)用1.15 基于PLL技術(shù)的A/D、D/A轉(zhuǎn)換器的設(shè)計(jì)1.16 智能儀器監(jiān)控程序的模塊化設(shè)計(jì)1.17 用軟件邏輯開關(guān)實(shí)現(xiàn)單片機(jī)的地址重疊使用1.18 8259A可編程中斷控制器與8031單片機(jī)接口電路及編程1.19 NSC810及其在各種微處理機(jī)中的應(yīng)用1.20 MC146818在使用中的幾個(gè)問題1.21 交流伺服系統(tǒng)中采用8155兼作雙口信箱存儲(chǔ)器的雙微機(jī)結(jié)構(gòu)1.22 實(shí)用漢字庫芯片的制作 第二章 新一代存儲(chǔ)器及邏輯器件2.1 新一代非易失性記憶元件--閃爍存儲(chǔ)器2.2 Flash存儲(chǔ)器及應(yīng)用2.3 隨機(jī)靜態(tài)存儲(chǔ)器HM628128及應(yīng)用2.4 非揮發(fā)性隨機(jī)存儲(chǔ)器NOVRAM2.5 ASIC的設(shè)計(jì)方法和設(shè)計(jì)工具2.6 GAL器件的編程方法及其應(yīng)用2.7 第三代可編程邏輯器件--高密EPLD輯器件EPLDFPGA設(shè)計(jì)轉(zhuǎn)換 第三章 數(shù)據(jù)采集、前向通道與測量技術(shù) 3.1 溫度傳感器通道接口技術(shù) 3.2 LM135系列精密溫度傳感器的原理和應(yīng)用 3.3 儀表放大器AD626的應(yīng)用 3.4 5G7650使用中應(yīng)注意的問題 3.5 用集成運(yùn)算放大器構(gòu)成電荷放大器組件 3.6 普通光電耦合器的線性應(yīng)用 3.7 高線性光耦合型隔離放大器的研制 3.8 一種隔離型16位單片機(jī)高精度模擬量接口3.9 單片16位A/D轉(zhuǎn)換器AD7701及其與8031單片機(jī)的串行接口3.10 雙積分型A/D轉(zhuǎn)換器與MCS?51系列單片機(jī)接口的新方法3.11 8031單片機(jī)與AD574A/D轉(zhuǎn)換器的最簡接口3.12 8098單片機(jī)A/D轉(zhuǎn)換接口及其程序設(shè)計(jì)3.13 提高A/D轉(zhuǎn)換器分辨率的實(shí)用方案3.14 用CD4051提高8098單片機(jī)內(nèi)10位A/D轉(zhuǎn)換器分辨率的方法3.15 單片機(jī)實(shí)現(xiàn)16位高速積分式A/D轉(zhuǎn)換器3.16 434位A/D轉(zhuǎn)換器MAX133(134)的原理及應(yīng)用3.17 AD574A應(yīng)用中應(yīng)注意的問題 3.18 CC14433使用中應(yīng)注意的問題 3.19 高精度寬范圍數(shù)據(jù)采集系統(tǒng)的溫度補(bǔ)償途徑 3.20 縮短ICL7135A/D采樣程序時(shí)間的一種方法 3.21 用單片機(jī)實(shí)現(xiàn)的數(shù)字式自動(dòng)增益控制 3.22 自動(dòng)量程轉(zhuǎn)換電路 3.23 雙積分型A/D的自動(dòng)量程切換電路 3.24 常用雙積分型A/D轉(zhuǎn)換器自換程功能的擴(kuò)展3.25 具有自動(dòng)量程轉(zhuǎn)換功能的單片機(jī)A/D接口3.26 混合型數(shù)據(jù)采集器SDM857的功能與應(yīng)用3.27 高速數(shù)據(jù)采集系統(tǒng)的傳輸接口3.28 SJ2000方向鑒別位移脈寬頻率檢測多用途專用集成電路3.29 多路高速高精度F/D專用集成電路3.30 數(shù)控帶通濾波器的實(shí)現(xiàn)及其典型應(yīng)用 第四章 控制系統(tǒng)與后向通道接口技術(shù)4.1 模糊邏輯與模糊控制4.2 自動(dòng)控制技術(shù)的新發(fā)展--模糊控制技術(shù)4.3 模糊控制表的確定原則4.4 變結(jié)構(gòu)模糊控制系統(tǒng)的實(shí)驗(yàn)研究4.5 新型集成模糊數(shù)據(jù)相關(guān)器NLX1124.6 功率固態(tài)繼電器的應(yīng)用4.7 雙向功率MOS固態(tài)繼電器4.8 SSR小型固態(tài)繼電器與PSSR功率參數(shù)固態(tài)繼電器4.9 JGD型多功能固態(tài)繼電器的原理和應(yīng)用4.10 光電耦合器在晶閘管觸發(fā)電路中的應(yīng)用4.11 一種廉價(jià)的12位D/A轉(zhuǎn)換器AD667及接口4.12 利用單片機(jī)構(gòu)成高精度PWM式12位D/A4.13 三相高頻PWM模塊SLE45204.14 專用集成電路TCA785及其應(yīng)用4.15 單片溫度控制器LM3911的應(yīng)用4.16 工業(yè)測控系統(tǒng)軟件設(shè)計(jì)的若干問題研究 第五章 人機(jī)對(duì)話通道接口技術(shù)5.1 廉價(jià)實(shí)用的8×8鍵盤5.2 單片機(jī)遙控鍵盤接口5.3 對(duì)8279鍵盤顯示接口的改進(jìn)5.4 用單片機(jī)8031的七根I/O線實(shí)現(xiàn)對(duì)鍵盤與顯示器的控制5.5 通用8位LED數(shù)碼管驅(qū)動(dòng)電路ICM7218B5.6 利用條圖顯示驅(qū)動(dòng)器LM3914組成100段LED顯示器的方法5.7 液晶顯示器的多極驅(qū)動(dòng)方式5.8 點(diǎn)陣式液晶顯示屏的構(gòu)造與應(yīng)用5.9 點(diǎn)陣式液晶顯示器圖形程序設(shè)計(jì)5.10 DMF5001N點(diǎn)陣式液晶顯示器和8098單片機(jī)的接口技術(shù)5.11 8098單片機(jī)與液晶顯示控制器HD61830接口5.12 利用PL/M語言對(duì)點(diǎn)陣式液晶顯示器進(jìn)行漢字程序設(shè)計(jì)5.13 語音合成器TMS 5220的開發(fā)與應(yīng)用5.14 制作T6668語音系統(tǒng)的一些技術(shù)問題5.15 單片機(jī)、單板機(jī)在屏顯系統(tǒng)中的應(yīng)用 第六章 多機(jī)通訊網(wǎng)絡(luò)與遙控技術(shù)6.1 用雙UART構(gòu)成的可尋址遙測點(diǎn)裝置--兼談如何組成系統(tǒng)6.2 IBM?PC微機(jī)與8098單片機(jī)的多機(jī)通訊6.3 80C196單片機(jī)與IBM?PC機(jī)的串行通訊6.4 IBM?PC與MCS?51多機(jī)通訊的研究6.5 半雙工方式傳送的單片機(jī)多機(jī)通信接口電路及軟件設(shè)計(jì)6.6 單片機(jī)與IBM/PC機(jī)通訊的新型接口及編程6.7 用光耦實(shí)現(xiàn)一點(diǎn)對(duì)多點(diǎn)的總線式通訊電路6.8 用EPROM作為通訊變換器實(shí)現(xiàn)多機(jī)通訊6.9 ICL232單電源雙RS?232發(fā)送/接收器及其應(yīng)用6.10 DTMF信號(hào)發(fā)送/接收電路芯片MT8880及應(yīng)用6.11 通用紅外線遙控系統(tǒng)6.12 8031單片機(jī)在遙控解碼方面的應(yīng)用 第七章 電源、電壓變換及電源監(jiān)視7.1 用于微機(jī)控制系統(tǒng)的高可靠性供電方法7.2 80C31單片機(jī)防掉電和抗干擾電源的設(shè)計(jì)7.3 可編程基準(zhǔn)電壓源7.4 電源電壓監(jiān)視器件M81953B7.5 檢出電壓可任意設(shè)定的電源電壓監(jiān)測器7.6 低壓降(LDO?Low Drop?Out)穩(wěn)壓器7.7 LM317三端可調(diào)穩(wěn)壓器應(yīng)用二例7.8 三端集成穩(wěn)壓器的擴(kuò)流應(yīng)用 第八章 可靠性與抗干擾技術(shù)8.1 數(shù)字電路的可靠性設(shè)計(jì)實(shí)踐與體會(huì)8.2 單片機(jī)容錯(cuò)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)8.3 微機(jī)測控系統(tǒng)的接地、屏蔽和電源供給8.4 ATE的抗干擾及接地技術(shù)8.5 微處理器監(jiān)控電路MAX690A/MAX692A8.6 電測儀表電路的實(shí)用抗干擾技術(shù)8.7 工業(yè)鍍鋅電阻爐溫度控制機(jī)的抗干擾措施8.8 一種簡單的抗干擾控制算法 ? 第九章 綜合應(yīng)用實(shí)例9.1 蔬菜灌溉相關(guān)參數(shù)的自動(dòng)檢測9.2 MH?214溶解氧測定儀9.3 COP840C單片機(jī)在液晶線控空調(diào)電腦控制器中的應(yīng)用9.4 單片機(jī)在電飯煲中的應(yīng)用9.5 用PIC單片機(jī)制作電扇自然風(fēng)發(fā)生器 第十章 文章摘要 一、 單片機(jī)的綜合應(yīng)用技術(shù)1.1 摩托羅拉8位單片機(jī)的應(yīng)用和開發(fā)1.2 NS公司的COP800系列8位單片機(jī)1.3 M68HC11與MCS?51單片機(jī)功能比較1.4 8098單片機(jī)8M存儲(chǔ)空間的擴(kuò)展技術(shù)1.5 80C196KC單片機(jī)的外部設(shè)備事件服務(wù)器1.6 一種多進(jìn)程實(shí)時(shí)控制系統(tǒng)的軟件設(shè)計(jì)1.7 開發(fā)單片機(jī)的結(jié)構(gòu)化高級(jí)語言PL/M?961.8 應(yīng)用軟件開發(fā)中的菜單接口技術(shù)1.9 單片機(jī)用戶系統(tǒng)EPROM中用戶程序的剖析方法1.10 BJS?98硬件、軟件典型實(shí)驗(yàn)1.11 FORTH語言系統(tǒng)的開發(fā)應(yīng)用1.12 在Transputer系統(tǒng)上用并行C語言編程的特點(diǎn)1.13 一種軟件擴(kuò)展8031內(nèi)部計(jì)數(shù)器簡易方法1.14 MCS 51系列單片機(jī)功能測試方法研究1.15 用CD 4520B設(shè)計(jì)對(duì)稱輸出分頻器的方法1.16 多路模擬開關(guān)CC 4051功能擴(kuò)展方法1.17 條形碼技術(shù)及其應(yīng)用系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)? 二、 新一代存儲(chǔ)器及邏輯器件2.1 一種多功能存儲(chǔ)器M6M 72561J2.2 串行E2PROM及其在智能儀器中的應(yīng)用2.3 新型高性能的AT24C系列串行E2PROM2.4 2K~512K EPROM編程卡2.5 電子盤的設(shè)計(jì)與實(shí)現(xiàn)2.6 NS GAL器件的封裝標(biāo)簽、類型代碼和編程結(jié)構(gòu)間的關(guān)系 三、數(shù)據(jù)采集、前向通道與測量技術(shù)3.1 儀器用精密運(yùn)放CA3193的應(yīng)用3.2 集成電壓?電流轉(zhuǎn)換器XTR100的應(yīng)用3.3 瞬時(shí)浮點(diǎn)放大器及應(yīng)用3.4 隔離放大器289J及其應(yīng)用3.5 ICS?300系列新型加速度傳感器3.6 一種實(shí)用的壓力傳感器接口電路3.7 霍爾傳感器的應(yīng)用3.8 一種對(duì)多個(gè)傳感器進(jìn)行調(diào)理的方法3.9 兩線制壓力變送器3.10 小信號(hào)雙線變送器XTR101的使用3.11 兩線長距離頻率傳輸壓力變送器的設(shè)計(jì)3.12 測溫元件AD590及其應(yīng)用3.13 熱敏電阻應(yīng)用動(dòng)態(tài)3.14 一種組合式A/D、D/A轉(zhuǎn)換器的設(shè)計(jì)3.15 一種復(fù)合式A/D轉(zhuǎn)換器3.16 TLC549串行輸出ADC及其應(yīng)用3.17 提高A/D轉(zhuǎn)換精度的方法--雙通道A/D轉(zhuǎn)換3.18 模數(shù)轉(zhuǎn)換器ICL7135的0~3.9999V顯示3.19 微型光耦合器3.20 一種高精度的分壓器電路3.21 利用單片機(jī)軟件作熱電偶非線性補(bǔ)償3.22 三線制RTD測量電路及應(yīng)用中要注意的問題3.23 微伏信號(hào)高精度檢測中極易被忽略的問題3.24 寬范圍等分辨率精密測量法3.25 傳感器在線校準(zhǔn)系統(tǒng)3.26 一種高精度的熱敏電阻測溫電路3.27 超聲波專用集成電路LM1812的原理與應(yīng)用3.28 旋轉(zhuǎn)變壓器數(shù)字化檢測及其在8098單片機(jī)控制伺服系統(tǒng)中的應(yīng)用3.29 單片集成兩端式感溫電流源AD590在溫度測控系統(tǒng)中的應(yīng)用?3.30 數(shù)字示波器和單片機(jī)構(gòu)成的自動(dòng)測試系統(tǒng)3.31 霍爾效應(yīng)式功率測量研究 四、 控制系統(tǒng)與后向通道接口技術(shù)4.1 模糊邏輯與模糊控制(實(shí)用模糊控制講座之一)4.2 紅綠燈模糊控制器(實(shí)用模糊控制講座之二)4.3 國外模糊技術(shù)新產(chǎn)品4.4 交流串級(jí)調(diào)速雙環(huán)模糊PI單片機(jī)控制系統(tǒng)4.5 時(shí)序控制專用集成電路LT156及其應(yīng)用4.6 電池充電控制集成電路4.7 雙向晶閘管4.8 雙向可控硅的自觸發(fā)電路及其應(yīng)用4.9 微處理器晶閘管頻率自適應(yīng)觸發(fā)器4.10 F18系列晶閘管模塊介紹4.11 集成電路UAA4002的原理及應(yīng)用4.12 IGBT及其驅(qū)動(dòng)電路4.13 TWH8751應(yīng)用集錦4.14 結(jié)構(gòu)可變式計(jì)算機(jī)工業(yè)控制系統(tǒng)設(shè)計(jì)4.15 單片機(jī)控制的音響編輯器 五、 人機(jī)對(duì)話通道接口技術(shù)5.1 5×7點(diǎn)陣LED智能顯示器的應(yīng)用5.2 基于8031串行口的LED電子廣告牌5.3 點(diǎn)陣液晶顯示控制器與計(jì)算機(jī)的接口技術(shù)5.4 單片機(jī)控制可編程液晶顯示系統(tǒng)5.5 大規(guī)模語言集成電路應(yīng)用綜述5.6 最新可編程語言集成電路MSSIO61的應(yīng)用5.7 用PC打印機(jī)接口擴(kuò)展并行接口 六、 多機(jī)系統(tǒng)、網(wǎng)絡(luò)與遙控技術(shù)6.1 用8098單片機(jī)構(gòu)成的分布式測溫系統(tǒng)6.2 平衡接口EIA?422和EIA485設(shè)計(jì)指南6.3 I2C BUS及其系統(tǒng)設(shè)計(jì)6.4 摩托羅拉可尋址異步接受/發(fā)送器6.5 用5V供電的RS232C接口芯片6.6 四通道紅外遙控器6.7 TA7333P和TA7657P的功能及應(yīng)用 七、 電源、電壓變換及電源監(jiān)視7.1 單片機(jī)控制的可控硅三相電源調(diào)壓穩(wěn)壓技術(shù)7.2 集成開關(guān)電源控制器MC34063的原理及應(yīng)用7.3 LM299精密基準(zhǔn)電壓源7.4 集成過壓保護(hù)器的應(yīng)用7.5 3V供電的革命7.6 HMOS微機(jī)的超低電源電壓運(yùn)行技術(shù) 八、 可靠性與抗干擾設(shè)計(jì)8.1 淺談艦船電磁兼容與可靠性 九、 綜合應(yīng)用實(shí)例9.1 8098單片機(jī)交流電氣參數(shù)測試系統(tǒng)的設(shè)計(jì)和應(yīng)用9.2 主軸回轉(zhuǎn)誤差補(bǔ)償控制器9.3 FWK?A型大功率發(fā)射臺(tái)微機(jī)控制系統(tǒng)9.4 高性能壓控振蕩型精密波形發(fā)生器ICL8038及應(yīng)用9.5 單片機(jī)COP 840C在洗碗機(jī)中的應(yīng)用
標(biāo)簽: 單片機(jī) 應(yīng)用技術(shù)
上傳時(shí)間: 2013-11-10
上傳用戶:lijinchuan
單片機(jī)應(yīng)用技術(shù)選編(1) 第一章 單片機(jī)系統(tǒng)綜合應(yīng)用技術(shù) 11.1 且使用 8098單片機(jī)的幾點(diǎn)體會(huì) 2 1.2 單片機(jī)的冷啟動(dòng)與熱啟動(dòng) 31.3 大容量動(dòng)態(tài)存儲(chǔ)器在單片機(jī)系統(tǒng)中的應(yīng)用111.4 MCS-51單片機(jī)系統(tǒng)中動(dòng)態(tài) RAM的刷新技巧141.5 MCS-51單片機(jī)系統(tǒng)中外RAM空間超64KB的擴(kuò)展方法161.6 8031單片機(jī)P0口和P2口的應(yīng)用開發(fā) 181.7 74LS164在 8031單片機(jī)中的兩種用法261.8 用于 8031單片機(jī)的快速I/O接口281.9 MCS-51定時(shí)器定時(shí)常數(shù)初值的精確設(shè)定法301.10 8253的翻轉(zhuǎn)問題及 MC6840的替代方法321.11 MCS-51單片機(jī)外部中斷源的擴(kuò)展設(shè)計(jì)351.12 MCS-51單片機(jī)多外中斷擴(kuò)展方法401.13 用優(yōu)先權(quán)編碼器74LS348擴(kuò)展51系列單片機(jī)的外中斷源421.14 用優(yōu)先權(quán)編碼器74LS148擴(kuò)展51系列單片機(jī)的外中斷源471.15 8031單片機(jī)與 BG5119A漢字庫的接口方法521.16 可背插 SRAM的日歷時(shí)鐘 DS1216及其應(yīng)用551.17 實(shí)時(shí)日歷時(shí)鐘集成電路MSM5832及其時(shí)序601.18 實(shí)時(shí)日歷時(shí)鐘集成電路MSM5832的接口技術(shù)631.19 實(shí)時(shí)時(shí)鐘/日歷芯片MC146818及其應(yīng)用671.20 與 SICE仿真器通訊的IBM-PC機(jī)通訊程序的改進(jìn)741.21 代碼形式參數(shù)匯編子程序的應(yīng)用821.22 單片機(jī)應(yīng)用系統(tǒng)中的查表程序設(shè)計(jì)861.23 用狀態(tài)綜合法設(shè)計(jì)鍵盤監(jiān)控程序901.24 單片機(jī)系統(tǒng)程序的加密技術(shù)961.25 MCS-96單片機(jī)程序保密的幾種方法1001.26 GAL輸出宏單元原理及使用105 1.27 通用陣列邏輯 GAL應(yīng)用于步進(jìn)電機(jī)控制實(shí)例110 第二章 傳感器與前向通道接口技術(shù)1172.1 集成溫度傳感器 LM134及其應(yīng)用1182.2 AD590集成溫度一電流傳感器原理及應(yīng)用1242.3 集成溫度傳感器 AD590的應(yīng)用1292.4 GS-800和 GS-130可燃?xì)怏w傳感器1332.5 集成化霍爾開關(guān)傳感器1352.6 一種新穎實(shí)用的氧氣/頻率轉(zhuǎn)換電路1392.7 MCS-51單片機(jī)與數(shù)字式溫度傳感器的接口設(shè)計(jì)1422.8 數(shù)字式溫度傳感器 SWC與 8031的接口及應(yīng)用1452.9 低成本高精度壓力傳感器微機(jī)接口設(shè)計(jì)1472.10 峰值檢測電路原理及應(yīng)用1512.11 用 LF398制作的實(shí)用峰值和谷值保持電路1532.12 AD637集成真有效值轉(zhuǎn)換器1562.13 傳感器信號(hào)調(diào)理模塊 ZB311622.14 2B31模塊在稱重智能儀表中的應(yīng)用1662.15 傳感器信號(hào)調(diào)理模塊 2B30/2B31及其應(yīng)用1692.16 高精度光纖位移測量系統(tǒng)的電路設(shè)計(jì)1752.17 集成電壓一電流轉(zhuǎn)換器 XTR100的工作原理及應(yīng)用1792.18 傳感器信號(hào)變送器 F693及其應(yīng)用1852.19 一種用兩片 VFC32構(gòu)成的隔離放大器電路1912.20 實(shí)用線性隔離放大器1922.21 電橋放大電路中 7650的一些應(yīng)用問題1942.22 A/D轉(zhuǎn)換器 ICL7109的應(yīng)用研究1962.23 5G14433模數(shù)轉(zhuǎn)換器的啟停控制2002.24 ADC1130模數(shù)轉(zhuǎn)換器及其使用2042.25 16位 A/D轉(zhuǎn)換器 ADC1143及其與 80C31單片機(jī)的接口2082.26 串行 I/O D/A A/D轉(zhuǎn)換器與單片機(jī)的接口2132.27 單片機(jī)應(yīng)用系統(tǒng)中的數(shù)字化傳感器接口技術(shù)2162.28 ADVFC32 A/D轉(zhuǎn)換接口技術(shù)2202.29 V/F和 F/V轉(zhuǎn)換器 TD650原理與應(yīng)用2242.30 AD650與 MC-51單片機(jī)的接口技術(shù)2302.31 利用VCO電路與單片機(jī)接口實(shí)現(xiàn)A/D轉(zhuǎn)換2352.32 LM2907/2917系列F/V變換器在汽車檢測中的應(yīng)用2382.33 單信號(hào)多通道輸入法改善 A/D轉(zhuǎn)換器性能2412.34 用多片 A們轉(zhuǎn)換芯片提高 A/D轉(zhuǎn)換速度2452.35 實(shí)時(shí)數(shù)控增益調(diào)整與浮點(diǎn) ADC電路2492.36 電荷耦合器件的單片機(jī)驅(qū)動(dòng)2532.37 電荷耦合器件的結(jié)構(gòu)原理與單片機(jī)的軟件定時(shí)驅(qū)動(dòng)2582.38 利用模數(shù)轉(zhuǎn)換器提高轉(zhuǎn)換信號(hào)的線性度2622.39 利用微型機(jī)解決轉(zhuǎn)換中的非線性問題2682.40 利用非線性曲線存儲(chǔ)實(shí)現(xiàn)線性化的方法2702.41 輸出無非線性誤差的可變電壓源單臂電橋274 第三章 控制系統(tǒng)與后向通道接口技術(shù)2793.1 DAC1231與單片機(jī) 8031的接口技術(shù)2803.2 單路及多路 D八的光電隔離接口技術(shù)2843.3 光電隔離高壓驅(qū)動(dòng)器2903.4 TRAIC型光耦在 8031后向通道接口的應(yīng)用分析2913.5 GD-L型光控晶閘管輸出光耦合器2963.6 用于晶閘管過零觸發(fā)的幾種方式3003.7 固態(tài)繼電器3043.8 固態(tài)繼電器在交流電子開關(guān)中的應(yīng)用3083.9 JCG型參數(shù)固態(tài)繼電器3123.10 JCG型參數(shù)固態(tài)繼電器的應(yīng)用315 3.11 介紹幾種適用于印刷電路板的超小型電磁繼電器3193.12 用TWH8751集成電路構(gòu)成微機(jī)控制的三步進(jìn)電機(jī)驅(qū)動(dòng)電源3223.13 3-4相步進(jìn)電機(jī)控制器 5G87133253.14 5G0602報(bào)警電路及應(yīng)用3283.15 兩種新型溫控光控兀的應(yīng)用330 第四章 人機(jī)對(duì)話通道接口技術(shù)3334.1 單片機(jī)鍵盤接口設(shè)計(jì)3344.2 由電話機(jī)集成電路構(gòu)成的單片機(jī)鍵盤接口電路3364.3 用 GAL設(shè)計(jì)的一種編碼鍵盤接口3384.4 用 CMOS電路構(gòu)成的非編碼觸摸鍵盤3424.5 設(shè)計(jì)薄膜開關(guān)應(yīng)注意的一些問題3454.6 觸摸式電子開關(guān)集成電路 5G673及其應(yīng)用3504.7 8279用于撥碼盤及顯示器的接口設(shè)計(jì)3544.8 LED數(shù)碼管的構(gòu)造與特點(diǎn)3584.9 LED數(shù)碼管的集成驅(qū)動(dòng)器及配套器件3624.10 8279芯片的顯示接口分析及32位數(shù)碼管顯示驅(qū)動(dòng)電路設(shè)計(jì)366 4.11 用三端可調(diào)穩(wěn)壓塊代替LED顯示器的限流電阻3704.12 液晶顯示器件的構(gòu)造與特點(diǎn)3714.13 LCD七段顯示器與單片機(jī)的接口3744.14 液晶顯示器與單片機(jī)的接口技術(shù)3764.15 可編程LCD控制驅(qū)動(dòng)器PPD72253814.16 微機(jī)總線兼容的四位 LCD驅(qū)動(dòng)電路 TSC7211AM3874.17 使用8255的雙極性歸零脈沖驅(qū)動(dòng)液晶顯示器接口3914.18 DMC16230型 LCD顯示模塊的接口技術(shù)3954.19 點(diǎn)陣式液晶顯示器原理及應(yīng)用4034.20 實(shí)用液晶顯示電路4094.21 8031控制的 CRT顯示控制接口4144.22 用 8031控制多臺(tái)彩色顯示器的實(shí)現(xiàn)方法4194.23 高級(jí)語言處理器--T6668的結(jié)構(gòu)與典型電路4234.24 延長 T6668語言電路錄放時(shí)間的方法4294.25 T6668高級(jí)語音開發(fā)站4324.26 語言處理器 T6668在電話報(bào)警系統(tǒng)中的應(yīng)用4354.27 新型語音處理器YYH16439 第五章 網(wǎng)絡(luò)、通訊控制與多機(jī)系統(tǒng)4415.1 IBM-PC/XT和單片機(jī)通訊系統(tǒng)的設(shè)計(jì)4425.2 IBM-PC/XT微機(jī)與單片機(jī)的兩種通訊接口4485.3 MCS-51單片機(jī)與 IBMPC微機(jī)的串行通訊4525.4 中央控制端與 MCS-51單片機(jī)間的數(shù)據(jù)通訊4595.5 IBMPC機(jī)與 MCS-51單片機(jī)的快速數(shù)據(jù)通訊4665.6 8031單片機(jī)與 PC-1500計(jì)算機(jī)的通訊4735.7 多片 MCS-51系統(tǒng)的一種串行通訊方式4775.8 多單片機(jī)處理系統(tǒng)并行通訊的實(shí)現(xiàn)4815.9 半雙工遠(yuǎn)距離電流環(huán)多機(jī)通訊接口電路4855.10 多微機(jī)系統(tǒng)共享 RAM電路4905.11 串行通訊中的波特率設(shè)置4925.12 在MCS-51單片機(jī)的串行通訊中實(shí)現(xiàn)波特率的自動(dòng)整定4965.13 J274和 J275在微機(jī)分布式測控系統(tǒng)中的應(yīng)用5005.14 單電纜傳送雙向數(shù)據(jù)5045.15 新穎的多路遙控兀編譯碼器5055.16 DTMF在單片機(jī)無線數(shù)據(jù)通訊中的應(yīng)用5085.17 MCS-8031單片機(jī)在紅外遙控裝置中的應(yīng)用5155.18 一種實(shí)用光纖數(shù)字遙測系統(tǒng)5185.19 智能儀表通訊系統(tǒng)中一種冗余通道的設(shè)計(jì)5245.20 EIARS-232-C接口使用中的幾個(gè)問題528 第六章 電源、電源變換與電源監(jiān)視5316.1 電源擴(kuò)展電路5326.2 一種簡單的直流三倍壓電路533 6.3 直流電源變換集成電路5356.4 直流電壓變換器ICL7660的應(yīng)用5376.5 一種廉價(jià)高精密基準(zhǔn)電壓源5406.6 精密可調(diào)基準(zhǔn)電壓源及其應(yīng)用5416.7 引腳可編程精密基準(zhǔn)電壓源AD584及其應(yīng)用5496.8 幾種新型恒流源集成電路5536.9 CW334三端可調(diào)恒流源及應(yīng)用5576.10 電源電壓監(jiān)視用芯片TL7705CP簡介5606.11 電源電壓監(jiān)視用芯片TL7700簡介5646.12 WMS7705B電源監(jiān)視用芯片簡介5676.13 具有HMOS結(jié)構(gòu)的MCS-51系列單片機(jī)提供后備電源的方法570 第七章 系統(tǒng)抗于擾技術(shù)5757.1 微型計(jì)算機(jī)系統(tǒng)的抗干擾措施5767.2 計(jì)算機(jī)應(yīng)用系統(tǒng)抗干擾問題5797.3 微機(jī)在工業(yè)應(yīng)用中的抗干擾措施5867.4 利用電源監(jiān)視TL7705芯片的抗電源于擾新方法5917.5 利用電源監(jiān)視芯片WMS7705的抗電源干擾新方法5947.6 具有浪涌抑制能力的 TVP 6017.7 瞬變電壓抑制M極管TVP的特性及應(yīng)用6047.8 單片機(jī)實(shí)時(shí)控制軟件抗干擾編程方法的探討6077.9 一種簡單實(shí)用的微機(jī)死機(jī)自復(fù)位抗干擾技術(shù)6107.10 單片機(jī)程序的監(jiān)視保護(hù)6127.11 軟件 WATCHDOG系統(tǒng)615 7.12 一種實(shí)用的"看門狗"電路6187.13 高電壓下測量系統(tǒng)的抗干擾措施619 第八章 應(yīng)用實(shí)例6218.1 單片機(jī)在多功能函數(shù)發(fā)生器中的應(yīng)用6228.2 單片機(jī)波形發(fā)生器6298.3 單片機(jī)控制的調(diào)幅波發(fā)生器6338.4 用 8031單片機(jī)解調(diào)時(shí)統(tǒng)信號(hào)6368.5 具有 114DB動(dòng)態(tài)范圍的浮點(diǎn)數(shù)據(jù)采集系統(tǒng)6418.6 電熱恒溫箱單片微機(jī)控制系統(tǒng)6468.7 智能 I一、C丑測試儀的原理及設(shè)計(jì)6528.8 采用 LMS算法的單片機(jī)數(shù)字交流電橋6568.9 單片微機(jī)的數(shù)字相位測試儀6598.10 單片機(jī)的氣體流量測量6628.11 單片機(jī)的相關(guān)流量儀6688.12 723型可見分光光度計(jì)6758.13 多功能微電腦電子秤6798.14 智能路面回彈檢測儀6838.15 使用 CCD的單片機(jī)動(dòng)態(tài)布面檢測系統(tǒng)6878.16 使用 CCD的單片機(jī)激光衍射測徑系統(tǒng)6908.17 使用 CCD的單片機(jī)動(dòng)態(tài)線徑測量儀6958.18 使用CCD的單片機(jī)中型熱軋圓鋼直徑檢測儀7018.19 用 MCS-51單片微機(jī)實(shí)現(xiàn)織布機(jī)的監(jiān)測7058.20 單片機(jī)在工頻參量測試中的應(yīng)用7098.21 單片機(jī) 8098在直線電機(jī)控制中的應(yīng)用715?
標(biāo)簽: 單片機(jī) 應(yīng)用技術(shù)
上傳時(shí)間: 2014-12-28
上傳用戶:liufei
單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù):第1章 電磁干擾控制基礎(chǔ). 1.1 電磁干擾的基本概念1 1.1.1 噪聲與干擾1 1.1.2 電磁干擾的形成因素2 1.1.3 干擾的分類2 1.2 電磁兼容性3 1.2.1 電磁兼容性定義3 1.2.2 電磁兼容性設(shè)計(jì)3 1.2.3 電磁兼容性常用術(shù)語4 1.2.4 電磁兼容性標(biāo)準(zhǔn)6 1.3 差模干擾和共模干擾8 1.3.1 差模干擾8 1.3.2 共模干擾9 1.4 電磁耦合的等效模型9 1.4.1 集中參數(shù)模型9 1.4.2 分布參數(shù)模型10 1.4.3 電磁波輻射模型11 1.5 電磁干擾的耦合途徑14 1.5.1 傳導(dǎo)耦合14 1.5.2 感應(yīng)耦合(近場耦合)15 .1.5.3 電磁輻射耦合(遠(yuǎn)場耦合)15 1.6 單片機(jī)應(yīng)用系統(tǒng)電磁干擾控制的一般方法16 第2章 數(shù)字信號(hào)耦合與傳輸機(jī)理 2.1 數(shù)字信號(hào)與電磁干擾18 2.1.1 數(shù)字信號(hào)的開關(guān)速度與頻譜18 2.1.2 開關(guān)暫態(tài)電源尖峰電流噪聲22 2.1.3 開關(guān)暫態(tài)接地反沖噪聲24 2.1.4 高速數(shù)字電路的EMI特點(diǎn)25 2.2 導(dǎo)線阻抗與線間耦合27 2.2.1 導(dǎo)體交直流電阻的計(jì)算27 2.2.2 導(dǎo)體電感量的計(jì)算29 2.2.3 導(dǎo)體電容量的計(jì)算31 2.2.4 電感耦合分析32 2.2.5 電容耦合分析35 2.3 信號(hào)的長線傳輸36 2.3.1 長線傳輸過程的數(shù)學(xué)描述36 2.3.2 均勻傳輸線特性40 2.3.3 傳輸線特性阻抗計(jì)算42 2.3.4 傳輸線特性阻抗的重復(fù)性與阻抗匹配44 2.4 數(shù)字信號(hào)傳輸過程中的畸變45 2.4.1 信號(hào)傳輸?shù)娜肷浠?5 2.4.2 信號(hào)傳輸?shù)姆瓷浠?6 2.5 信號(hào)傳輸畸變的抑制措施49 2.5.1 最大傳輸線長度的計(jì)算49 2.5.2 端點(diǎn)的阻抗匹配50 2.6 數(shù)字信號(hào)的輻射52 2.6.1 差模輻射52 2.6.2 共模輻射55 2.6.3 差模和共模輻射比較57 第3章 常用元件的可靠性能與選擇 3.1 元件的選擇與降額設(shè)計(jì)59 3.1.1 元件的選擇準(zhǔn)則59 3.1.2 元件的降額設(shè)計(jì)59 3.2 電阻器60 3.2.1 電阻器的等效電路60 3.2.2 電阻器的內(nèi)部噪聲60 3.2.3 電阻器的溫度特性61 3.2.4 電阻器的分類與主要參數(shù)62 3.2.5 電阻器的正確選用66 3.3 電容器67 3.3.1 電容器的等效電路67 3.3.2 電容器的種類與型號(hào)68 3.3.3 電容器的標(biāo)志方法70 3.3.4 電容器引腳的電感量71 3.3.5 電容器的正確選用71 3.3.6 電容器使用注意事項(xiàng)73 3.4 電感器73 3.4.1 電感器的等效電路74 3.4.2 電感器使用的注意事項(xiàng)74 3.5 數(shù)字集成電路的抗干擾性能75 3.5.1 噪聲容限與抗干擾能力75 3.5.2 施密特集成電路的噪聲容限77 3.5.3 TTL數(shù)字集成電路的抗干擾性能78 3.5.4 CMOS數(shù)字集成電路的抗干擾性能79 3.5.5 CMOS電路使用中注意事項(xiàng)80 3.5.6 集成門電路系列型號(hào)81 3.6 高速CMOS 54/74HC系列接口設(shè)計(jì)83 3.6.1 54/74HC 系列芯片特點(diǎn)83 3.6.2 74HC與TTL接口85 3.6.3 74HC與單片機(jī)接口85 3.7 元器件的裝配工藝對(duì)可靠性的影響86 第4章 電磁干擾硬件控制技術(shù) 4.1 屏蔽技術(shù)88 4.1.1 電場屏蔽88 4.1.2 磁場屏蔽89 4.1.3 電磁場屏蔽91 4.1.4 屏蔽損耗的計(jì)算92 4.1.5 屏蔽體屏蔽效能的計(jì)算99 4.1.6 屏蔽箱的設(shè)計(jì)100 4.1.7 電磁泄漏的抑制措施102 4.1.8 電纜屏蔽層的屏蔽原理108 4.1.9 屏蔽與接地113 4.1.10 屏蔽設(shè)計(jì)要點(diǎn)113 4.2 接地技術(shù)114 4.2.1 概述114 4.2.2 安全接地115 4.2.3 工作接地117 4.2.4 接地系統(tǒng)的布局119 4.2.5 接地裝置和接地電阻120 4.2.6 地環(huán)路問題121 4.2.7 浮地方式122 4.2.8 電纜屏蔽層接地123 4.3 濾波技術(shù)126 4.3.1 濾波器概述127 4.3.2 無源濾波器130 4.3.3 有源濾波器138 4.3.4 鐵氧體抗干擾磁珠143 4.3.5 貫通濾波器146 4.3.6 電纜線濾波連接器149 4.3.7 PCB板濾波器件154 4.4 隔離技術(shù)155 4.4.1 光電隔離156 4.4.2 繼電器隔離160 4.4.3 變壓器隔離 161 4.4.4 布線隔離161 4.4.5 共模扼流圈162 4.5 電路平衡結(jié)構(gòu)164 4.5.1 雙絞線在平衡電路中的使用164 4.5.2 同軸電纜的平衡結(jié)構(gòu)165 4.5.3 差分放大器165 4.6 雙絞線的抗干擾原理及應(yīng)用166 4.6.1 雙絞線的抗干擾原理166 4.6.2 雙絞線的應(yīng)用168 4.7 信號(hào)線間的串?dāng)_及抑制169 4.7.1 線間串?dāng)_分析169 4.7.2 線間串?dāng)_的抑制173 4.8 信號(hào)線的選擇與敷設(shè)174 4.8.1 信號(hào)線型式的選擇174 4.8.2 信號(hào)線截面的選擇175 4.8.3 單股導(dǎo)線的阻抗分析175 4.8.4 信號(hào)線的敷設(shè)176 4.9 漏電干擾的防止措施177 4.10 抑制數(shù)字信號(hào)噪聲常用硬件措施177 4.10.1 數(shù)字信號(hào)負(fù)傳輸方式178 4.10.2 提高數(shù)字信號(hào)的電壓等級(jí)178 4.10.3 數(shù)字輸入信號(hào)的RC阻容濾波179 4.10.4 提高輸入端的門限電壓181 4.10.5 輸入開關(guān)觸點(diǎn)抖動(dòng)干擾的抑制方法181 4.10.6 提高器件的驅(qū)動(dòng)能力184 4.11 靜電放電干擾及其抑制184 第5章 主機(jī)單元配置與抗干擾設(shè)計(jì) 5.1 單片機(jī)主機(jī)單元組成特點(diǎn)186 5.1.1 80C51最小應(yīng)用系統(tǒng)186 5.1.2 低功耗單片機(jī)最小應(yīng)用系統(tǒng)187 5.2 總線的可靠性設(shè)計(jì)191 5.2.1 總線驅(qū)動(dòng)器191 5.2.2 總線的負(fù)載平衡192 5.2.3 總線上拉電阻的配置192 5.3 芯片配置與抗干擾193 5.3.1去耦電容配置194 5.3.2 數(shù)字輸入端的噪聲抑制194 5.3.3 數(shù)字電路不用端的處理195 5.3.4 存儲(chǔ)器的布線196 5.4 譯碼電路的可靠性分析197 5.4.1 過渡干擾與譯碼選通197 5.4.2 譯碼方式與抗干擾200 5.5 時(shí)鐘電路配置200 5.6 復(fù)位電路設(shè)計(jì)201 5.6.1 復(fù)位電路RC參數(shù)的選擇201 5.6.2 復(fù)位電路的可靠性與抗干擾分析202 5.6.3 I/O接口芯片的延時(shí)復(fù)位205 5.7 單片機(jī)系統(tǒng)的中斷保護(hù)問題205 5.7.1 80C51單片機(jī)的中斷機(jī)構(gòu)205 5.7.2 常用的幾種中斷保護(hù)措施205 5.8 RAM數(shù)據(jù)掉電保護(hù)207 5.8.1 片內(nèi)RAM數(shù)據(jù)保護(hù)207 5.8.2 利用雙片選的外RAM數(shù)據(jù)保護(hù)207 5.8.3 利用DS1210實(shí)現(xiàn)外RAM數(shù)據(jù)保護(hù)208 5.8.4 2 KB非易失性隨機(jī)存儲(chǔ)器DS1220AB/AD211 5.9 看門狗技術(shù)215 5.9.1 由單穩(wěn)態(tài)電路實(shí)現(xiàn)看門狗電路216 5.9.2 利用單片機(jī)片內(nèi)定時(shí)器實(shí)現(xiàn)軟件看門狗217 5.9.3 軟硬件結(jié)合的看門狗技術(shù)219 5.9.4 單片機(jī)內(nèi)配置看門狗電路221 5.10 微處理器監(jiān)控器223 5.10.1 微處理器監(jiān)控器MAX703~709/813L223 5.10.2 微處理器監(jiān)控器MAX791227 5.10.3 微處理器監(jiān)控器MAX807231 5.10.4 微處理器監(jiān)控器MAX690A/MAX692A234 5.10.5 微處理器監(jiān)控器MAX691A/MAX693A238 5.10.6 帶備份電池的微處理器監(jiān)控器MAX1691242 5.11 串行E2PROM X25045245 第6章 測量單元配置與抗干擾設(shè)計(jì) 6.1 概述255 6.2 模擬信號(hào)放大器256 6.2.1 集成運(yùn)算放大器256 6.2.2 測量放大器組成原理260 6.2.3 單片集成測量放大器AD521263 6.2.4 單片集成測量放大器AD522265 6.2.5 單片集成測量放大器AD526266 6.2.6 單片集成測量放大器AD620270 6.2.7 單片集成測量放大器AD623274 6.2.8 單片集成測量放大器AD624276 6.2.9 單片集成測量放大器AD625278 6.2.10 單片集成測量放大器AD626281 6.3 電壓/電流變換器(V/I)283 6.3.1 V/I變換電路..283 6.3.2 集成V/I變換器XTR101284 6.3.3 集成V/I變換器XTR110289 6.3.4 集成V/I變換器AD693292 6.3.5 集成V/I變換器AD694299 6.4 電流/電壓變換器(I/V)302 6.4.1 I/V變換電路302 6.4.2 RCV420型I/V變換器303 6.5 具有放大、濾波、激勵(lì)功能的模塊2B30/2B31305 6.6 模擬信號(hào)隔離放大器313 6.6.1 隔離放大器ISO100313 6.6.2 隔離放大器ISO120316 6.6.3 隔離放大器ISO122319 6.6.4 隔離放大器ISO130323 6.6.5 隔離放大器ISO212P326 6.6.6 由兩片VFC320組成的隔離放大器329 6.6.7 由兩光耦組成的實(shí)用線性隔離放大器333 6.7 數(shù)字電位器及其應(yīng)用336 6.7.1 非易失性數(shù)字電位器x9221336 6.7.2 非易失性數(shù)字電位器x9241343 6.8 傳感器供電電源的配置及抗干擾346 6.8.1 傳感器供電電源的擾動(dòng)補(bǔ)償347 6.8.2 單片集成精密電壓芯片349 6.8.3 A/D轉(zhuǎn)換器芯片提供基準(zhǔn)電壓350 6.9 測量單元噪聲抑制措施351 6.9.1 外部噪聲源的干擾及其抑制351 6.9.2 輸入信號(hào)串模干擾的抑制352 6.9.3 輸入信號(hào)共模干擾的抑制353 6.9.4 儀器儀表的接地噪聲355 第7章 D/A、A/D單元配置與抗干擾設(shè)計(jì) 7.1 D/A、A/D轉(zhuǎn)換器的干擾源357 7.2 D/A轉(zhuǎn)換原理及抗干擾分析358 7.2.1 T型電阻D/A轉(zhuǎn)換器359 7.2.2 基準(zhǔn)電源精度要求361 7.2.3 D/A轉(zhuǎn)換器的尖峰干擾362 7.3 典型D/A轉(zhuǎn)換器與單片機(jī)接口363 7.3.1 并行12位D/A轉(zhuǎn)換器AD667363 7.3.2 串行12位D/A轉(zhuǎn)換器MAX5154370 7.4 D/A轉(zhuǎn)換器與單片機(jī)的光電接口電路377 7.5 A/D轉(zhuǎn)換器原理與抗干擾性能378 7.5.1 逐次比較式ADC原理378 7.5.2 余數(shù)反饋比較式ADC原理378 7.5.3 雙積分ADC原理380 7.5.4 V/F ADC原理382 7.5.5 ∑Δ式ADC原理384 7.6 典型A/D轉(zhuǎn)換器與單片機(jī)接口387 7.6.18 位并行逐次比較式MAX 118387 7.6.28 通道12位A/D轉(zhuǎn)換器MAX 197394 7.6.3 雙積分式A/D轉(zhuǎn)換器5G14433399 7.6.4 V/F轉(zhuǎn)換器AD 652在A/D轉(zhuǎn)換器中的應(yīng)用403 7.7 采樣保持電路與抗干擾措施408 7.8 多路模擬開關(guān)與抗干擾措施412 7.8.1 CD4051412 7.8.2 AD7501413 7.8.3 多路開關(guān)配置與抗干擾技術(shù)413 7.9 D/A、A/D轉(zhuǎn)換器的電源、接地與布線416 7.10 精密基準(zhǔn)電壓電路與噪聲抑制416 7.10.1 基準(zhǔn)電壓電路原理417 7.10.2 引腳可編程精密基準(zhǔn)電壓源AD584418 7.10.3 埋入式齊納二極管基準(zhǔn)AD588420 7.10.4 低漂移電壓基準(zhǔn)MAX676/MAX677/MAX678422 7.10.5 低功率低漂移電壓基準(zhǔn)MAX873/MAX875/MAX876424 7.10.6 MC1403/MC1403A、MC1503精密電壓基準(zhǔn)電路430 第8章 功率接口與抗干擾設(shè)計(jì) 8.1 功率驅(qū)動(dòng)元件432 8.1.1 74系列功率集成電路432 8.1.2 75系列功率集成電路433 8.1.3 MOC系列光耦合過零觸發(fā)雙向晶閘管驅(qū)動(dòng)器435 8.2 輸出控制功率接口電路438 8.2.1 繼電器輸出驅(qū)動(dòng)接口438 8.2.2 繼電器—接觸器輸出驅(qū)動(dòng)電路439 8.2.3 光電耦合器—晶閘管輸出驅(qū)動(dòng)電路439 8.2.4 脈沖變壓器—晶閘管輸出電路440 8.2.5 單片機(jī)與大功率單相負(fù)載的接口電路441 8.2.6 單片機(jī)與大功率三相負(fù)載間的接口電路442 8.3 感性負(fù)載電路噪聲的抑制442 8.3.1 交直流感性負(fù)載瞬變?cè)肼暤囊种品椒?42 8.3.2 晶閘管過零觸發(fā)的幾種形式445 8.3.3 利用晶閘管抑制感性負(fù)載的瞬變?cè)肼?47 8.4 晶閘管變流裝置的干擾和抑制措施448 8.4.1 晶閘管變流裝置電氣干擾分析448 8.4.2 晶閘管變流裝置的抗干擾措施449 8.5 固態(tài)繼電器451 8.5.1 固態(tài)繼電器的原理和結(jié)構(gòu)451 8.5.2 主要參數(shù)與選用452 8.5.3 交流固態(tài)繼電器的使用454 第9章 人機(jī)對(duì)話單元配置與抗干擾設(shè)計(jì) 9.1 鍵盤接口抗干擾問題456 9.2 LED顯示器的構(gòu)造與特點(diǎn)458 9.3 LED的驅(qū)動(dòng)方式459 9.3.1 采用限流電阻的驅(qū)動(dòng)方式459 9.3.2 采用LM317的驅(qū)動(dòng)方式460 9.3.3 串聯(lián)二極管壓降驅(qū)動(dòng)方式462 9.4 典型鍵盤/顯示器接口芯片與單片機(jī)接口463 9.4.1 8位LED驅(qū)動(dòng)器ICM 7218B463 9.4.2 串行LED顯示驅(qū)動(dòng)器MAX 7219468 9.4.3 并行鍵盤/顯示器專用芯片8279482 9.4.4 串行鍵盤/顯示器專用芯片HD 7279A492 9.5 LED顯示接口的抗干擾措施502 9.5.1 LED靜態(tài)顯示接口的抗干擾502 9.5.2 LED動(dòng)態(tài)顯示接口的抗干擾506 9.6 打印機(jī)接口與抗干擾技術(shù)508 9.6.1 并行打印機(jī)標(biāo)準(zhǔn)接口信號(hào)508 9.6.2 打印機(jī)與單片機(jī)接口電路509 9.6.3 打印機(jī)電磁干擾的防護(hù)設(shè)計(jì)510 9.6.4 提高數(shù)據(jù)傳輸可靠性的措施512 第10章 供電電源的配置與抗干擾設(shè)計(jì) 10.1 電源干擾問題概述513 10.1.1 電源干擾的類型513 10.1.2 電源干擾的耦合途徑514 10.1.3 電源的共模和差模干擾515 10.1.4 電源抗干擾的基本方法516 10.2 EMI電源濾波器517 10.2.1 實(shí)用低通電容濾波器518 10.2.2 雙繞組扼流圈的應(yīng)用518 10.3 EMI濾波器模塊519 10.3.1 濾波器模塊基礎(chǔ)知識(shí)519 10.3.2 電源濾波器模塊521 10.3.3 防雷濾波器模塊531 10.3.4 脈沖群抑制模塊532 10.4 瞬變干擾吸收器件532 10.4.1 金屬氧化物壓敏電阻(MOV)533 10.4.2 瞬變電壓抑制器(TVS)537 10.5 電源變壓器的屏蔽與隔離552 10.6 交流電源的供電抗干擾方案553 10.6.1 交流電源配電方式553 10.6.2 交流電源抗干擾綜合方案555 10.7 供電直流側(cè)抑制干擾措施555 10.7.1 整流電路的高頻濾波555 10.7.2 串聯(lián)型直流穩(wěn)壓電源配置與抗干擾556 10.7.3 集成穩(wěn)壓器使用中的保護(hù)557 10.8 開關(guān)電源干擾的抑制措施559 10.8.1 開關(guān)噪聲的分類559 10.8.2 開關(guān)電源噪聲的抑制措施560 10.9 微機(jī)用不間斷電源UPS561 10.10 采用晶閘管無觸點(diǎn)開關(guān)消除瞬態(tài)干擾設(shè)計(jì)方案564 第11章 印制電路板的抗干擾設(shè)計(jì) 11.1 印制電路板用覆銅板566 11.1.1 覆銅板材料566 11.1.2 覆銅板分類568 11.1.3 覆銅板的標(biāo)準(zhǔn)與電性能571 11.1.4 覆銅板的主要特點(diǎn)和應(yīng)用583 11.2 印制板布線設(shè)計(jì)基礎(chǔ)585 11.2.1 印制板導(dǎo)線的阻抗計(jì)算585 11.2.2 PCB布線結(jié)構(gòu)和特性阻抗計(jì)算587 11.2.3 信號(hào)在印制板上的傳播速度589 11.3 地線和電源線的布線設(shè)計(jì)590 11.3.1 降低接地阻抗的設(shè)計(jì)590 11.3.2 減小電源線阻抗的方法591 11.4 信號(hào)線的布線原則592 11.4.1 信號(hào)傳輸線的尺寸控制592 11.4.2 線間串?dāng)_控制592 11.4.3 輻射干擾的抑制593 11.4.4 反射干擾的抑制594 11.4.5 微機(jī)自動(dòng)布線注意問題594 11.5 配置去耦電容的方法594 11.5.1 電源去耦595 11.5.2 集成芯片去耦595 11.6 芯片的選用與器件布局596 11.6.1 芯片選用指南596 11.6.2 器件的布局597 11.6.3 時(shí)鐘電路的布置598 11.7 多層印制電路板599 11.7.1 多層印制板的結(jié)構(gòu)與特點(diǎn)599 11.7.2 多層印制板的布局方案600 11.7.3 20H原則605 11.8 印制電路板的安裝和板間配線606 第12章 軟件抗干擾原理與方法 12.1 概述607 12.1.1 測控系統(tǒng)軟件的基本要求607 12.1.2 軟件抗干擾一般方法607 12.2 指令冗余技術(shù)608 12.2.1 NOP的使用609 12.2.2 重要指令冗余609 12.3 軟件陷阱技術(shù)609 12.3.1 軟件陷阱609 12.3.2 軟件陷阱的安排610 12.4 故障自動(dòng)恢復(fù)處理程序613 12.4.1 上電標(biāo)志設(shè)定614 12.4.2 RAM中數(shù)據(jù)冗余保護(hù)與糾錯(cuò)616 12.4.3 軟件復(fù)位與中斷激活標(biāo)志617 12.4.4 程序失控后恢復(fù)運(yùn)行的方法618 12.5 數(shù)字濾波619 12.5.1 程序判斷濾波法620 12.5.2 中位值濾波法620 12.5.3 算術(shù)平均濾波法621 12.5.4 遞推平均濾波法623 12.5.5 防脈沖干擾平均值濾波法624 12.5.6 一階滯后濾波法626 12.6 干擾避開法627 12.7 開關(guān)量輸入/輸出軟件抗干擾設(shè)計(jì)629 12.7.1 開關(guān)量輸入軟件抗干擾措施629 12.7.2 開關(guān)量輸出軟件抗干擾措施629 12.8 編寫軟件的其他注意事項(xiàng)630 附錄 電磁兼容器件選購信息632
標(biāo)簽: 單片機(jī) 應(yīng)用系統(tǒng) 抗干擾技術(shù)
上傳時(shí)間: 2013-10-20
上傳用戶:xdqm
第八章 labview的編程技巧 本章介紹局部變量、全局變量、屬性節(jié)點(diǎn)和其他一些有助于提高編程技巧的問題,恰當(dāng)?shù)剡\(yùn)用這些技巧可以提高程序的質(zhì)量。 8.1 局部變量 嚴(yán)格的語法盡管可以保證程序語言的嚴(yán)密性,但有時(shí)它也會(huì)帶來一些使用上的不便。在labview這樣的數(shù)據(jù)流式的語言中,將變量嚴(yán)格地分為控制器(Control)和指示器(Indicator),前者只能向外流出數(shù)據(jù),后者只能接受流入的數(shù)據(jù),反過來不行。在一般的代碼式語言中,情況不是這樣的。例如我們有變量a、b和c,只要需要我們可以將a的值賦給b,將b的值賦給c等等。前面所介紹的labview內(nèi)容中,只有移位積存器即可輸入又可輸出。另外,一個(gè)變量在程序中可能要在多處用到,在圖形語言中勢必帶來過多連線,這也是一件煩人的事。還有其他需要,因此labview引入了局部變量。
上傳時(shí)間: 2013-10-27
上傳用戶:xieguodong1234
函數(shù)名稱:CRC-16 Process 函數(shù)原型:INT16U make_crc16(INT8U *msgaddr,INT8U datalen) 函數(shù)功能:進(jìn)行CRC校驗(yàn)和產(chǎn)生CRC代碼.這個(gè)函數(shù)只影響全局變量crc16. 校驗(yàn)字放在字符串最后,低8位在前高8位在后. msgaddr : 進(jìn)行CRC16校驗(yàn)的據(jù)塊的首地址 datalen : 進(jìn)行CRC16校驗(yàn)的據(jù)塊的個(gè)數(shù) CRC-ITU的計(jì)算算法如下: a.寄存器組初始化為全"1"(0xFFFF)。 b.寄存器組向右移動(dòng)一個(gè)字節(jié)。 c.剛移出的那個(gè)字節(jié)與數(shù)據(jù)字節(jié)進(jìn)行異或運(yùn)算,得出一個(gè)指向值表的索引。 d.索引所指的表值與寄存器組做異或運(yùn)算。 f.數(shù)據(jù)指針加1,如果數(shù)據(jù)沒有全部處理完,則重復(fù)步驟b。 g.寄存器組取反,得到CRC,附加在數(shù)據(jù)之后(這一步可省略)。
上傳時(shí)間: 2015-12-21
上傳用戶:llandlu
/* * _168ZHONGDUAN2.c * * Created: 2014/11/2 15:12:45 * Author: lenovo */ #include <avr/io.h> #include <avr/iom168pa.h> #include <avr/interrupt.h> #include <util/delay.h> #include <avr/eeprom.h> //#include <util/delay_basic.h> //unsigned char const SEGtable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; #define BIT(x) (1<<(x)) #include<avr/signal.h> #include<avr/pgmspace.h> #include<util/delay.h> #include<avr/eeprom.h> #define setb(val,bitn) (val|=(1<<(bitn)))//設(shè)置某IO口某位為1 #define clr(val,bitn) (val&=~(1<<(bitn)))//設(shè)置某IO口某位為0 #define get(val,bitn) (val&(1<<(bitn)))//讀取某位狀態(tài) //uchar ACT[8] ={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; #define CPL_BIT(x,y) (x^=(1<<y)) #define CLR_BIT(x,y) (x&=~(1<<y)) #define SET_1(a,b) a|=(1<<b) #define CLE_0(a,b) a&=~(1<<b) /*------宏定義------*/ #include <avr/wdt.h> #include <avr/sleep.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> #include <avr/eeprom.h> #define setb(val,bitn) (val|=(1<<(bitn)))//設(shè)置某IO口某位為1 #define clr(val,bitn) (val&=~(1<<(bitn)))//設(shè)置某IO口某位為0 #define get(val,bitn) (val&(1<<(bitn)))//讀取某位狀態(tài) #define uint8 unsigned char #define uint16 unsigned int #define P_LCDCS1 setb(PORTB,5) #define P_LCDCS0 clr(PORTB,5) #define P_LCDRST1 setb(PORTB,1) #define P_LCDRST0 clr(PORTB,1) #define P_LCDRS1 setb(PORTB,2) #define P_LCDRS0 clr(PORTB,2) #define P_LCDDAT1 setb(PORTB,4) #define P_LCDDAT0 clr(PORTB,4) #define P_LCDCLK1 setb(PORTB,3) #define P_LCDCLK0 clr(PORTB,3) //#define LCD_ //-----頁地址定義----- #define Page1 0 #define Page2 1 #define Page3 2 #define Page4 3 #define Page5 4 #define Page6 5 #define Page7 6 #define Page8 7 //-----列地址定義-----每8列地址增1 #define List8_1 0 #define List8_2 7 #define List8_3 15 #define List8_4 23 #define List8_5 31 #define List8_6 39 #define List8_7 47 #define List8_8 55 #define List8_9 63 #define List8_10 71 #define List8_11 79 #define List8_12 87 #define List8_13 95 #define List8_14 103 #define List8_15 111 #define List8_16 119 //#define List8_17 127 //-----列地址定義-----每16列地址增1 #define List16_1 0 #define List16_2 15 #define List16_3 31 #define List16_4 47 #define List16_5 63 #define List16_6 79 #define List16_7 95 #define List16_8 111 //---------------------------------- #define STR_CHARG "Charge" //提示充電 #define STR_PRCE "%" //電量百分比 #define STR_ERR "Err" //出錯(cuò)顯示 #define STR_OFF "OFF" //關(guān)機(jī)顯示 //待機(jī)顯示 #define STR_WAIT1 "Portable UPS" #define STR_WAIT2 "110V/60HZ" #define STR_WAIT3 "Select:DC OR AC" #define STR_WAIT4 "BATTERY:" //開機(jī)顯示 #define STR_OUTSTATUS "Out Status:" #define STR_DCOUT12V "DC12V" #define STR_DCOUT5V "DC5V" #define STR_ACOUT "AC110V" //#define STR_MAOHAO ":" //====================================== extern uint8 LOCKA[2][16] ; //extern uint8 code BATS[10][16] ; extern uint8 BAT2S[12][32] ; extern uint8 NC[] ; extern uint8 mao_hao[] ; extern uint8 num1[] ; extern uint8 num2[] ; extern uint8 num3[] ; extern uint8 num4[] ; extern uint8 num5[] ; extern uint8 num6[] ; extern uint8 num7[] ; extern uint8 num8[] ; extern uint8 num9[] ; extern uint8 Tab_Ascii_8x16[95][16] ; extern uint8 Tab_Ascii_5x7[95][5] ; extern uint8 zhuang1[] ; extern uint8 tai1[] ; extern uint8 shi1[] ; extern uint8 yong1[] ; //---------------------------------- //extern void LcdWriteCommand(uint8 data1) ; extern void Display_Graphic_32x32(uint8 page,uint8 column,uint8 *dp) ; extern void Display_Graphic_32x16(uint8 page,uint8 column,uint8 *dp) ; extern void Display_Graphic_16x16(uint8 page,uint8 column,uint8 *dp) ; extern void Display_Graphic_8x16(uint8 page,uint8 column,uint8 *dp) ; extern void Display_String_8x16(uint8 page,uint8 column,uint8 *text) ; extern void Display_Num_8x16(uint8 page,uint8 column,uint8 Num) ; extern void Display_Digital_8x16(uint8 page,uint8 column,uint8 *a) ; extern void Display_Nop_8x16(uint8 page,uint8 column,uint8 DatLong) ; extern void Display_String_5x7(uint8 page,uint8 column,uint8 *text) ; extern void Full_Display(void) ; extern void Clear_Screen(void) ; extern void Init_lcd12864(void) ; //#endif //========c12864.c============================================== /*************************************************** LCD:晶聯(lián)訊電子 JLX12864G-086-PN(不帶字庫IC-UC1701X) 僅支持串行驅(qū)動(dòng)方式 ***************************************************/ //#include "global.h" //#include "c12864.h" #define Tab_Ascii_8x16_CALL1 //粗體字形 #define Tab_Ascii_8x16_CALL2 //細(xì)體字形 #define Tab_Ascii_5x7_CALL #define Display_Graphic_32x32_CALL #define Display_Graphic_32x16_CALL #define Display_Graphic_16x16_CALL #define Display_Graphic_8x16_CALL #define Display_String_8x16_CALL //顯示字符串 #define Display_Num_8x16_CALL //顯示單個(gè)數(shù)據(jù)0-9 #define Display_Digital_8x16_CALL //顯示數(shù)據(jù)0-9999 #define Display_Nop_8x16_CALL //填充8*16的空字符N個(gè) #define Display_String_5x7_CALL #define Full_Display_CALL //============================================================================== uint8 aa[]={0,1,2,3,4,5,6,7,8,9}; uint8 LOCKA[2][16]={ //-- 童鎖符號(hào) -- //-- 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -- //0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xd8, 0xcc, 0xc4, 0xc4, 0xcc, 0xd8, 0xf0, 0xe0, 0xc0, 0x00, 0x00, //0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xb0, 0x98, 0x8c, 0x8c, 0x8c, 0x8c, 0x98, 0xb0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x00, 0x00, } ; const PROGMEM uint8_t BATS[10][16]={ //-- 電池符號(hào) -- //-- 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -- 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0x0c, 0x0e, 0x0e, 0x0c, 0x08, 0x08, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0x0c, 0x0e, 0x0e, 0x0c, 0x08, 0x08, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0x0c, 0x0e, 0x0e, 0x0c, 0x08, 0x08, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xc8, 0xc8, 0xcc, 0xce, 0xce, 0xcc, 0xc8, 0xc8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, }; const PROGMEM uint8_t BAT2S1[12][32]={ /*-- 電池符號(hào) --*/ /*-- 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=32x16 --*/ {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf8, 0xc0, 0x80}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3f, 0x07, 0x03}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf8, 0xc0, 0x80}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3f, 0x07, 0x03}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf8, 0xc0, 0x80}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3f, 0x07, 0x03}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf8, 0xc0, 0x80}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3f, 0x07, 0x03}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf8, 0xc0, 0x80}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3f, 0x07, 0x03}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xe8, 0xe8, 0x08, 0x08, 0xf8, 0xc0, 0x80}, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x3f, 0x07, 0x03}, } ; const PROGMEM uint8_t BAT2S2[2][32]={ //-- 電池符號(hào) 不顯示 -- //-- 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=32x16 -- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, } ; uint8 NC[]={ /*-- 文字: 空符號(hào) --*/ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, } ; uint8 mao_hao[]={ /*-- 文字: : (冒號(hào)) --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00}; uint8 num0[]={ /*-- 文字: 0 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00 }; uint8 num1[]={ /*-- 文字: 1 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00 }; uint8 num2[]={ /*-- 文字: 2 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00 //細(xì)體 //0x08,0x0C,0x84,0xC4,0x64,0x3C,0x18,0x00,0x0E,0x0F,0x09,0x08,0x08,0x0C,0x0C,0x00, // 粗體 }; uint8 num3[]={ /*-- 文字: 3 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00 }; uint8 num4[]={ /*-- 文字: 4 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00 }; uint8 num5[]={ /*-- 文字: 5 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00 }; uint8 num6[]={ /*-- 文字: 6 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00 }; uint8 num7[]={ /*-- 文字: 7 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00 }; uint8 num8[]={ /*-- 文字: 8 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00 }; uint8 num9[]={ /*-- 文字: 9 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00 }; //=======8x16======================================================================= #ifdef Display_String_8x16_CALL //Tab_Ascii_8x16_CALL const PROGMEM uint8_t Tab_Ascii_8x161[95][16]={ //粗體字形 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // - - 0x00,0x00,0x38,0xFC,0xFC,0x38,0x00,0x00,0x00,0x00,0x00,0x0D,0x0D,0x00,0x00,0x00, // -!- 0x00,0x0E,0x1E,0x00,0x00,0x1E,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // -"- 0x20,0xF8,0xF8,0x20,0xF8,0xF8,0x20,0x00,0x02,0x0F,0x0F,0x02,0x0F,0x0F,0x02,0x00, // -#- 0x38,0x7C,0x44,0x47,0x47,0xCC,0x98,0x00,0x03,0x06,0x04,0x1C,0x1C,0x07,0x03,0x00, // -$- 0x30,0x30,0x00,0x80,0xC0,0x60,0x30,0x00,0x0C,0x06,0x03,0x01,0x00,0x0C,0x0C,0x00, // -%- 0x80,0xD8,0x7C,0xE4,0xBC,0xD8,0x40,0x00,0x07,0x0F,0x08,0x08,0x07,0x0F,0x08,0x00, // -&- 0x00,0x10,0x1E,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // -'- 0x00,0x00,0xF0,0xF8,0x0C,0x04,0x00,0x00,0x00,0x00,0x03,0x07,0x0C,0x08,0x00,0x00, // -(- 0x00,0x00,0x04,0x0C,0xF8,0xF0,0x00,0x00,0x00,0x00,0x08,0x0C,0x07,0x03,0x00,0x00, // -)- 0x80,0xA0,0xE0,0xC0,0xC0,0xE0,0xA0,0x80,0x00,0x02,0x03,0x01,0x01,0x03,0x02,0x00, // -*- 0x00,0x80,0x80,0xE0,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x03,0x03,0x00,0x00,0x00, // -+- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x1E,0x0E,0x00,0x00,0x00, // -,- 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // --- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x00, // -.- 0x00,0x00,0x00,0x80,0xC0,0x60,0x30,0x00,0x0C,0x06,0x03,0x01,0x00,0x00,0x00,0x00, // -/- 0xF8,0xFC,0x04,0xC4,0x24,0xFC,0xF8,0x00,0x07,0x0F,0x09,0x08,0x08,0x0F,0x07,0x00, // -0- 0x00,0x10,0x18,0xFC,0xFC,0x00,0x00,0x00,0x00,0x08,0x08,0x0F,0x0F,0x08,0x08,0x00, // -1- 0x08,0x0C,0x84,0xC4,0x64,0x3C,0x18,0x00,0x0E,0x0F,0x09,0x08,0x08,0x0C,0x0C,0x00, // -2- 0x08,0x0C,0x44,0x44,0x44,0xFC,0xB8,0x00,0x04,0x0C,0x08,0x08,0x08,0x0F,0x07,0x00, // -3- 0xC0,0xE0,0xB0,0x98,0xFC,0xFC,0x80,0x00,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00, // -4- 0x7C,0x7C,0x44,0x44,0xC4,0xC4,0x84,0x00,0x04,0x0C,0x08,0x08,0x08,0x0F,0x07,0x00, // -5- 0xF0,0xF8,0x4C,0x44,0x44,0xC0,0x80,0x00,0x07,0x0F,0x08,0x08,0x08,0x0F,0x07,0x00, // -6- 0x0C,0x0C,0x04,0x84,0xC4,0x7C,0x3C,0x00,0x00,0x00,0x0F,0x0F,0x00,0x00,0x00,0x00, // -7- 0xB8,0xFC,0x44,0x44,0x44,0xFC,0xB8,0x00,0x07,0x0F,0x08,0x08,0x08,0x0F,0x07,0x00, // -8- 0x38,0x7C,0x44,0x44,0x44,0xFC,0xF8,0x00,0x00,0x08,0x08,0x08,0x0C,0x07,0x03,0x00, // -9- 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x06,0x00,0x00,0x00, // -:- 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x08,0x0E,0x06,0x00,0x00,0x00, // -;- 0x00,0x80,0xC0,0x60,0x30,0x18,0x08,0x00,0x00,0x00,0x01,0x03,0x06,0x0C,0x08,0x00, // -<- 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x00, // -=- 0x00,0x08,0x18,0x30,0x60,0xC0,0x80,0x00,0x00,0x08,0x0C,0x06,0x03,0x01,0x00,0x00, // ->- 0x18,0x1C,0x04,0xC4,0xE4,0x3C,0x18,0x00,0x00,0x00,0x00,0x0D,0x0D,0x00,0x00,0x00, // -?- 0xF0,0xF8,0x08,0xC8,0xC8,0xF8,0xF0,0x00,0x07,0x0F,0x08,0x0B,0x0B,0x0B,0x01,0x00, // -@- 0xE0,0xF0,0x98,0x8C,0x98,0xF0,0xE0,0x00,0x0F,0x0F,0x00,0x00,0x00,0x0F,0x0F,0x00, // -A- 0x04,0xFC,0xFC,0x44,0x44,0xFC,0xB8,0x00,0x08,0x0F,0x0F,0x08,0x08,0x0F,0x07,0x00, // -B- 0xF0,0xF8,0x0C,0x04,0x04,0x0C,0x18,0x00,0x03,0x07,0x0C,0x08,0x08,0x0C,0x06,0x00, // -C- 0x04,0xFC,0xFC,0x04,0x0C,0xF8,0xF0,0x00,0x08,0x0F,0x0F,0x08,0x0C,0x07,0x03,0x00, // -D- 0x04,0xFC,0xFC,0x44,0xE4,0x0C,0x1C,0x00,0x08,0x0F,0x0F,0x08,0x08,0x0C,0x0E,0x00, // -E- 0x04,0xFC,0xFC,0x44,0xE4,0x0C,0x1C,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00,0x00,0x00, // -F- 0xF0,0xF8,0x0C,0x84,0x84,0x8C,0x98,0x00,0x03,0x07,0x0C,0x08,0x08,0x07,0x0F,0x00, // -G- 0xFC,0xFC,0x40,0x40,0x40,0xFC,0xFC,0x00,0x0F,0x0F,0x00,0x00,0x00,0x0F,0x0F,0x00, // -H- 0x00,0x00,0x04,0xFC,0xFC,0x04,0x00,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00, // -I- 0x00,0x00,0x00,0x04,0xFC,0xFC,0x04,0x00,0x07,0x0F,0x08,0x08,0x0F,0x07,0x00,0x00, // -J- 0x04,0xFC,0xFC,0xC0,0xF0,0x3C,0x0C,0x00,0x08,0x0F,0x0F,0x00,0x01,0x0F,0x0E,0x00, // -K- 0x04,0xFC,0xFC,0x04,0x00,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x08,0x0C,0x0E,0x00, // -L- 0xFC,0xFC,0x38,0x70,0x38,0xFC,0xFC,0x00,0x0F,0x0F,0x00,0x00,0x00,0x0F,0x0F,0x00, // -M- 0xFC,0xFC,0x38,0x70,0xE0,0xFC,0xFC,0x00,0x0F,0x0F,0x00,0x00,0x00,0x0F,0x0F,0x00, // -N- 0xF0,0xF8,0x0C,0x04,0x0C,0xF8,0xF0,0x00,0x03,0x07,0x0C,0x08,0x0C,0x07,0x03,0x00, // -O- 0x04,0xFC,0xFC,0x44,0x44,0x7C,0x38,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00,0x00,0x00, // -P- 0xF8,0xFC,0x04,0x04,0x04,0xFC,0xF8,0x00,0x07,0x0F,0x08,0x0E,0x3C,0x3F,0x27,0x00, // -Q- 0x04,0xFC,0xFC,0x44,0xC4,0xFC,0x38,0x00,0x08,0x0F,0x0F,0x00,0x00,0x0F,0x0F,0x00, // -R- 0x18,0x3C,0x64,0x44,0xC4,0x9C,0x18,0x00,0x06,0x0E,0x08,0x08,0x08,0x0F,0x07,0x00, // -S- 0x00,0x1C,0x0C,0xFC,0xFC,0x0C,0x1C,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00, // -T- 0xFC,0xFC,0x00,0x00,0x00,0xFC,0xFC,0x00,0x07,0x0F,0x08,0x08,0x08,0x0F,0x07,0x00, // -U- 0xFC,0xFC,0x00,0x00,0x00,0xFC,0xFC,0x00,0x01,0x03,0x06,0x0C,0x06,0x03,0x01,0x00, // -V- 0xFC,0xFC,0x00,0x80,0x00,0xFC,0xFC,0x00,0x03,0x0F,0x0E,0x03,0x0E,0x0F,0x03,0x00, // -W- 0x0C,0x3C,0xF0,0xC0,0xF0,0x3C,0x0C,0x00,0x0C,0x0F,0x03,0x00,0x03,0x0F,0x0C,0x00, // -X- 0x00,0x3C,0x7C,0xC0,0xC0,0x7C,0x3C,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00, // -Y- 0x1C,0x0C,0x84,0xC4,0x64,0x3C,0x1C,0x00,0x0E,0x0F,0x09,0x08,0x08,0x0C,0x0E,0x00, // -Z- 0x00,0x00,0xFC,0xFC,0x04,0x04,0x00,0x00,0x00,0x00,0x0F,0x0F,0x08,0x08,0x00,0x00, // -[- 0x38,0x70,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x0E,0x00, // -\- 0x00,0x00,0x04,0x04,0xFC,0xFC,0x00,0x00,0x00,0x00,0x08,0x08,0x0F,0x0F,0x00,0x00, // -]- 0x08,0x0C,0x06,0x03,0x06,0x0C,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // -^- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, // -_- 0x00,0x00,0x03,0x07,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // -`- 0x00,0xA0,0xA0,0xA0,0xE0,0xC0,0x00,0x00,0x07,0x0F,0x08,0x08,0x07,0x0F,0x08,0x00, // -a- 0x04,0xFC,0xFC,0x20,0x60,0xC0,0x80,0x00,0x08,0x0F,0x07,0x08,0x08,0x0F,0x07,0x00, // -b- 0xC0,0xE0,0x20,0x20,0x20,0x60,0x40,0x00,0x07,0x0F,0x08,0x08,0x08,0x0C,0x04,0x00, // -c- 0x80,0xC0,0x60,0x24,0xFC,0xFC,0x00,0x00,0x07,0x0F,0x08,0x08,0x07,0x0F,0x08,0x00, // -d- 0xC0,0xE0,0xA0,0xA0,0xA0,0xE0,0xC0,0x00,0x07,0x0F,0x08,0x08,0x08,0x0C,0x04,0x00, // -e- 0x40,0xF8,0xFC,0x44,0x0C,0x18,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00,0x00,0x00, // -f- 0xC0,0xE0,0x20,0x20,0xC0,0xE0,0x20,0x00,0x27,0x6F,0x48,0x48,0x7F,0x3F,0x00,0x00, // -g- 0x04,0xFC,0xFC,0x40,0x20,0xE0,0xC0,0x00,0x08,0x0F,0x0F,0x00,0x00,0x0F,0x0F,0x00, // -h- 0x00,0x00,0x20,0xEC,0xEC,0x00,0x00,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00, // -i- 0x00,0x00,0x00,0x00,0x20,0xEC,0xEC,0x00,0x00,0x30,0x70,0x40,0x40,0x7F,0x3F,0x00, // -j- 0x04,0xFC,0xFC,0x80,0xC0,0x60,0x20,0x00,0x08,0x0F,0x0F,0x01,0x03,0x0E,0x0C,0x00, // -k- 0x00,0x00,0x04,0xFC,0xFC,0x00,0x00,0x00,0x00,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00, // -l- 0xE0,0xE0,0x60,0xC0,0x60,0xE0,0xC0,0x00,0x0F,0x0F,0x00,0x0F,0x00,0x0F,0x0F,0x00, // -m- 0x20,0xE0,0xC0,0x20,0x20,0xE0,0xC0,0x00,0x00,0x0F,0x0F,0x00,0x00,0x0F,0x0F,0x00, // -n- 0xC0,0xE0,0x20,0x20,0x20,0xE0,0xC0,0x00,0x07,0x0F,0x08,0x08,0x08,0x0F,0x07,0x00, // -o- 0x20,0xE0,0xC0,0x20,0x20,0xE0,0xC0,0x00,0x40,0x7F,0x7F,0x48,0x08,0x0F,0x07,0x00, // -p- 0xC0,0xE0,0x20,0x20,0xC0,0xE0,0x20,0x00,0x07,0x0F,0x08,0x48,0x7F,0x7F,0x40,0x00, // -q- 0x20,0xE0,0xC0,0x60,0x20,0x60,0xC0,0x00,0x08,0x0F,0x0F,0x08,0x00,0x00,0x00,0x00, // -r- 0x40,0xE0,0xA0,0x20,0x20,0x60,0x40,0x00,0x04,0x0C,0x09,0x09,0x0B,0x0E,0x04,0x00, // -s- 0x20,0x20,0xF8,0xFC,0x20,0x20,0x00,0x00,0x00,0x00,0x07,0x0F,0x08,0x0C,0x04,0x00, // -t- 0xE0,0xE0,0x00,0x00,0xE0,0xE0,0x00,0x00,0x07,0x0F,0x08,0x08,0x07,0x0F,0x08,0x00, // -u- 0x00,0xE0,0xE0,0x00,0x00,0xE0,0xE0,0x00,0x00,0x03,0x07,0x0C,0x0C,0x07,0x03,0x00, // -v- 0xE0,0xE0,0x00,0x00,0x00,0xE0,0xE0,0x00,0x07,0x0F,0x0C,0x07,0x0C,0x0F,0x07,0x00, // -w- 0x20,0x60,0xC0,0x80,0xC0,0x60,0x20,0x00,0x08,0x0C,0x07,0x03,0x07,0x0C,0x08,0x00, // -x- 0xE0,0xE0,0x00,0x00,0x00,0xE0,0xE0,0x00,0x47,0x4F,0x48,0x48,0x68,0x3F,0x1F,0x00, // -y- 0x60,0x60,0x20,0xA0,0xE0,0x60,0x20,0x00,0x0C,0x0E,0x0B,0x09,0x08,0x0C,0x0C,0x00, // -z- 0x00,0x40,0x40,0xF8,0xBC,0x04,0x04,0x00,0x00,0x00,0x00,0x07,0x0F,0x08,0x08,0x00, // -{- 0x00,0x00,0x00,0xBC,0xBC,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x00,0x00,0x00, // -|- 0x00,0x04,0x04,0xBC,0xF8,0x40,0x40,0x00,0x00,0x08,0x08,0x0F,0x07,0x00,0x00,0x00, // -}- 0x08,0x0C,0x04,0x0C,0x08,0x0C,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // -~- } ; #endif //Tab_Ascii_8x16_CALL1 //=======8x16======================================================================= //#ifdef Tab_Ascii_8x16_CALL2 // #ifdef Display_Num_8x16_CALL const PROGMEM uint8_t Tab_Ascii_8x162[95][16]={ //細(xì)體字形 /*-- 文字: --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*-- 文字: ! --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x30,0x00,0x00,0x00, /*-- 文字: " --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x10,0x0C,0x06,0x10,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*-- 文字: # --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x40,0xC0,0x78,0x40,0xC0,0x78,0x40,0x00,0x04,0x3F,0x04,0x04,0x3F,0x04,0x04,0x00, /*-- 文字: $ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x88,0xFC,0x08,0x30,0x00,0x00,0x00,0x18,0x20,0xFF,0x21,0x1E,0x00,0x00, /*-- 文字: % --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xF0,0x08,0xF0,0x00,0xE0,0x18,0x00,0x00,0x00,0x21,0x1C,0x03,0x1E,0x21,0x1E,0x00, /*-- 文字: & --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xF0,0x08,0x88,0x70,0x00,0x00,0x00,0x1E,0x21,0x23,0x24,0x19,0x27,0x21,0x10, /*-- 文字: ' --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x10,0x16,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*-- 文字: ( --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0xE0,0x18,0x04,0x02,0x00,0x00,0x00,0x00,0x07,0x18,0x20,0x40,0x00, /*-- 文字: ) --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x02,0x04,0x18,0xE0,0x00,0x00,0x00,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x00, /*-- 文字: * --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00, /*-- 文字: + --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x1F,0x01,0x01,0x01,0x00, /*-- 文字: , --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xB0,0x70,0x00,0x00,0x00,0x00,0x00, /*-- 文字: - --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*-- 文字: . --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00, /*-- 文字: / --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x80,0x60,0x18,0x04,0x00,0x60,0x18,0x06,0x01,0x00,0x00,0x00, /*-- 文字: 0 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00, /*-- 文字: 1 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00, /*-- 文字: 2 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00, /*-- 文字: 3 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00, /*-- 文字: 4 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00, /*-- 文字: 5 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00, /*-- 文字: 6 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00, /*-- 文字: 7 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00, /*-- 文字: 8 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00, /*-- 文字: 9 --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00, /*-- 文字: : --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00, /*-- 文字: ; --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x60,0x00,0x00,0x00,0x00, /*-- 文字: < --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x80,0x40,0x20,0x10,0x08,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x00, /*-- 文字: = --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x00, /*-- 文字: > --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x20,0x10,0x08,0x04,0x02,0x01,0x00, /*-- 文字: ? --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x48,0x08,0x08,0x08,0xF0,0x00,0x00,0x00,0x00,0x30,0x36,0x01,0x00,0x00, /*-- 文字: @ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xC0,0x30,0xC8,0x28,0xE8,0x10,0xE0,0x00,0x07,0x18,0x27,0x24,0x23,0x14,0x0B,0x00, /*-- 文字: A --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x20,0x3C,0x23,0x02,0x02,0x27,0x38,0x20, /*-- 文字: B --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x11,0x0E,0x00, /*-- 文字: C --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xC0,0x30,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x20,0x10,0x08,0x00, /*-- 文字: D --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00, /*-- 文字: E --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00, /*-- 文字: F --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x00,0x03,0x00,0x00,0x00, /*-- 文字: G --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xC0,0x30,0x08,0x08,0x08,0x38,0x00,0x00,0x07,0x18,0x20,0x20,0x22,0x1E,0x02,0x00, /*-- 文字: H --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x20,0x3F,0x21,0x01,0x01,0x21,0x3F,0x20, /*-- 文字: I --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00, /*-- 文字: J --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00,0x00, /*-- 文字: K --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x88,0xC0,0x28,0x18,0x08,0x00,0x20,0x3F,0x20,0x01,0x26,0x38,0x20,0x00, /*-- 文字: L --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x20,0x30,0x00, /*-- 文字: M --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0xF8,0x00,0xF8,0xF8,0x08,0x00,0x20,0x3F,0x00,0x3F,0x00,0x3F,0x20,0x00, /*-- 文字: N --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x30,0xC0,0x00,0x08,0xF8,0x08,0x20,0x3F,0x20,0x00,0x07,0x18,0x3F,0x00, /*-- 文字: O --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00, /*-- 文字: P --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x08,0x08,0x08,0x08,0xF0,0x00,0x20,0x3F,0x21,0x01,0x01,0x01,0x00,0x00, /*-- 文字: Q --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x38,0x50,0x4F,0x00, /*-- 文字: R --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x00,0x03,0x0C,0x30,0x20, /*-- 文字: S --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x70,0x88,0x08,0x08,0x08,0x38,0x00,0x00,0x38,0x20,0x21,0x21,0x22,0x1C,0x00, /*-- 文字: T --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x18,0x08,0x08,0xF8,0x08,0x08,0x18,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00, /*-- 文字: U --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00, /*-- 文字: V --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0x78,0x88,0x00,0x00,0xC8,0x38,0x08,0x00,0x00,0x07,0x38,0x0E,0x01,0x00,0x00, /*-- 文字: W --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0xF8,0x08,0x00,0xF8,0x00,0x08,0xF8,0x00,0x03,0x3C,0x07,0x00,0x07,0x3C,0x03,0x00, /*-- 文字: X --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0x18,0x68,0x80,0x80,0x68,0x18,0x08,0x20,0x30,0x2C,0x03,0x03,0x2C,0x30,0x20, /*-- 文字: Y --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0x38,0xC8,0x00,0xC8,0x38,0x08,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00, /*-- 文字: Z --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x10,0x08,0x08,0x08,0xC8,0x38,0x08,0x00,0x20,0x38,0x26,0x21,0x20,0x20,0x18,0x00, /*-- 文字: [ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0xFE,0x02,0x02,0x02,0x00,0x00,0x00,0x00,0x7F,0x40,0x40,0x40,0x00, /*-- 文字: \ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x0C,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x06,0x38,0xC0,0x00, /*-- 文字: ] --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x7F,0x00,0x00,0x00, /*-- 文字: ^ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x04,0x02,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*-- 文字: _ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*-- 文字: ` --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*-- 文字: a --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20, /*-- 文字: b --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x3F,0x11,0x20,0x20,0x11,0x0E,0x00, /*-- 文字: c --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00, /*-- 文字: d --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x80,0x80,0x88,0xF8,0x00,0x00,0x0E,0x11,0x20,0x20,0x10,0x3F,0x20, /*-- 文字: e --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x22,0x13,0x00, /*-- 文字: f --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x80,0x80,0xF0,0x88,0x88,0x88,0x18,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00, /*-- 文字: g --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x6B,0x94,0x94,0x94,0x93,0x60,0x00, /*-- 文字: h --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20, /*-- 文字: i --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00, /*-- 文字: j --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x80,0x98,0x98,0x00,0x00,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00, /*-- 文字: k --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x08,0xF8,0x00,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x24,0x02,0x2D,0x30,0x20,0x00, /*-- 文字: l --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00, /*-- 文字: m --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F, /*-- 文字: n --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20, /*-- 文字: o --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00, /*-- 文字: p --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x80,0xFF,0xA1,0x20,0x20,0x11,0x0E,0x00, /*-- 文字: q --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x0E,0x11,0x20,0x20,0xA0,0xFF,0x80, /*-- 文字: r --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x00,0x01,0x00, /*-- 文字: s --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x33,0x24,0x24,0x24,0x24,0x19,0x00, /*-- 文字: t --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00,0x00, /*-- 文字: u --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x00,0x00,0x00,0x80,0x80,0x00,0x00,0x1F,0x20,0x20,0x20,0x10,0x3F,0x20, /*-- 文字: v --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x00,0x01,0x0E,0x30,0x08,0x06,0x01,0x00, /*-- 文字: w --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x00,0x80,0x00,0x80,0x80,0x80,0x0F,0x30,0x0C,0x03,0x0C,0x30,0x0F,0x00, /*-- 文字: x --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x31,0x2E,0x0E,0x31,0x20,0x00, /*-- 文字: y --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x81,0x8E,0x70,0x18,0x06,0x01,0x00, /*-- 文字: z --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x21,0x30,0x2C,0x22,0x21,0x30,0x00, /*-- 文字: { --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0x80,0x7C,0x02,0x02,0x00,0x00,0x00,0x00,0x00,0x3F,0x40,0x40, /*-- 文字: | --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00, /*-- 文字: } --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x02,0x02,0x7C,0x80,0x00,0x00,0x00,0x00,0x40,0x40,0x3F,0x00,0x00,0x00,0x00, /*-- 文字: ~ --*/ /*-- Comic Sans MS12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 --*/ 0x00,0x06,0x01,0x01,0x02,0x02,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }; ///#endif //#endif //Tab_Ascii_8x16_CALL1 //=======5x7======================================================================= //#ifdef Tab_Ascii_5x7_CALL const PROGMEM uint8_t Tab_Ascii_5x71[95][5]={ /*全體ASCII 列表:5x7點(diǎn)陣*/ 0x00,0x00,0x00,0x00,0x00,//space 0x00,0x00,0x4f,0x00,0x00,//! 0x00,0x07,0x00,0x07,0x00,//" 0x14,0x7f,0x14,0x7f,0x14,//# 0x24,0x2a,0x7f,0x2a,0x12,//$ 0x23,0x13,0x08,0x64,0x62,//% 0x36,0x49,0x55,0x22,0x50,//& 0x00,0x05,0x07,0x00,0x00,//] 0x00,0x1c,0x22,0x41,0x00,//( 0x00,0x41,0x22,0x1c,0x00,//) 0x14,0x08,0x3e,0x08,0x14,//* 0x08,0x08,0x3e,0x08,0x08,//+ 0x00,0x50,0x30,0x00,0x00,//, 0x08,0x08,0x08,0x08,0x08,//- 0x00,0x60,0x60,0x00,0x00,//. 0x20,0x10,0x08,0x04,0x02,/// 0x3e,0x51,0x49,0x45,0x3e,//0 0x00,0x42,0x7f,0x40,0x00,//1 0x42,0x61,0x51,0x49,0x46,//2 0x21,0x41,0x45,0x4b,0x31,//3 0x18,0x14,0x12,0x7f,0x10,//4 0x27,0x45,0x45,0x45,0x39,//5 0x3c,0x4a,0x49,0x49,0x30,//6 0x01,0x71,0x09,0x05,0x03,//7 0x36,0x49,0x49,0x49,0x36,//8 0x06,0x49,0x49,0x29,0x1e,//9 0x00,0x36,0x36,0x00,0x00,//: 0x00,0x56,0x36,0x00,0x00,//; 0x08,0x14,0x22,0x41,0x00,//< 0x14,0x14,0x14,0x14,0x14,//= 0x00,0x41,0x22,0x14,0x08,//> 0x02,0x01,0x51,0x09,0x06,//? 0x32,0x49,0x79,0x41,0x3e,//@ 0x7e,0x11,0x11,0x11,0x7e,//A 0x7f,0x49,0x49,0x49,0x36,//B 0x3e,0x41,0x41,0x41,0x22,//C 0x7f,0x41,0x41,0x22,0x1c,//D 0x7f,0x49,0x49,0x49,0x41,//E 0x7f,0x09,0x09,0x09,0x01,//F 0x3e,0x41,0x49,0x49,0x7a,//G 0x7f,0x08,0x08,0x08,0x7f,//H 0x00,0x41,0x7f,0x41,0x00,//I 0x20,0x40,0x41,0x3f,0x01,//J 0x7f,0x08,0x14,0x22,0x41,//K 0x7f,0x40,0x40,0x40,0x40,//L 0x7f,0x02,0x0c,0x02,0x7f,//M 0x7f,0x04,0x08,0x10,0x7f,//N 0x3e,0x41,0x41,0x41,0x3e,//O 0x7f,0x09,0x09,0x09,0x06,//P 0x3e,0x41,0x51,0x21,0x5e,//Q 0x7f,0x09,0x19,0x29,0x46,//R 0x46,0x49,0x49,0x49,0x31,//S 0x01,0x01,0x7f,0x01,0x01,//T 0x3f,0x40,0x40,0x40,0x3f,//U 0x1f,0x20,0x40,0x20,0x1f,//V 0x3f,0x40,0x38,0x40,0x3f,//W 0x63,0x14,0x08,0x14,0x63,//X 0x07,0x08,0x70,0x08,0x07,//Y 0x61,0x51,0x49,0x45,0x43,//Z 0x00,0x7f,0x41,0x41,0x00,//[ 0x02,0x04,0x08,0x10,0x20,//\ 0x00,0x41,0x41,0x7f,0x00,//] 0x04,0x02,0x01,0x02,0x04,//^ 0x40,0x40,0x40,0x40,0x40,//_ 0x01,0x02,0x04,0x00,0x00,//` 0x20,0x54,0x54,0x54,0x78,//a 0x7f,0x48,0x48,0x48,0x30,//b 0x38,0x44,0x44,0x44,0x44,//c 0x30,0x48,0x48,0x48,0x7f,//d 0x38,0x54,0x54,0x54,0x58,//e 0x00,0x08,0x7e,0x09,0x02,//f 0x48,0x54,0x54,0x54,0x3c,//g 0x7f,0x08,0x08,0x08,0x70,//h 0x00,0x00,0x7a,0x00,0x00,//i 0x20,0x40,0x40,0x3d,0x00,//j 0x7f,0x20,0x28,0x44,0x00,//k 0x00,0x41,0x7f,0x40,0x00,//l 0x7c,0x04,0x38,0x04,0x7c,//m 0x7c,0x08,0x04,0x04,0x78,//n 0x38,0x44,0x44,0x44,0x38,//o 0x7c,0x14,0x14,0x14,0x08,//p 0x08,0x14,0x14,0x14,0x7c,//q 0x7c,0x08,0x04,0x04,0x08,//r 0x48,0x54,0x54,0x54,0x24,//s 0x04,0x04,0x3f,0x44,0x24,//t 0x3c,0x40,0x40,0x40,0x3c,//u 0x1c,0x20,0x40,0x20,0x1c,//v 0x3c,0x40,0x30,0x40,0x3c,//w 0x44,0x28,0x10,0x28,0x44,//x 0x04,0x48,0x30,0x08,0x04,//y 0x44,0x64,0x54,0x4c,0x44,//z 0x08,0x36,0x41,0x41,0x00,//{ 0x00,0x00,0x77,0x00,0x00,//| 0x00,0x41,0x41,0x36,0x08,//} 0x04,0x02,0x02,0x02,0x01,//~ }; //#endif //Tab_Ascii_5x7_CALL uint8 zhuang1[]={ /*-- 文字: 狀 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 --*/ 0x08,0x30,0x00,0xFF,0x20,0x20,0x20,0x20,0xFF,0x20,0xE1,0x26,0x2C,0x20,0x20,0x00, 0x04,0x02,0x01,0xFF,0x40,0x20,0x18,0x07,0x00,0x00,0x03,0x0C,0x30,0x60,0x20,0x00 }; uint8 tai1[]={ /*-- 文字: 態(tài) --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 --*/ 0x00,0x04,0x04,0x04,0x84,0x44,0x34,0x4F,0x94,0x24,0x44,0x84,0x84,0x04,0x00,0x00, 0x00,0x60,0x39,0x01,0x00,0x3C,0x40,0x42,0x4C,0x40,0x40,0x70,0x04,0x09,0x31,0x00 }; uint8 shi1[]={ /*-- 文字: 使 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 --*/ 0x40,0x20,0xF0,0x1C,0x07,0xF2,0x94,0x94,0x94,0xFF,0x94,0x94,0x94,0xF4,0x04,0x00, 0x00,0x00,0x7F,0x00,0x40,0x41,0x22,0x14,0x0C,0x13,0x10,0x30,0x20,0x61,0x20,0x00 }; uint8 yong1[]={ /*-- 文字: 用 --*/ /*-- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 --*/ 0x00,0x00,0x00,0xFE,0x22,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0xFE,0x00,0x00, 0x80,0x40,0x30,0x0F,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x42,0x82,0x7F,0x00,0x00 }; //x=9 y=16 點(diǎn)陣 0-9 const PROGMEM uint8_t lcd_numbers_lit[]={ 0x00,0xE0,0xE0,0x60,0x20,0x60,0xE0,0xE0,0x00,//0 0x00,0x7F,0x7F,0x60,0x40,0x60,0x7F,0x7F,0x00, 0x00,0x00,0x40,0x40,0xE0,0xE0,0x00,0x00,0x00,//1 0x00,0x00,0x00,0x00,0x7F,0x7F,0x00,0x00,0x00, 0x00,0xE0,0xE0,0x20,0x20,0xE0,0xE0,0xC0,0x00,//2 0x00,0x71,0x79,0x78,0x5E,0x47,0x43,0x41,0x00, 0x00,0xE0,0xE0,0x20,0x20,0xE0,0xE0,0xC0,0x00,//3 0x00,0x78,0x78,0x42,0x47,0x7F,0x7D,0x39,0x00, 0x00,0x00,0x00,0x80,0xE0,0xE0,0xE0,0x00,0x00,//4 0x00,0x0E,0x0F,0x0B,0x7F,0x7F,0x7F,0x08,0x00, 0x00,0xE0,0xE0,0xE0,0x20,0x20,0x20,0x20,0x00,//5 0x00,0x73,0x73,0x43,0x41,0x7F,0x7F,0x3E,0x00, 0x00,0xE0,0xE0,0x60,0x20,0x60,0x60,0x60,0x00,//6 0x00,0x7F,0x7F,0x43,0x43,0x7F,0x7E,0x3C,0x00, 0x00,0x20,0x20,0x20,0xA0,0xE0,0xE0,0x60,0x00,//7 0x00,0x00,0x40,0x78,0x7F,0x0F,0x01,0x00,0x00, 0x00,0xE0,0xE0,0x20,0x20,0x20,0xE0,0xE0,0x00,//8 0x00,0x7D,0x7D,0x47,0x42,0x47,0x7D,0x7D,0x00, 0x00,0xE0,0xE0,0x20,0x20,0xE0,0xE0,0x80,0x00,//9 0x00,0x67,0x6F,0x4C,0x6C,0x7F,0x3F,0x0F,0x00 }; //x=12 y=16 點(diǎn)陣 0-9數(shù)字 const PROGMEM uint8_t lcd_numbers[]={ 0x00,0xF0,0xFC,0xFC,0x0E,0x02,0x02,0x0E,0xFC,0xFC,0xF0,0x00,//0 0x00,0x07,0x3F,0x3F,0x70,0x40,0x40,0x70,0x3F,0x3F,0x07,0x00, 0x00,0x00,0x00,0x08,0x08,0xFC,0xFE,0xFE,0x00,0x00,0x00,0x00,//1 0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x7F,0x00,0x00,0x00,0x00, 0x00,0x38,0x3C,0x3E,0x06,0x02,0x86,0xFE,0xFC,0x78,0x00,0x00,//2 0x00,0x60,0x78,0x7C,0x5E,0x4F,0x43,0x41,0x40,0x40,0x00,0x00, 0x00,0x18,0x1C,0x1E,0x86,0x82,0xC6,0xFE,0x7C,0x38,0x00,0x00,//3 0x00,0x1C,0x3C,0x7C,0x60,0x40,0x61,0x7F,0x3F,0x1E,0x00,0x00, 0x00,0x00,0x80,0xC0,0xF0,0x3C,0xFE,0xFE,0xFE,0x00,0x00,0x00,//4 0x00,0x06,0x07,0x05,0x04,0x04,0x7F,0x7F,0x7F,0x04,0x04,0x00, 0x00,0x00,0xFE,0xFE,0xFE,0x62,0x62,0xE2,0xE2,0x82,0x00,0x00,//5 0x00,0x18,0x38,0x78,0x60,0x40,0x60,0x7F,0x3F,0x1F,0x00,0x00, 0x00,0xF0,0xFC,0xFC,0xCE,0x42,0xC6,0xCE,0x8E,0x0C,0x00,0x00,//6 0x00,0x0F,0x3F,0x7F,0x60,0x40,0x60,0x7F,0x3F,0x1F,0x00,0x00, 0x00,0x02,0x02,0x02,0x02,0x82,0xF2,0xFE,0x7E,0x0E,0x00,0x00,//7 0x00,0x00,0x00,0x60,0x7C,0x7F,0x1F,0x03,0x00,0x00,0x00,0x00, 0x00,0x38,0x7C,0x7E,0xC6,0x82,0x82,0xC6,0x7E,0x7C,0x38,0x00,//8 0x00,0x1E,0x3F,0x7F,0x61,0x40,0x40,0x61,0x7F,0x3F,0x1E,0x00, 0x00,0xF8,0xFC,0xFE,0x06,0x02,0x06,0xFE,0xFC,0xF0,0x00,0x00,//9 0x00,0x30,0x71,0x73,0x63,0x42,0x73,0x3F,0x1F,0x07,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//. 0x00,0x00,0x00,0x38,0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,//- 0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00 }; const PROGMEM uint8_t Tab_Ascii_5x72[95][5]={ /*全體ASCII 列表:5x7點(diǎn)陣*/ 0x00,0x00,0x00,0x00,0x00,//space 0x00,0x00,0x4f,0x00,0x00,//! 0x00,0x07,0x00,0x07,0x00,//" 0x14,0x7f,0x14,0x7f,0x14,//# 0x24,0x2a,0x7f,0x2a,0x12,//$ 0x23,0x13,0x08,0x64,0x62,//% 0x36,0x49,0x55,0x22,0x50,//& 0x00,0x05,0x07,0x00,0x00,//] 0x00,0x1c,0x22,0x41,0x00,//( 0x00,0x41,0x22,0x1c,0x00,//) 0x14,0x08,0x3e,0x08,0x14,//* 0x08,0x08,0x3e,0x08,0x08,//+ 0x00,0x50,0x30,0x00,0x00,//, 0x08,0x08,0x08,0x08,0x08,//- 0x00,0x60,0x60,0x00,0x00,//. 0x20,0x10,0x08,0x04,0x02,/// 0x3e,0x51,0x49,0x45,0x3e,//0 0x00,0x42,0x7f,0x40,0x00,//1 0x42,0x61,0x51,0x49,0x46,//2 0x21,0x41,0x45,0x4b,0x31,//3 0x18,0x14,0x12,0x7f,0x10,//4 0x27,0x45,0x45,0x45,0x39,//5 0x3c,0x4a,0x49,0x49,0x30,//6 0x01,0x71,0x09,0x05,0x03,//7 0x36,0x49,0x49,0x49,0x36,//8 0x06,0x49,0x49,0x29,0x1e,//9 0x00,0x36,0x36,0x00,0x00,//: 0x00,0x56,0x36,0x00,0x00,//; 0x08,0x14,0x22,0x41,0x00,//< 0x14,0x14,0x14,0x14,0x14,//= 0x00,0x41,0x22,0x14,0x08,//> 0x02,0x01,0x51,0x09,0x06,//? 0x32,0x49,0x79,0x41,0x3e,//@ 0x7e,0x11,0x11,0x11,0x7e,//A 0x7f,0x49,0x49,0x49,0x36,//B 0x3e,0x41,0x41,0x41,0x22,//C 0x7f,0x41,0x41,0x22,0x1c,//D 0x7f,0x49,0x49,0x49,0x41,//E 0x7f,0x09,0x09,0x09,0x01,//F 0x3e,0x41,0x49,0x49,0x7a,//G 0x7f,0x08,0x08,0x08,0x7f,//H 0x00,0x41,0x7f,0x41,0x00,//I 0x20,0x40,0x41,0x3f,0x01,//J 0x7f,0x08,0x14,0x22,0x41,//K 0x7f,0x40,0x40,0x40,0x40,//L 0x7f,0x02,0x0c,0x02,0x7f,//M 0x7f,0x04,0x08,0x10,0x7f,//N 0x3e,0x41,0x41,0x41,0x3e,//O 0x7f,0x09,0x09,0x09,0x06,//P 0x3e,0x41,0x51,0x21,0x5e,//Q 0x7f,0x09,0x19,0x29,0x46,//R 0x46,0x49,0x49,0x49,0x31,//S 0x01,0x01,0x7f,0x01,0x01,//T 0x3f,0x40,0x40,0x40,0x3f,//U 0x1f,0x20,0x40,0x20,0x1f,//V 0x3f,0x40,0x38,0x40,0x3f,//W 0x63,0x14,0x08,0x14,0x63,//X 0x07,0x08,0x70,0x08,0x07,//Y 0x61,0x51,0x49,0x45,0x43,//Z 0x00,0x7f,0x41,0x41,0x00,//[ 0x02,0x04,0x08,0x10,0x20,// 0x00,0x41,0x41,0x7f,0x00,//] 0x04,0x02,0x01,0x02,0x04,//^ 0x40,0x40,0x40,0x40,0x40,//_ 0x01,0x02,0x04,0x00,0x00,//` 0x20,0x54,0x54,0x54,0x78,//a 0x7f,0x48,0x48,0x48,0x30,//b 0x38,0x44,0x44,0x44,0x44,//c 0x30,0x48,0x48,0x48,0x7f,//d 0x38,0x54,0x54,0x54,0x58,//e 0x00,0x08,0x7e,0x09,0x02,//f 0x48,0x54,0x54,0x54,0x3c,//g 0x7f,0x08,0x08,0x08,0x70,//h 0x00,0x00,0x7a,0x00,0x00,//i 0x20,0x40,0x40,0x3d,0x00,//j 0x7f,0x20,0x28,0x44,0x00,//k 0x00,0x41,0x7f,0x40,0x00,//l 0x7c,0x04,0x38,0x04,0x7c,//m 0x7c,0x08,0x04,0x04,0x78,//n 0x38,0x44,0x44,0x44,0x38,//o 0x7c,0x14,0x14,0x14,0x08,//p 0x08,0x14,0x14,0x14,0x7c,//q 0x7c,0x08,0x04,0x04,0x08,//r 0x48,0x54,0x54,0x54,0x24,//s 0x04,0x04,0x3f,0x44,0x24,//t 0x3c,0x40,0x40,0x40,0x3c,//u 0x1c,0x20,0x40,0x20,0x1c,//v 0x3c,0x40,0x30,0x40,0x3c,//w 0x44,0x28,0x10,0x28,0x44,//x 0x04,0x48,0x30,0x08,0x04,//y 0x44,0x64,0x54,0x4c,0x44,//z 0x08,0x36,0x41,0x41,0x00,//{ 0x00,0x00,0x77,0x00,0x00,//| 0x00,0x41,0x41,0x36,0x08,//} 0x04,0x02,0x02,0x02,0x01,//~ }; /////////////// #define Start_T1 TCCR1B|=_BV(CS11);TCNT1=0//復(fù)位預(yù)計(jì)分頻器并開啟定時(shí)器T1 #define Stop_T1 TCCR1B&=~_BV(CS11) //關(guān)閉定時(shí)器T1 //數(shù)碼管的段碼編碼 unsigned char table[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; volatile unsigned char i,j,k; volatile unsigned char IRcode; //定義一個(gè)長度為4字節(jié)的無符號(hào)long類型變量來存儲(chǔ)代碼 volatile unsigned char IR_OK=0; //IR信號(hào)接收有效 當(dāng)程序響應(yīng)接收以后請(qǐng)馬上清零 這樣才會(huì)繼續(xù)接收下一IR碼 volatile unsigned char IR_con=0; //IR信號(hào)當(dāng)前接收位 0時(shí)表示第0位即同步碼(4.5ms高電平) volatile unsigned int Pulse_length=0; //捕獲的脈沖寬度 volatile unsigned char ICP_Parity=0; //捕獲中斷奇偶次計(jì)數(shù) 1時(shí)為偶次 并在此時(shí)判斷脈寬 volatile unsigned char address; volatile unsigned char code_data; volatile unsigned char code_data1; unsigned char clrbit; #define FREQ 8 //定義單片機(jī)工作頻率為 4M /////////////// //**************************************************************** // 函數(shù)名稱:DelayLcd // 函數(shù)功能:延時(shí) // 入口參數(shù): // 出口參數(shù): //***************************************************************** void DelayLcd(uint16 i) { uint16 j; for(j=200;j>0;j--) for(;i>0;i--); //while(i--); } //**************************************************************** // 函數(shù)名稱:LcdWriteCommand // 函數(shù)功能:寫指令到LCD模塊 // 入口參數(shù):數(shù)據(jù) // 出口參數(shù): //***************************************************************** void LcdWriteCommand(uint8 data1) // { uint8 i ; P_LCDCS0 ; P_LCDRS0 ; for(i=8;i>0;i--) { P_LCDCLK0; if(data1&0x80) P_LCDDAT1; else P_LCDDAT0; P_LCDCLK1; data1 <<= 1; } } //**************************************************************** // 函數(shù)名稱:LcdWritedata // 函數(shù)功能:寫數(shù)據(jù)到LCD模塊 // 入口參數(shù):數(shù)據(jù) // 出口參數(shù): //***************************************************************** void LcdWritedata(uint8 data1) // { uint8 i; P_LCDCS0 ; P_LCDRS1 ; for(i=8;i>0;i--) { P_LCDCLK0; if(data1&0x80) P_LCDDAT1; else P_LCDDAT0; P_LCDCLK1; data1 <<= 1; } } //**************************************************************** // 函數(shù)名稱:Lcd_SetAddr // 函數(shù)功能:設(shè)置LCD顯示地址 // 入口參數(shù): 頁地址 列地址 // 出口參數(shù): //***************************************************************** void Lcd_SetAddr(uint8 page,uint8 column) { //LcdWriteCommand(0xb0 | (y+yy)); //LcdWriteCommand(0x10 | (x>>4)); //LcdWriteCommand(0x00 | (x&0x0f)); //P_LCDCS0 ; LcdWriteCommand(0xb0|page); /*設(shè)置頁地址*/ LcdWriteCommand((column>>4)|0x10); /*設(shè)置列地址的高4位*/ LcdWriteCommand(column&0x0f); /*設(shè)置列地址的低4位*/ } ////// void Display_Graphic_32x2(uint8 page,uint8 column,PROGMEM uint8_t *dp) // 電池顯示 0、2、4、6、8、10 { uint8 i,j; uint8 page_address; uint8 column_address_L,column_address_H; page_address = 0xb0|page; column_address_L =(column&0x0f); column_address_H =(column>>4)|0x10; P_LCDCS0 ; for(j=0;j<2;j++) { LcdWriteCommand(page_address+j); /*設(shè)置頁地址*/ LcdWriteCommand(column_address_H); /*設(shè)置列地址的高4位*/ LcdWriteCommand(column_address_L); /*設(shè)置列地址的低4位*/ for (i=32;i>0;i--) //寫32行 { LcdWritedata(pgm_read_byte(dp++)); /*寫數(shù)據(jù)到LCD,每寫完一個(gè)8位的數(shù)據(jù)后列地址自動(dòng)加1*/ } LcdWritedata(0x00); } P_LCDCS1 ; } //#ifdef Display_Graphic_32x32_CALL void Display_Graphic_32x32(uint8 page,uint8 column,PROGMEM uint8_t *dp) { uint8 i,j; uint8 page_address; uint8 column_address_L,column_address_H; page_address = 0xb0|page; column_address_L =(column&0x0f); column_address_H =(column>>4)|0x10; P_LCDCS0 ; &
標(biāo)簽: 程序
上傳時(shí)間: 2016-03-03
上傳用戶:彥 yan
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1