freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的電子琴的設(shè)計(jì)_課程設(shè)計(jì)說(shuō)明書(shū)(文件)

 

【正文】 K43 鍵按下 K44 鍵按下 LED 燈、數(shù)碼管、低音 FA LED 燈、數(shù)碼管、低音 SO LED 燈、數(shù)碼管、低音 LA LED 燈、數(shù)碼管、低音 SI LED 燈、數(shù)碼管、高音 DO LED 燈、數(shù)碼管、高音 DO LED 燈、數(shù)碼管、高音 SI LED 燈、數(shù)碼管、高音 LA LED 燈、數(shù)碼管、高音 SO LED 燈、數(shù)碼管、高音 FA LED 燈、數(shù)碼管、高音 MI LED 燈、數(shù)碼管、高音 RE LED 燈、數(shù)碼管、高音 DO 14 程序編寫(xiě) 程序開(kāi)頭以及參數(shù)定義 include include define unint unsigned int define unchar unsigned char void check_key()。 //KEY2 開(kāi)啟自動(dòng)播放 sbit Stop = P3^2。 //數(shù)碼管 unchar code Table3[] = {0xFE,0xFC,0xF8,0xF0, 0xE0,0xC0,0x80,0x00, 0x00,0x01,0x03,0x07, 0x0F,0x1F,0x3F,0x7F}。 /*****自動(dòng)演示音調(diào)表 *****/ unsigned char code yanshi_tone[]= { 1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0, 8,0,7,0,6,0,5,0,4,0,3,0,2,0,1,0 }。 /*****15ms 延時(shí)子程序,用于節(jié)拍 *****/ void delay(void) { unsigned char n=15。i++)。 EX0=1。 } /*****定時(shí)器 0 中斷服務(wù)程序 *****/ void timer0(void) interrupt 1 { TH0=tone1。 } void int_0() interrupt 0 { TR0=~TR0。增加了樂(lè)感和美感。 unsigned char a=1。 17 P1=0xff。 tone2=yinfu[2*a1]。 P1=Table3[z]。 } } 主程序 主程序中對(duì)鍵盤(pán)的掃描運(yùn)用 WHILE 程序不斷進(jìn)行。 while(1) { check_key()。0x0f。0x0f。tone1=0xfb。TR0=0。tone1=0xfc。TR0=0。tone1=0xfc。TR0=0。tone1=0xfc。TR0=0。 Temp = Tempamp。 //掃描第 2 行鍵盤(pán) Temp = P2。 Temp = P2。 switch(Temp) { case 0xd7: Key = 4。EA=1。 //21 被按下 case 0xdb: Key = 5。EA=1。 //22 被按下 case 0xdd: Key = 6。EA=1。 //23 被按下 case 0xde: Key = 7。EA=1。 //24 被按下 } P0 = Table1[Key]。 P1=Table3[Key]。0x0f。0x0f。tone1=0xfb。TR0=0。tone1=0xfd。TR0=0。tone1=0xfd。TR0=0。tone1=0xfd。TR0=0。 Temp = Tempamp。 //掃描第 4 行鍵盤(pán) Temp = P2。 Temp = P2。 switch(Temp) { case 0x77: Key = 12。EA=1。 //41 被按下 case 0x7b: Key = 13。EA=1。 //42 被按下 case 0x7d: Key = 14。EA=1。 //43 被按下 21 case 0x7e: Key = 15。EA=1。 //44 被按下 } P0 = Table1[Key]。 P1=Table3[Key]。 例如:復(fù)位電路是否設(shè)計(jì)正確;揚(yáng)聲器模塊是否連接正確; LED 燈是否連接正確,避免反接等問(wèn)題。 6 收獲、體會(huì) 在本次單片機(jī)的設(shè)計(jì)的三周中,使我不僅僅熟悉和掌握了單片機(jī)軟件與硬件的常用設(shè)計(jì)與功能,還使我對(duì)于一項(xiàng)設(shè)計(jì)研究的制作過(guò)程所需要的詳細(xì)步驟和具體的實(shí)現(xiàn)方法有了深刻理解。 專(zhuān)業(yè)設(shè)計(jì)的過(guò)程中有成功的喜悅,有問(wèn)題的困惱,讓我更明白了這一過(guò)程的彌足珍貴,還有“付出就有收獲”這句箴言。 總之,在這次專(zhuān)業(yè)設(shè)計(jì)中無(wú)論是從軟件編寫(xiě)、調(diào)試還是軟硬件聯(lián)機(jī)調(diào)試,我都付出了大量的時(shí)間和心血。將所有程序組織起來(lái),在軟件環(huán)境下運(yùn)行,檢查程序是否正確。 Play_SHENGRIKUAILE()。 Temp = Tempamp。TR0=0。tone1=0xfb。TR0=0。tone1=0xfc。TR0=0。tone1=0xfc。TR0=0。tone1=0xfc。0x0f。0x0f。 P1=Table3[Key]。 //34 被按下 } P0 = Table1[Key]。EA=1。 //33 被按下 case 0xbe: Key = 11。EA=1。 //32 被按下 case 0xbd: Key = 10。EA=1。 20 //31 被按下 case 0xbb: Key = 9 。EA=1。 switch(Temp) { case 0xb7: Key = 8 。 Temp = P2。 //掃描第 3 行鍵盤(pán) Temp = P2。 Temp = Tempamp。TR0=0。tone1=0xfb。TR0=0。tone1=0xfd。TR0=0。tone1=0xfd。TR0=0。tone1=0xfd。0x0f。0x0f。 P1=Table3[Key]。 //14 被按下 } P0 = Table1[Key]。EA=1。 //13 被按下 case 0xee: Key = 3。EA=1。 //12 被按下 case 0xed: Key = 2。EA=1。 //11 被按下 case 0xeb: Key = 1。EA=1。 switch(Temp) { case 0xe7: Key = 0。 //延時(shí)一段時(shí)間在進(jìn)行檢測(cè),以消除鍵盤(pán)抖動(dòng)現(xiàn)象 Temp = P2。 //掃描第 1 行鍵盤(pán) Temp = P2。 ET0=1。 } m++。 z++。 //取音符 s=shengri_beat[m]。 unsigned char l=1。 /*****演奏子程序 *****/ void Play_SHENGRIKUAILE(void) { unsigned char m=0。 } void delay1 (unint v) { while(v!=0) v。 SPEAKER=~SPEAKER。 //定時(shí)器 0,工作方式 1 TH0=tone1。 EA=1。 for(i=0。 延時(shí)、定時(shí)器初始化程序 編寫(xiě)延時(shí)程序?yàn)榈氖菓?yīng)用于節(jié)拍, 15ms 延時(shí)子程序。 /*****生日快樂(lè)歌音調(diào)表 *****/ unsigned char code shengri_tone[]= { 1,0,1,2,1,4,3,0, 1,0,1,2,1,5,4,0, 1,0,1,8,
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1