




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第五章人機(jī)交互—輸出接口
一、概述二、數(shù)碼管接口設(shè)計(jì)三、LCD液晶接口設(shè)計(jì)四、發(fā)聲電路設(shè)計(jì)一、概述 1、顯示輸出:嵌入式應(yīng)用系統(tǒng)向人報(bào)告運(yùn)行狀態(tài)及運(yùn)行結(jié)果最常用的手段; 2、聲音輸出:主要是通過(guò)喇叭(SPK)來(lái)實(shí)現(xiàn)的; 3、打印輸出:通過(guò)打印機(jī)輸出嵌入式系統(tǒng)運(yùn)行的狀態(tài)和結(jié)果;
4、通信輸出。二、數(shù)碼管接口設(shè)計(jì)數(shù)碼管是一種應(yīng)用很普遍的顯示器件,從單片機(jī)、ARM到許多微型機(jī)控制系統(tǒng)及數(shù)字化儀器儀表中都用到數(shù)碼管作為顯示輸出。數(shù)碼管的主要部分是七段發(fā)光二極管;數(shù)碼管分為共陰極和共陽(yáng)極兩種;為了保護(hù)各段LED,需外加限流電阻。有的產(chǎn)品還附帶有一個(gè)小數(shù)點(diǎn),故有人叫其為八段式發(fā)光二極管。1.1數(shù)碼管接口電路通過(guò)段選端可以控制數(shù)碼管顯示內(nèi)容;位選端用于控制整個(gè)數(shù)碼管是否工作:共陰極數(shù)碼管,位選端要接地;共陽(yáng)極數(shù)碼管,位選端要接高電平一位數(shù)碼管接口電路(共陰極)
動(dòng)態(tài)顯示技術(shù)主要是利用了人眼的視覺(jué)暫留原理。人眼的視覺(jué)暫留時(shí)間約為100ms。在動(dòng)態(tài)顯示方式下,將各個(gè)顯示位的段選端并聯(lián)在一起,實(shí)現(xiàn)各顯示位的分時(shí)選通。
數(shù)碼管接口電路--動(dòng)態(tài)掃描實(shí)驗(yàn)?zāi)康模和ㄟ^(guò)實(shí)驗(yàn),理解數(shù)碼管顯示原理,會(huì)編寫(xiě)數(shù)碼管驅(qū)動(dòng)程序。實(shí)驗(yàn)內(nèi)容:控制數(shù)碼管顯示0000~9999。1.2實(shí)驗(yàn)?zāi)康呐c內(nèi)容1.4參考程序---初始化函數(shù)//----------引腳定義-----------#define smgA1 (1<<22) //p2.22連接smgA1#define smgA2 (1<<23) //p0.23連接smgA2#define smgA3 (1<<19) //p1.19連接smgA3#define smgA4 (1<<24) //p0.24連接smgA4/*********************************************************************名稱(chēng):NumbTube_Init()*功能:數(shù)碼管與SPI初始化********************************************************************/voidNumbTube_Init(void){PINSEL1=PINSEL1&0xfffc3fff; //設(shè)置引腳連接smgA2(p0.23),smgA4(0.24)
PINSEL2=PINSEL2&0xfffffff7; //設(shè)置數(shù)碼管的位選引腳連接smgA3(p1.19)
IO0DIR=IO0DIR|smgA2|smgA4; //設(shè)置smgA1~smgA4引腳為輸出
IO1DIR=IO1DIR|smgA3; IO2DIR=IO2DIR|smgA1; HC595_Init(); //初始化SPI0(時(shí)序與74HC595相匹配)}//-------------數(shù)碼管顯示數(shù)據(jù)(0~9顯示碼)----------------uint8constNumberTube_TAB[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x98};/*****************************************************************************名稱(chēng):NumbTube_Display(uint32data,uint8radix_point)*功能:控制數(shù)碼管顯示數(shù)據(jù)。*入口參數(shù): data 需要顯示的數(shù)據(jù)* radix_point 小數(shù)點(diǎn)的位置,取值范圍為4、3、2****************************************************************************/voidNumbTube_Display(uint32data,uint8radix_point){ uint32j,one,ten,hundred,thousand; //個(gè),十,百,千,的變量聲明
thousand=data/1000; //計(jì)算千位
if(thousand!=0)data-=thousand*1000; hundred=data/100; //計(jì)算百位 if(hundred!=0)data-=hundred*100;
ten=data/10; //計(jì)算十位
if(ten!=0)data-=ten*10; one=data%10; //計(jì)算個(gè)位參考程序---數(shù)據(jù)顯示函數(shù)
//-------------------顯示千位數(shù)據(jù)----------------
if(radix_point==4)HC595_SendData(NumberTube_TAB[thousand]&0x7f);
else HC595_SendData(NumberTube_TAB[thousand]);
NumbTube_Bit(0x01); //打開(kāi)顯示千位的位選端,見(jiàn)后面程序
for(j=0;j<500;j++);
//小段延時(shí)
//-------------------顯示百位數(shù)據(jù)----------------
if(radix_point==3)HC595_SendData(NumberTube_TAB[hundred]&0x7f);
else HC595_SendData(NumberTube_TAB[hundred]);
NumbTube_Bit(0x02);
for(j=0;j<500;j++);
//-------------------顯示十位數(shù)據(jù)----------------
if(radix_point==2) HC595_SendData(NumberTube_TAB[ten]&0x7f);
else HC595_SendData(NumberTube_TAB[ten]);
NumbTube_Bit(0x04);
for(j=0;j<500;j++);
//-------------------顯示個(gè)位數(shù)據(jù)----------------
HC595_SendData(NumberTube_TAB[one]);
NumbTube_Bit(0x08);
for(j=0;j<500;j++);}實(shí)驗(yàn)參考主程序/***************************************************************************名稱(chēng):main()*功能:控制數(shù)碼管顯示,完成實(shí)驗(yàn)內(nèi)容*************************************************************************/intmain(void){ uint32i;
NumbTube_Init();
for(i=1;i<9999;i++)
{ DelayMS(10);
NumbTube_Display(i,0);
}
return(0);}
1.在CodeWarriorIDE集成開(kāi)發(fā)環(huán)境中,使用“FollowMeStudyARM”工程模板建立新 工程。然后在工程中添加本實(shí)驗(yàn)的程序代碼,按F7快捷鍵編譯鏈接整個(gè)工程。編譯報(bào) 錯(cuò)則修改源程序中的錯(cuò)誤,如果編譯通過(guò)則在相應(yīng)的目錄下產(chǎn)生我們所需要的二進(jìn)制文件和可執(zhí)行映像文件。
2.運(yùn)行H-Flasher軟件,將產(chǎn)生的二進(jìn)制文件燒寫(xiě)到實(shí)驗(yàn)板上。
3.打開(kāi)AXD調(diào)試環(huán)境,并加載剛剛產(chǎn)生的可執(zhí)行映像文件進(jìn)行調(diào)試。
4.單擊全速運(yùn)行按鈕(快捷鍵F5),程序會(huì)運(yùn)行并停留在main()主函數(shù)處;繼續(xù)全速運(yùn)行,數(shù)碼管將顯示數(shù)字從0000一直遞加到9999。1.5實(shí)驗(yàn)步驟與結(jié)果三、LCD液晶接口設(shè)計(jì)
概述
液晶顯示LCD是一種被動(dòng)的顯示器件,它不能發(fā)光,只能使用周?chē)h(huán)境的光。LCD具有低工作電壓、微功耗、無(wú)輻射、小體積等特點(diǎn),LCD液晶顯示器還具有壽命長(zhǎng)、不易引起視疲勞等優(yōu)點(diǎn)。被廣泛應(yīng)用于儀表、家用電器、計(jì)算機(jī)、醫(yī)療儀器以及交通和通信等各個(gè)領(lǐng)域。液晶顯示原理液晶是一種介于固體和液體之間,具有規(guī)則性分子排列的有機(jī)化合物,既有晶體所特有的各向異性造成的雙折射性,又有液體所特有的流動(dòng)性。(a)液體分子(b)液晶分子
1.按點(diǎn)像素深度分類(lèi)
點(diǎn)象素深度:每個(gè)像素點(diǎn)的顏色有多少個(gè)二進(jìn)制位表示。 單色屏、4級(jí)灰度屏、8級(jí)灰度屏、16級(jí)灰度屏、64級(jí)灰度屏、266級(jí)灰度屏、16色屏、266色偽彩色屏、真彩色屏等。
2.按工作原理分類(lèi)
1)TN型(扭曲向列型液晶); 2)STN型(超扭曲向列型液晶); 3)TFT型(薄膜晶體管型液晶)。
3.按內(nèi)容顯示方式分類(lèi)
1)數(shù)顯液晶;
2)點(diǎn)陣字符液晶;
3)點(diǎn)陣圖形液晶。1.1液晶顯示屏分類(lèi)
LM2068點(diǎn)陣圖形式液晶顯示模塊具有兩種系列(S、E)。S系列的液晶模塊采用RA8835控制器,內(nèi)置32KSRAM顯示存儲(chǔ)器,適配Intel8080系列MPU的操作時(shí)序電路。顯示區(qū)具有文本和圖形兩種顯示特性,多種顯示合成方式。具有LCD驅(qū)動(dòng)電源,廣泛地適用于儀器儀表中。1.2液晶模塊LM2068LCD的驅(qū)動(dòng)原理:調(diào)整施加到液晶像素上的電壓、相位、頻率、峰值、有效值和占空比等參數(shù)來(lái)實(shí)現(xiàn)顯示。模塊接口多為FFC扁平線方式,需要專(zhuān)用插座連接。LM2068S液晶顯示模塊由以下四個(gè)部分組成: 1、LCD面板 2、RA8835控制電路
3、電源與調(diào)壓器電路
4、背光控制電路1.3液晶顯示模塊的接口特性
LM2068液晶顯示模塊的系統(tǒng)方框圖引腳號(hào)引腳名稱(chēng)I/O特性描述1VSS電源邏輯電源地(0V)2VDD電源邏輯電源正3Vo輸入對(duì)比度調(diào)節(jié)輸入端4/WR輸入寫(xiě)操作信號(hào)輸入端,(低電平有效)5/RD輸入讀操作信號(hào)輸入端,(低電平有效)6/CS輸入片選信號(hào)輸入端,(低電平有效)7A0輸入寄存器選擇信號(hào)輸入端,A0=1為寫(xiě)指令代碼,讀參數(shù);A0=0為寫(xiě)指令參數(shù)或顯示數(shù)據(jù)。8/Res輸入復(fù)位信號(hào)輸入端,(低電平有效)9DB0輸入/輸出數(shù)據(jù)總線(三態(tài))::16DB717/WAIT輸出等待信號(hào)輸出端無(wú)操作信號(hào)時(shí)為高阻態(tài),使用時(shí)開(kāi)路18VOUT輸出電源電源變壓器輸出端(為Vo服務(wù))19BLA背光電源LED背景燈電源正20BLK背光電源LED背景燈電源負(fù)1.4LM2068S的引腳定義
LM2068提供了Intel8080時(shí)序接口; CS是片選線,低電平有效;WR和RD分別為寫(xiě)和讀控制線,上升沿有效;A0為選擇信號(hào)線。LM2068的讀/寫(xiě)時(shí)序圖1.5LM2068S的時(shí)序符號(hào)描述所需最小時(shí)間最大時(shí)間T3DB建立到/WR上升沿時(shí)的時(shí)間(寫(xiě)周期)200nsT8DB從/RD上升沿起保持時(shí)間(讀周期)3ns15nsT9/RD下降沿到有效數(shù)據(jù)建立時(shí)間(讀周期)420nst11/RD、/WR脈沖有效時(shí)間500nst12/RD、/WR脈沖無(wú)效時(shí)間(讀周期)100ns(兩個(gè)連續(xù)寫(xiě)周期)200ns(寫(xiě)周期后跟一個(gè)讀周期)500ns注意:當(dāng)MCU與LM2068進(jìn)行通信時(shí),必須滿足以上LM2068的時(shí)序要求。上電后,/RST保持低電平至少5ms以上,低電平拉高后至少保持800ms再對(duì)模塊進(jìn)行軟件初始化。LM2068S的時(shí)序
顯示區(qū)具有兩種特性:文本顯示、圖形顯示。
文本顯示:擁有文本顯示特性的顯示區(qū);專(zhuān)用于文本方式顯示使用;
圖形顯示:擁有圖形顯示特性的顯示區(qū);專(zhuān)用于圖形方式顯示使用;
RA8835可以同時(shí)管理多個(gè)顯示區(qū)域,模塊的大多數(shù)指令也是圍繞顯示區(qū)域設(shè)置進(jìn)行的。參數(shù)主要有SAD、SL、AP、C/R。
SAD----顯示區(qū)域的起始地址; SL----顯示區(qū)域的“高度”,即所管理顯示的行數(shù); AP----顯示區(qū)域的“寬度”,即一行顯示所占的字節(jié)數(shù); C/R----實(shí)際顯示寬度,模塊屏面的顯示字符數(shù)。1.7LM2068S的指令系統(tǒng)---顯示區(qū)域顯示區(qū)域在顯示RAM中的起始位置是SAD,終止位置是SAD+(SL*AP),實(shí)際顯示空間大小是SAD+(SL*C/R)。顯示區(qū)域結(jié)構(gòu)示意圖
SCROLL 指令代碼 44H
指令描述:該指令帶有10個(gè)參數(shù),設(shè)置4個(gè)顯示區(qū)域分別在RAM空間中的起始位置和顯示行數(shù)。參數(shù)D7D6D5D4D3D2D1D0P1第一顯示區(qū)域首地址低8位SAD1LP2第一顯示區(qū)域首地址高8位SAD1HP3
第一顯示區(qū)域管理的顯示行數(shù)SL1P4第二顯示區(qū)域首地址低8位SAD2LP5第二顯示區(qū)域首地址高8位SAD2HP6
第二顯示區(qū)域管理的顯示行數(shù)SL2P7第三顯示區(qū)域首地址低8位SAD3LP8第三顯示區(qū)域首地址高8位SAD3HP9第四顯示區(qū)域首地址低8位SAD4LP10第四顯示區(qū)域首地址高8位SAD4H指令詳述參數(shù)D7D6D5D4D3D2D1D0P1000OVDM2DM1MX1MX0OV:合成方式選擇位。DM1:第一顯示區(qū)域的顯示屬性選擇位。0:文本1:圖形DM2:第三顯示區(qū)域的顯示屬性選擇位。合成顯示的邏輯關(guān)系設(shè)置,具體設(shè)置見(jiàn)表。MX1MX0合成方式00邏輯或合成01邏輯異或合成10邏輯與合成11保留OVLAY 指令代碼 5BH
指令描述:該指令設(shè)置了顯示區(qū)域合成顯示的邏輯關(guān)系以及第一、三顯示區(qū)域的顯示特性。DISONO/OFF 指令代碼 59H/58H
指令描述:顯示開(kāi)關(guān)設(shè)置指令,帶有1個(gè)參數(shù),設(shè)置了各顯示區(qū)及光標(biāo)的顯示屬性。顯示開(kāi)關(guān)設(shè)置指令所帶的參數(shù)
參數(shù)D7D6D5D4D3D2D1D0P1SAD3屬性SAD2、4屬性SAD1屬性光標(biāo)屬性顯示屬性設(shè)置
HDOT_SCR 指令代碼 5AH
指令描述:該指令設(shè)置了以點(diǎn)為單位的畫(huà)面水平移動(dòng)量。參數(shù)D7D6D5D4D3D2D1D0P100000D2D1D0CGRAM_ADR 指令代碼5CH指令描述:自定義字庫(kù)的CGRAM起始地址設(shè)置,帶有2個(gè)參數(shù)。參數(shù)D7D6D5D4D3D2D1D0P1CGRAM起始地址低8位SAGLP2CGRAM起始地址高8位SAGHCSRW 指令代碼 46H
指令描述:設(shè)置光標(biāo)地址指令。CSRR 指令代碼 47H指令描述:讀取光標(biāo)地址指令。參數(shù)D7D6D5D4D3D2D1D0P1光標(biāo)地址低8位CSRLP2光標(biāo)地址高8位CSRH所帶參數(shù)表CSRDIR 指令代碼4CH~4FH指令描述:光標(biāo)移動(dòng)方向的設(shè)置指令。光標(biāo)移動(dòng)方向與對(duì)應(yīng)取值CSR_FORM 指令代碼 5DH指令描述:該指令為光標(biāo)形狀的設(shè)置指令。參數(shù)D7D6D5D4D3D2D1D0P10000CRXP2CM000CRYCRX:光標(biāo)寬度,以象數(shù)點(diǎn)為單位。CRY:光標(biāo)高度,以象數(shù)點(diǎn)為單位。CM:光標(biāo)形狀選擇。
MEMWRITE
指令代碼 42H
指令描述:顯示數(shù)據(jù)寫(xiě)操作指令。
MEMREAD 指令代碼 43H
指令描述:顯示數(shù)據(jù)讀操作。#defineLCD_A0 (1<<23) //P2.23選擇信號(hào)#defineLCD_RD (1<<24) //P2.24讀信號(hào)#defineLCD_RST (1<<25) //P2.25復(fù)位信號(hào)#defineLCD_CS (1<<26) //P2.26芯片使能信號(hào),共用BOOT0引腳#defineLCD_WE (1<<27) //P2.27寫(xiě)信號(hào),共用BOOT1引腳/*********************************************************************名稱(chēng):LCD_WriteCommand(uint8Code)*功能:往液晶模塊寫(xiě)入一個(gè)字節(jié)的代碼*入口參數(shù):Code 指令代碼*注釋?zhuān)河捎赑2.27為特殊引腳,所以在寫(xiě)操作結(jié)束后將P2.27拉低********************************************************************/voidLCD_WriteCommand(uint8Code){ uint8i; IO2CLR=LCD_CS; //CS=0 IO2SET=LCD_A0; //A0=1 LS164_SendData(Code); //通過(guò)74HC164芯片向模塊寫(xiě)指令代碼
IO2SET=LCD_RD; //RD=1 IO2CLR=LCD_WE; //WR=0 for(i=0;i<3;i++); IO2SET=LCD_WE; //WR=1 IO2SET=LCD_CS; IO2CLR=LCD_WE; }寫(xiě)命令子程序/*********************************************************************名稱(chēng):LCD_WriteData()*功能:往液晶模塊寫(xiě)入一個(gè)字節(jié)的數(shù)據(jù)*入口參數(shù):Data 數(shù)據(jù)*注釋?zhuān)河捎赑2.27為特殊引腳,所以在寫(xiě)操作結(jié)束后將P2.27拉低********************************************************************/voidLCD_WriteData(uint8Data){ uint8i; IO2CLR=LCD_CS; //CS=0 IO2CLR=LCD_A0; //A0=0 LS164_SendData(Data); //通過(guò)74HC164芯片向模塊寫(xiě)顯示數(shù)據(jù)
IO2SET=LCD_RD; //RD=1 IO2CLR=LCD_WE; //WR=0 for(i=0;i<3;i++); IO2SET=LCD_WE; //WR=1 IO2SET=LCD_CS; //CS=1 IO2CLR=LCD_WE; //WR=0}寫(xiě)數(shù)據(jù)子程序?yàn)榱朔奖憷斫夂痛a移植,程序中把LM2068S模塊中的所有命令都定義成宏,定義如程序清單。#define SYSTEM_SET 0x40 //初始化顯示窗口設(shè)置,帶8個(gè)參數(shù)#define SLEEP_IN 0x53 //空閑操作 -#define DISP_ON 0x59 //顯示開(kāi) -#define DISP_OFF 0x58 //顯示關(guān),設(shè)置顯示方式,帶1個(gè)參數(shù)#define SCROLL 0x44 //設(shè)置顯示區(qū)域,卷動(dòng),帶10個(gè)參數(shù)#define OVLAY 0x5B //設(shè)置合成顯示方式,帶1個(gè)參數(shù)#define CGRAM_ADR 0x5C //設(shè)置CGRAM起始地址,帶2個(gè)參數(shù)#define HDOT_SCR 0x5A //設(shè)置點(diǎn)單元卷動(dòng)位置,帶1個(gè)參數(shù)#define CSRFORM 0x5D //設(shè)置光標(biāo)形狀,帶2個(gè)參數(shù)#define CSRDIR_R 0x4C //設(shè)置光標(biāo)移動(dòng)方向 向右 -#define CSRDIR_L 0x4D //設(shè)置光標(biāo)移動(dòng)方向 向左 -#define CSRDIR_U 0x4E //設(shè)置光標(biāo)移動(dòng)方向 向上 -#define CSRDIR_D 0x4F //設(shè)置光標(biāo)移動(dòng)方向 向下 -#define CSRW 0x46 //設(shè)置光標(biāo)地址,帶2個(gè)參數(shù)#define CSRR 0x47 //讀出光標(biāo)地址,帶2個(gè)參數(shù)#define MWRITE 0x42 //數(shù)據(jù)寫(xiě)入顯示緩沖區(qū),帶若干個(gè)參數(shù)#define MREAD 0x43 //從顯示緩沖區(qū)讀數(shù)據(jù),帶若干個(gè)參數(shù)命令宏定義/************************************************************************名稱(chēng):LCD_FillAll(uint8dat)*功能:LCD填充。以圖形方式進(jìn)行填充,起始地址為0x0000。*入口參數(shù):dat 要填充的數(shù)據(jù)*出口參數(shù):無(wú)***********************************************************************/voidLCD_FillAll(uint8dat){uint32i;//-------置地址指針--------
LCD_WriteCommand(CSRW);LCD_WriteData(0x00);//地址為0x0000
LCD_WriteData(0x00);//--------設(shè)置光標(biāo)移動(dòng)方向:右-------
LCD_WriteCommand(CSRDIR_R);//--------寫(xiě)入數(shù)據(jù)--------
LCD_WriteCommand(MWRITE);for(i=0;i<240*41;i++){LCD_WriteData(dat); }//---------重置地址指針-------
LCD_WriteCommand(CSRW); LCD_WriteData(0x00);//地址為0x0000
LCD_WriteData(0x00);}清屏函數(shù)uchar SYSTEMSET_TAB[8]={0x30, //單屏結(jié)構(gòu),8×8點(diǎn) 0x87,0x07, //字符寬度8,字符高度8
40, //有效顯示窗口的長(zhǎng)度40(320=8*40)
0x40, //lCD工作頻率
239, //掃描點(diǎn)行數(shù)(240)
41, //顯示屏一行所占顯示緩沖區(qū)的字節(jié)數(shù)
0x00}; ucharSCROLL_TAB[10]={0x00,0x00,0xef, //第一顯示區(qū)的起始地址為0x0000,點(diǎn)行數(shù)240
0x70,0x26,0xef, //第二顯示區(qū)的起始地址為0x2670,點(diǎn)行數(shù)240
0x00,0x60, //第三顯示區(qū)的起始地址為0x6000
0x00,0x00}; //第四顯示區(qū)的起始地址為0x000/************************************************************************名稱(chēng):LCD_Initialize()*功能:LCM初始化,將LCM初始化為純圖形模式,顯示起始地址為0x0000。*入口參數(shù):無(wú)*出口參數(shù):無(wú)*說(shuō)明:帶參數(shù)命令模式:先命令,后數(shù)據(jù)復(fù)位LM2068時(shí):/RST保持低電平至少5ms以上,低電平拉高后至少保持800ms再對(duì)模塊進(jìn)行軟件初始化***********************************************************************/voidLCD_Initialize(void){uchari;//--------初始化LCM的控制引腳--------
IO2DIR=IO2DIR|LCD_A0|LCD_CS|LCD_RD|LCD_WE|LCD_RST;初始化函數(shù)
//--------初始化164芯片,164芯片連接LCD的數(shù)據(jù)引腳D0~D7--------
LS164_Init();
//--------------復(fù)位模塊--------------
IO2CLR=LCD_RST; //拉低/RST引腳,保持5ms以上
DelayMS(10); //軟件延時(shí)
IO2SET=LCD_RST; //拉高/RST引腳,至少延時(shí)800ms后再操作
//-------------系統(tǒng)設(shè)置指令--------------
LCD_WriteCommand(SYSTEM_SET); for(i=0;i<8;i++) LCD_WriteData(SYSTEMSET_TAB[i]); //---------顯示區(qū)域設(shè)置----------
DelayMS(1); LCD_WriteCommand(SCROLL); for(i=0;i<10;i++) LCD_WriteData(SCROLL_TAB[i]); //---------關(guān)閉顯示---------
//LCD_WriteCommand(DISP_OFF); //關(guān)閉顯示區(qū)
//---------其他顯示功能設(shè)置-------
LCD_WriteCommand(HDOT_SCR);//HDOT_SCR,帶1個(gè)參數(shù)
LCD_WriteData(0x00); LCD_WriteCommand(OVLAY); LCD_WriteData(0x0d);//二重合成,顯示一區(qū)和三區(qū)都是圖形方式,異或邏輯
LCD_WriteCommand(CSRFORM); //光標(biāo)是陰影塊狀顯示方式,塊大小是8×8個(gè)象素
LCD_WriteData(0x07); LCD_WriteData(0x87); //---------清除屏幕-----------
LCD_FillAll(0x00); //----------打開(kāi)顯示-----------
LCD_WriteCommand(DISP_ON); LCD_WriteData(0x05); //本次只開(kāi)啟一顯示區(qū)和光標(biāo)}實(shí)驗(yàn)?zāi)康模豪斫庖壕敛僮鞯幕驹?,掌握液晶圖形顯示的基本方法。實(shí)驗(yàn)內(nèi)容:在顯示屏上畫(huà)一個(gè)笛卡兒坐標(biāo)系,并在坐標(biāo)系的原點(diǎn)畫(huà)一個(gè)半徑為20的圓1.9實(shí)驗(yàn)?zāi)康呐c內(nèi)容2.0電路原理分析LM2068S的數(shù)據(jù)線Q1~Q8連接74HC164芯片,其他控制線由LPC2220的P2.23~P2.27直接控制。開(kāi)發(fā)一些底層的畫(huà)圖函數(shù),包括: 打點(diǎn)函數(shù); 畫(huà)直線函數(shù); 畫(huà)圓函數(shù); 打印字符串函數(shù)等。設(shè)計(jì)時(shí)我們把軟件劃分3層: 硬件驅(qū)動(dòng)層 基本圖形層 用戶層。軟件層次圖2.1畫(huà)圖基本思想緩存區(qū)的定義如下: #defineGUI_LCM_XMAX320 //定義液晶x軸的點(diǎn)象素 #defineGUI_LCM_YMAX240 //定義液晶y軸的點(diǎn)象素 chargui_disp_buf[GUI_LCM_YMAX][GUI_LCM_XMAX/8]; //定義顯示緩存
硬件驅(qū)動(dòng)層主要完成兩件任務(wù): 一是操作液晶模塊:復(fù)位液晶模塊,液晶模塊的參數(shù)設(shè)置,等等。 二是管理顯示緩存區(qū):將顯示數(shù)據(jù)發(fā)送給液晶模塊從而刷新顯示內(nèi)容。2.2硬件驅(qū)動(dòng)層接口函數(shù)參數(shù)功能GRA_Initialize(void)無(wú)復(fù)位液晶模塊,進(jìn)行參數(shù)設(shè)置,初始化顯示緩存區(qū),清屏等。GRA_Point(uint32x,uint32y,TCOLORcolor)x指定點(diǎn)所在列的位置。y指定點(diǎn)所在行的位置color顯示顏色(對(duì)于黑白色LCM,為0時(shí)滅,為1時(shí)顯示)根據(jù)坐標(biāo)值改變顯示緩存區(qū)中對(duì)應(yīng)該點(diǎn)的數(shù)據(jù)。GRA_ReadPoint(uint32x,uint32y,TCOLOR*ret)x指定點(diǎn)所在列的位置。y指定點(diǎn)所在行的位置。ret保存顏色值的指針。讀取指定點(diǎn)的顏色。GRA_Refresh(uint32x1,uint32y1,uint32x2,uint32y2);x1,y1左上角點(diǎn)坐標(biāo)值x2,y2右下角點(diǎn)坐標(biāo)值根據(jù)(x1,y1)和(x2,y2)兩個(gè)點(diǎn)確定的矩形區(qū)域,刷新液晶屏GRA_ClearSCR(void)無(wú)顯示緩存區(qū)清零,刷新液晶屏。硬件驅(qū)動(dòng)層這一層提供基本畫(huà)線、畫(huà)矩形、畫(huà)圓、填充、打印字符等基本函數(shù)。本層一些必要的接口函數(shù)接口函數(shù)參數(shù)功能GRA_Line(x0,y0,x1,y1,color)x0,y0起點(diǎn)坐標(biāo)值x1,y1終點(diǎn)坐標(biāo)值color顯示顏色畫(huà)一條直線。GRA_Rectangle(x0,y0,x1,y1,color)x0,y0矩形左上角點(diǎn)坐標(biāo)值x1,y1矩形右下角點(diǎn)坐標(biāo)值color顯示顏色畫(huà)一個(gè)矩形框。GRA_Circle(x0,y0,r,color)x0,y0圓心坐標(biāo)值r半徑值color顯示顏色畫(huà)一個(gè)圓。GRA_FillCircle(x0,y0,r,color)x0,y0圓心坐標(biāo)值r半徑值color顯示顏色圓填充GRA_PutChar(x,y,uint8ch)x,y打印字符的位置坐標(biāo)值ch字符的ASCII碼打印字符基本圖形層實(shí)驗(yàn)參考程序#include"whole.h"#defineWhite 1/***************************************************************************名稱(chēng):main()*功能:繪制笛卡爾坐標(biāo)系*出口參數(shù):返回0表示操作失敗,返回1表示操作成功**************************************************************************/intmain(void){ GRA_Initialize();
//----------畫(huà)迪卡爾坐標(biāo)系--------
GRA_Line(110,130,210,130,White); //畫(huà)水平線
GRA_Line(210,130,205,125,White); //畫(huà)箭頭
GRA_Line(210,130,205,135,White); //畫(huà)箭頭
GRA_Line(160,80,160,180,White); //畫(huà)垂直線
GRA_Line(160,80,155,85,White); //畫(huà)箭頭
GRA_Line(160,80,165,85,White); //畫(huà)箭頭
GRA_Circle(160,130,20,White); //畫(huà)半徑20的圓
GRA_PutChar(130,140,'('); //打印“(0,0)”
GRA_PutChar(135,140,'0'); GRA_PutChar(140,140,','); GRA_PutChar(145,140,'0'); GRA_PutChar(150,140,')'); GRA_Refresh(100,80,220,170); //根據(jù)緩沖區(qū)的內(nèi)容刷新顯示屏
while(1); return(1);}2.3實(shí)驗(yàn)步驟與結(jié)果1.在CodeWarriorIDE集成開(kāi)發(fā)環(huán)境中,使用“FollowMeStudyARM”工程模板建立新工程。然后在工程中添加本實(shí)驗(yàn)的程序代碼,按F7快捷鍵編譯鏈接整個(gè)工程。編譯報(bào) 錯(cuò)則修改源程序中的錯(cuò)誤,如果編譯通過(guò)則在相應(yīng)的目錄下產(chǎn)生我們所需要的二進(jìn)制文件和可執(zhí)行映像文件。2.運(yùn)行H-Flasher軟件,將產(chǎn)生的二進(jìn)制文件燒寫(xiě)到實(shí)驗(yàn)板上。3.打開(kāi)AXD調(diào)試環(huán)境,并加載剛剛產(chǎn)生的可執(zhí)行映像文件進(jìn)行調(diào)試。4.單擊全速運(yùn)行按鈕(快捷鍵F5),程序會(huì)運(yùn)行并停留在main()主函數(shù)處;繼續(xù)全速運(yùn)行,液晶顯示屏中顯示我們繪制的笛卡兒坐標(biāo)系。四、發(fā)聲電路設(shè)計(jì)---概述
電聲器件是指能將聲音信號(hào)轉(zhuǎn)換為音頻電信號(hào)或者將音頻電信號(hào)轉(zhuǎn)換為聲音信號(hào)的器件。
傳聲器俗稱(chēng)話筒,音譯為麥克風(fēng),是一種聲→電換能器件,可分為電動(dòng)和靜電兩類(lèi)。
蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,通常采用直流電壓供電。
揚(yáng)聲器俗稱(chēng)喇叭,也是一種發(fā)聲器件,與蜂鳴器不同的是揚(yáng)聲器可以發(fā)出多種音頻。所以它在實(shí)際生活中應(yīng)用相當(dāng)廣泛。1.1揚(yáng)聲器發(fā)聲原理?yè)P(yáng)聲器主要起著“電→力→聲”的能量變換作用。揚(yáng)聲器的分類(lèi)如下:按電→聲轉(zhuǎn)換的原理分:電磁式、電動(dòng)式、靜電式、壓電式等;按所覆蓋的頻帶分:分為低聲單元、中音n,單元、高音單元和全頻帶單元。電動(dòng)式揚(yáng)聲器的結(jié)構(gòu)常見(jiàn)的揚(yáng)聲器實(shí)物圖
聲音的產(chǎn)生是一種音頻振動(dòng)的效果,振動(dòng)的頻率高則為高音,頻率低則為低音。音頻的范圍為20Hz-200kHz之間。一般音響電路是以正弦波信號(hào)驅(qū)動(dòng)喇叭,產(chǎn)生悅耳的音樂(lè);在數(shù)字電路里,則一般是以脈沖信號(hào)驅(qū)動(dòng)喇叭以產(chǎn)生聲音。聲音的產(chǎn)生1.2音調(diào)與節(jié)拍日常生活中通常以Do、Re、Mi、Fa、So、La、St分別代表某一個(gè)頻率的聲音,稱(chēng)之為“音調(diào)”,即Tone。在音階表中一共包括3個(gè)音階(低音、中音與高音),每個(gè)音階粗略地為7個(gè)音度(音調(diào)),而每個(gè)音階之間的頻率相差一倍。下表列出了C調(diào)音階和頻率之間的對(duì)照關(guān)系。
音階n1234567DoReMiFaSoLaSi低音簡(jiǎn)譜頻率262294330370410440494中音簡(jiǎn)譜1234567頻率524588660740820880988高音簡(jiǎn)譜頻率1048117613201480164017601976節(jié)拍”即Beat,讓音樂(lè)具有旋律,更可以調(diào)節(jié)各個(gè)音的快慢速度。除了“拍子”以外,還有“音節(jié)”,在樂(lè)譜左上方都會(huì)定義每個(gè)音節(jié)有多少拍。如圖所示:若以程序來(lái)發(fā)出上述兩小節(jié)的音,則是:
Do/0.25s、Do/0.25s、Re/0.5s、Do/0.5s;Fa/0.5s、Mi/1s
即如圖所示:
524Hz/250ms、524Hz/250ms、588Hz/500ms、524Hz/500ms;
740Hz/500ms、660Hz/1000ms。
產(chǎn)生音樂(lè)的波形圖具體實(shí)現(xiàn)方法:
將樂(lè)譜中每個(gè)音符的音調(diào)和節(jié)拍轉(zhuǎn)換成相應(yīng)的音調(diào)參數(shù)和節(jié)拍參數(shù),將其做成表格存放在存儲(chǔ)器里,通過(guò)程序依次取出一個(gè)音符的相關(guān)參數(shù),播放該音符,直至播放完最后一個(gè)音符。播放一段音樂(lè)“生日快樂(lè)歌”,簡(jiǎn)譜所示。1.3實(shí)驗(yàn)內(nèi)容
喇叭電路連接圖,LPC2220通過(guò)GPIO引腳P0.29連接三極管T的基級(jí)。控制三極管的導(dǎo)通與否,引起揚(yáng)聲器內(nèi)部線圈的震動(dòng),從而產(chǎn)生聲音。1.4電路原理分析
揚(yáng)聲器不同的振動(dòng)頻率會(huì)產(chǎn)生不同的音調(diào)。我們根據(jù)音符與振動(dòng)頻率的對(duì)應(yīng)關(guān)系,分低、中、高音3大頻率段,分別定義了3個(gè)頻率表數(shù)組:
FreTab_Low[7]、FreTab_Mid[7]、FreTab_High[7]。intFreTab_Low[7]={262,294,330,349,392,440,494}; //低音的頻率表
intFreTab_Mid[7]={523,578,659,698,784,880,988}; //中音intFreTab_High[7]={1046,1175,1318,1397,1568,1760,1976};//高音1.5程序分析---音頻表定義
音頻表采取數(shù)組的形式保存歌曲的曲譜,曲譜存儲(chǔ)格式:uint8Happy_Birthday[]={音調(diào),節(jié)拍,音調(diào),節(jié)拍....,0,0}。其中Happy_Birthday”為歌曲存放的首地址;末尾:“0,0”表示結(jié)束。
uint8Happy_Birthday[]={0x11,0x04,0x11,0x04,0x12,0x02,
0x11,0x02,0x14,0x02,0x13,0x01,0x11,0x04,
0x11,0x04,0x12,0x02,0x11,0x02,0x15,0x02,
0x14,0x01,0x11,0x04,0x11,0x04,0x21,0x02,
0x16,0x02,0x14,0x02,0x13,0x02,x22,0x02,
0x17,0x04,0x17,0x04,0x16,0x02,x14,0x02,
0x15,0x02,0x14,0x01,0x00,0x00};在曲譜存放的數(shù)組中,音調(diào)與節(jié)拍相對(duì)應(yīng)的。在保存的音調(diào)數(shù)據(jù)中,高4位數(shù)字代表低(0)、中(1)、高音(2);低4位數(shù)字代表音符Do(1)、Re(2)、Mi(3)、Fa(4)、So(5)、La(6)、St(7)。在保存的節(jié)拍數(shù)據(jù)中,0x02代表1拍,0x04代表1/2拍,0x08代表1/4拍,以此類(lèi)推。程序分析---播放表表定義首先設(shè)置音頻表的首地址,從音頻表中取一組音調(diào)和節(jié)拍的數(shù)據(jù)。如果取的這兩個(gè)數(shù)據(jù)都是0x00,則表示音樂(lè)結(jié)束;否則的話,根據(jù)音調(diào)產(chǎn)生相應(yīng)頻率的脈沖信號(hào)驅(qū)動(dòng)喇叭。如果節(jié)拍到了則繼續(xù)從音頻表中取數(shù)據(jù)。音樂(lè)播放流程圖程序分析---播放流程
本節(jié)采用定時(shí)器0來(lái)產(chǎn)生相應(yīng)的頻率,用定時(shí)器1來(lái)控制音符節(jié)拍,兩個(gè)定時(shí)器的中斷服務(wù)子程序表
/*****************************************************************************名稱(chēng):(__irq)Time0_ISR()*功能:改變喇叭引腳電平****************************************************************************/void__irqTime0_ISR(){ if((IO0PIN&SPEAK)==0) //喇叭電平取反if((IO1SET&SPEAK)==0)
SPEAKON(); //P0.29為高電平
else SPEAKOFF(); //P0.29為低電平
T0IR=0x01; //清除定時(shí)器0中斷標(biāo)志
VICVectAddr=0x00000000; //中斷結(jié)束}/*****************************************************************************名稱(chēng):(__irq)Time1_ISR()*功能:定時(shí)產(chǎn)生節(jié)拍,改變定時(shí)器0的匹配值****************************************************************************/void__irqTime1_ISR(void){ uint32Frq,Sylla; T1TCR=0x00; //關(guān)閉定時(shí)器0/1
T0TCR=0x00;
T1IR=0x01; //清除定時(shí)器0/1中斷標(biāo)志
T0IR=0x01;1.6參考程序---中斷服務(wù)程序
if((*pMusic==0x00)&(*(pMusic+1)==0x00)) //判斷音樂(lè)是否結(jié)束
{ VICVectAddr=0x00000000; } //中斷結(jié)束
else { if((*pMusic&0xf0)==0x00) //如果是低音
Frq=Fpclk/(2*FreTab_Low[*pMusic&0x0f]);//取得新的音符頻率低音值
elseif((*pMusic&0xf0)==0x10) //如果是中音
Frq=Fpclk/(2*FreTab_Mid[*pMusic&0x0f]);//取得新的音符頻率中音值
elseif((*pMusic&0xf0)==0x20) //如果是高音
Frq=Fpclk/(2*FreTab_High[*pMusic&0x0f]);//取得新的音符頻率高音值
pMusic++; Sylla=Fpclk/*pMusic; //取得音符節(jié)拍值
pMusic++; T0MR0=Frq; //第一個(gè)音符的頻率值給定時(shí)器0
T1MR0=Sylla; //第一個(gè)音符的節(jié)拍值給定時(shí)器1
T0TCR=0x03;
T1TCR=0x03;
VICVectAddr=0x00000000; //中斷結(jié)束
} }
Music_Init()和Music_Play()函數(shù),分別用于初始化設(shè)置和音樂(lè)播放。參考程序---初始化和音樂(lè)播放函數(shù)#define SPEAK (1<<29) //注釋?zhuān)篜0.29控制喇叭/*****************************************************************************名稱(chēng):Music_Init()*功能:喇叭引腳與定時(shí)器0,1的初始化,給定時(shí)器0與1賦初值*入口參數(shù):無(wú)*出口參數(shù):無(wú)****************************************************************************/voidMusic_Init(void){ PINSEL1=PINSEL1&0xf3ffffff; //選擇喇引腳為GPIO
IO0DIR=IO0DIR|SPEAK; //設(shè)置與喇叭連接的引腳為輸出
//-----------------設(shè)置定時(shí)器0-----------------------------
T0TC=0; //定時(shí)器0計(jì)數(shù)器清0
T0PR=0; //時(shí)鐘不分頻
T0MCR=0x03;//設(shè)置T0MR0匹配后復(fù)位T0TC,并產(chǎn)生中斷標(biāo)志//-----------------設(shè)置定時(shí)器0中斷--------------------------
VICVectCntl3=0x24; //定時(shí)器0中斷分配優(yōu)先級(jí)3
VICVectAddr3=(uint32)Time0_ISR; //設(shè)置中斷向量地址
//-----------------設(shè)置定時(shí)器1-----------------------------
T1TC=0; //定時(shí)器1計(jì)數(shù)器清0
T1PR=2; //時(shí)鐘不分頻
T1MCR=0x03; //設(shè)置T1MR0匹配后復(fù)位T1TC,并產(chǎn)生中斷標(biāo)志
//-----------------設(shè)置定時(shí)器1中斷-------------------------
VICVectCntl2=0x25; //定時(shí)器1中斷分配優(yōu)先級(jí)為2
VICVectAddr2=(uint32)Time1_ISR; //設(shè)置中斷向量地址
VICIntEnable=VICIntEnable|0x00000030; //使能定時(shí)器0/1中斷}/*****************************************************************************名稱(chēng):Music_Play()*功能:控制定時(shí)器0與定時(shí)器1,產(chǎn)生音樂(lè)*入口參數(shù):無(wú)*出口參數(shù):無(wú)****************************************************************************/voidMusic_Play(uint8*MusicTable){ uint32Frq,Sylla; //定義音符頻率與節(jié)拍變量
pMusic=MusicTable;
if((*pMusic&0xf0)==0x00) //如果是低音
Frq=Fpclk/(2*FreTab_Low[*pMusic&0x0f]); //取得新的音符頻率低音值elseif((*pMusic&0xf0)==0x10) //如果是中音
Frq=Fpclk/(2*FreTab_Mid[*pMusic&0x0f]); //取得新的音符頻率中音值elseif((*pMusic&0xf0)==0x20) //如果是高音
Frq=Fpclk/(2*FreTab_High[*pMusic&0x0f]); //取得新的音符頻率高音值pMusic++;Sylla=Fpclk/LengthTab[*pMusic]; //取得音符節(jié)拍值pMusic++;T0MR0=Fpclk/Frq; //第一個(gè)音符的頻率值給定時(shí)器0T1MR0=Fpclk/Sylla; //第一個(gè)音符的節(jié)拍值給定時(shí)器1
T1TCR=0x03;T1TCR=0x01; //啟動(dòng)定時(shí)器1T0TCR=0x03;T0TCR=0x01; //啟動(dòng)定時(shí)器0}/*****************************************************************************名稱(chēng):main()*功能:播放音樂(lè)****************************************************************************/intmain(void){
Music_Init();
while(1)
{
Music_Play(Happy_Birthday); //播放音樂(lè)
} return(0);}參考程序---Main主程序1.在CodeWarriorIDE集成開(kāi)發(fā)環(huán)境中,使用“FollowMeStudyARM”工程模板建立新工程。然后在工程中添加本實(shí)驗(yàn)的程序代碼,按F7快捷鍵編譯鏈接整個(gè)工程。編譯報(bào)錯(cuò)則修改源程序中的錯(cuò)誤,如果編譯通過(guò)則在相應(yīng)的目錄下產(chǎn)生我們所需要的二進(jìn)制文件和可執(zhí)行映像文件。2.運(yùn)行H-Flasher軟件,將產(chǎn)生的二進(jìn)制文件燒寫(xiě)到實(shí)驗(yàn)板上。3.打開(kāi)AXD調(diào)試環(huán)境,并加載剛剛產(chǎn)生的可執(zhí)行映像文件進(jìn)行調(diào)試。4.單擊全速運(yùn)行按鈕(快捷鍵F5),程序會(huì)運(yùn)行并停留在main()主函數(shù)處;繼續(xù)全速運(yùn)行,我們可以聽(tīng)到喇叭播放的一段音樂(lè)“生日快樂(lè)歌”。1.7實(shí)驗(yàn)步驟與結(jié)果五、LED點(diǎn)陣顯示屏LED顯示屏是由多個(gè)發(fā)光二極管排列組成的顯示器件LED顯示屏可以顯示變化的數(shù)字、文字、圖形圖像。LED顯示屏技術(shù)特點(diǎn): ①效果卓越; ②維修方便; ③質(zhì)量?jī)?yōu)良; ④格式靈活; ⑤內(nèi)容豐富; ⑥信息量大。目前LED顯示屏作為新一代的信息傳播媒體,已經(jīng)成為城市信息現(xiàn)代化建設(shè)的標(biāo)志,同時(shí)也可廣泛應(yīng)用到軍事、車(chē)站、賓館、體育、新聞、金融、證券、廣告以及交通運(yùn)輸?shù)仍S多行業(yè)。
各種LED顯示屏
LED顯示產(chǎn)品目前已形成了4類(lèi):
1、單色文字顯示屏;
2、點(diǎn)陣和數(shù)碼管混合顯示屏;
3、雙基色(紅、綠)多媒體視屏;
4、全彩色(紅、綠、藍(lán))多媒體視屏。
LED它本身具有如下優(yōu)點(diǎn):亮度高、工作電壓低、功耗小、小型化、壽命長(zhǎng)、耐沖擊和性能穩(wěn)定。LED電子顯示屏目前正朝著更高亮度、更高耐氣候性、更高的發(fā)光密度、更高的發(fā)光均勻性、更高的灰度級(jí)別、全色化方向發(fā)展。1.1LED點(diǎn)陣顯示屏分類(lèi)
8X8點(diǎn)陣LED結(jié)構(gòu),由64個(gè)發(fā)光二極管組成。每個(gè)發(fā)光二極管放置在行線和列線的交叉點(diǎn)上,當(dāng)對(duì)應(yīng)的某一行置1電平,某一列置0電平,則相應(yīng)的二極管就亮。
8×8LED點(diǎn)陣顯示屏實(shí)物,如果想設(shè)計(jì)更大的點(diǎn)陣顯示屏,可以采用多個(gè)模塊進(jìn)行拼接。
8×8LED點(diǎn)陣顯示屏內(nèi)部示意圖1.2LED點(diǎn)陣顯示原理我們?cè)贚ED點(diǎn)陣顯示屏上顯示一個(gè)“大”字。
顯示方法有兩種:行掃描、列掃描。
下面以列掃描為例,算法如下:
for(i=1;i<9;i++){ 第i列置0,其他列置1,R1~R8行輸入相應(yīng)的編碼數(shù)據(jù);
延時(shí)1ms;
}1.3實(shí)驗(yàn)?zāi)康呐c內(nèi)容實(shí)驗(yàn)?zāi)康模豪斫釲ED點(diǎn)陣顯示屏操作的基本原理,掌握漢字顯示的基本方法。實(shí)驗(yàn)內(nèi)容1:在8×8LED顯示屏上顯示一個(gè)“大”字。實(shí)驗(yàn)內(nèi)容2:在8×8LED顯示屏上顯示一個(gè)“大”字,并控制該“大”字從左到右平滑移動(dòng)。
1.4實(shí)驗(yàn)原理分析
當(dāng)所有的行引腳R1~R8為高電平,所有的列引腳C1~C8為低電平時(shí),則這個(gè)點(diǎn)陣模塊上的64個(gè)LED燈全部點(diǎn)亮。同樣利用人眼的視覺(jué)暫留原理來(lái)實(shí)現(xiàn)內(nèi)容的顯示
電路中顯示一個(gè)“大”字。如果采用列掃描的方法,則算法如下:①Q(mào)1輸出低電平,其他列輸出高電平;QH~QA輸出0x44;延時(shí)1ms。②Q2輸出低電平,其他列輸出高電平;QH~QA輸出0x24;延時(shí)1ms。③Q3輸出低電平,其他列輸出高電平;QH~QA輸出0x14;延時(shí)1ms。④Q4輸出低電平,其他列輸出高電平;QH~QA輸出0x0f;延時(shí)1ms。⑤Q5輸
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030冷軋鋼板產(chǎn)業(yè)行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025年-廣東建筑安全員考試題庫(kù)
- 2025-2030冬蟲(chóng)夏草行業(yè)市場(chǎng)深度調(diào)研及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 2025-2030農(nóng)業(yè)中的水質(zhì)傳感器行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030養(yǎng)殖行業(yè)市場(chǎng)深度分析及競(jìng)爭(zhēng)格局與投資價(jià)值研究報(bào)告
- 2025-2030全自動(dòng)售貨機(jī)行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030全球及中國(guó)車(chē)輛集電器行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030全球及中國(guó)物理吸收分析儀行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 出租地下停車(chē)位合同標(biāo)準(zhǔn)文本
- 2025-2030全球及中國(guó)基本建設(shè)項(xiàng)目管理軟件行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 初中道德與法治八年級(jí)第四課書(shū)面作業(yè)設(shè)計(jì)樣例(第3-4周)
- GB∕T 17626.5-2019 電磁兼容 試驗(yàn)和測(cè)量技術(shù) 浪涌(沖擊)抗擾度試驗(yàn)
- 《檢驗(yàn)檢測(cè)機(jī)構(gòu)監(jiān)督管理辦法》培訓(xùn)結(jié)業(yè)考核試題附答案
- 基于SolidWorks球閥參數(shù)化設(shè)計(jì)
- 首件檢驗(yàn)記錄表(標(biāo)準(zhǔn)樣版)
- 重慶森林工程林業(yè)項(xiàng)目營(yíng)造林檢查驗(yàn)收辦法(試行)
- 《江南園林分析》ppt課件
- 市政工程施工質(zhì)量檢查表
- 施工日志填寫(xiě)范本
- 土及部分巖石力學(xué)參數(shù)經(jīng)驗(yàn)值
- 如何做好銀行業(yè)IT審計(jì)
評(píng)論
0/150
提交評(píng)論