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

正文內(nèi)容

基于51單片機(jī)的音樂盒的設(shè)計(jì)-畢業(yè)設(shè)計(jì)-資料下載頁

2025-09-28 08:47本頁面

【導(dǎo)讀】低、運(yùn)算快和功耗小等特點(diǎn)得到了人們越來越廣泛的運(yùn)用。本設(shè)計(jì)是一個基于STC89C52系。出一個插卡式音樂盒。該音樂盒主要是由按鍵電路、繼電器電路、LCD顯示電路以及揚(yáng)聲器。使用五個按鍵控制音樂盒,分別用來控制音樂盒的播放/暫停,復(fù)位,切換上一曲/. 下一曲,本音樂盒利用優(yōu)盤共存有五首歌曲。行編程并調(diào)試,之后下載進(jìn)51單片機(jī)中使用。

  

【正文】 Stop_I2c()。 //結(jié)束總線 return(1)。 } */ 第 33 頁 共 38 頁 /* 向有子地址器件讀取多字節(jié)數(shù)據(jù)函數(shù) 函數(shù)原型 : bit ISendStr(unsigned char sla,unsigned char suba,ucahr *s,unsigned char no)。 功能 : 從啟動總線到發(fā)送地址,子地址 ,讀數(shù)據(jù),結(jié)束總線的全過程 ,從器件 地址 sla,子地址 suba,讀出的內(nèi)容放入 s指向的存儲區(qū),讀 no個字節(jié)。 如果返回 1表示操作成功,否則操作有誤。 注意: 使用前必須已結(jié)束總線。 */ bit IRcvStr(unsigned char sla,unsigned char suba,unsigned char *s,unsigned char no) { unsigned char i。 Start_I2c()。 //啟動總線 SendByte(sla)。 //發(fā)送器件地址 if(ack==0)return(0)。 SendByte(suba)。 //發(fā)送器件子地址 if(ack==0)return(0)。 Start_I2c()。 SendByte(sla+1)。 if(ack==0)return(0)。 for(i=0。ino1。i++) { *s=RcvByte()。 //發(fā)送數(shù)據(jù) Ack_I2c()。 //發(fā)送就答位 s++。 } *s=RcvByte()。 NoAck_I2c()。 //發(fā)送非應(yīng)位 Stop_I2c()。 //結(jié)束總線 return(1)。 } /* 判忙函數(shù) */ bit LCD_Check_Busy(void) 第 34 頁 共 38 頁 { DataPort= 0xFF。 RS_CLR。 RW_SET。 EN_CLR。 _nop_()。 EN_SET。 return (bit)(DataPort amp。 0x80)。 } /* 寫入命令函數(shù) */ void LCD_Write_Com(unsigned char ) { // while(LCD_Check_Busy())。 //忙則等待 DelayMs(5)。 RS_CLR。 RW_CLR。 EN_SET。 DataPort= 。 _nop_()。 EN_CLR。 } /* 寫入數(shù)據(jù)函數(shù) */ void LCD_Write_Data(unsigned char Data) { //while(LCD_Check_Busy())。 //忙則等待 DelayMs(5)。 RS_SET。 RW_CLR。 EN_SET。 DataPort= Data。 _nop_()。 EN_CLR。 } 第 35 頁 共 38 頁 /* 清屏函數(shù) */ void LCD_Clear(void) { LCD_Write_Com(0x01)。 DelayMs(5)。 } /* 寫入字符串函數(shù) */ void LCD_Write_String(unsigned char x,unsigned char y,unsigned char *s) { if (y == 0) { LCD_Write_Com(0x80 + x)。 //表示第一行 } else { LCD_Write_Com(0xC0 + x)。 //表示第二行 } while (*s) { LCD_Write_Data( *s)。 s ++。 } } /* 寫入字符函數(shù) */ void LCD_Write_Char(unsigned char x,unsigned char y,unsigned char Data) { if (y == 0) { LCD_Write_Com(0x80 + x)。 } else { 第 36 頁 共 38 頁 LCD_Write_Com(0xC0 + x)。 } LCD_Write_Data( Data)。 } /* 初始化函數(shù) */ void LCD_Init(void) { LCD_Write_Com(0x38)。 /*顯示模式設(shè)置 */ DelayMs(5)。 LCD_Write_Com(0x38)。 DelayMs(5)。 LCD_Write_Com(0x38)。 DelayMs(5)。 LCD_Write_Com(0x38)。 LCD_Write_Com(0x08)。 /*顯示關(guān)閉 */ LCD_Write_Com(0x01)。 /*顯示清屏 */ LCD_Write_Com(0x06)。 /*顯示光標(biāo)移動設(shè)置 */ DelayMs(5)。 LCD_Write_Com(0x0C)。 /*顯示開及光標(biāo)設(shè)置 */ } /* 主函數(shù) void main(void) { LCD_Init()。 LCD_Clear()。//清屏 while (1) { LCD_Write_Char(7,0,39。o39。)。 LCD_Write_Char(8,0,39。k39。)。 LCD_Write_String(1,1,)。 while(1)。 } } */ 第 37 頁 共 38 頁 void main() { unsigned char num。 char gequ1[11]=QiJiShiJie。 char gequ2[7]=QiuHua。 char gequ3[11]=ShenShenAi。 char gequ4[11]=TianLanLan。 char gequ5[17]=WoCongCaoYuanLai。 char gequ6[15]=ZhongGuoWeiDao。 char gequ7[11]=ZiYouZiZai。 char gequ8[6]=gequ8。 // ISendStr(0xae,4,dofly,4)。 //寫入 24c02 DelayMs(200)。 // IRcvStr(0xae,4,dofly,4)。 //調(diào)用存儲數(shù)據(jù) LCD_Init()。 LCD_Clear()。//清屏 LCD_Write_String(5,0,YinYueHe)。 while (1) { if(key0==0) { DelayMs(20)。 if(key0==0) {while(!key0)。 JiDianQi=0。 } } if(key1==0) { DelayMs(20)。 if(key1==0) {while(!key1)。 JiDianQi=1。 } } // LCD_Write_Char(2,0,dofly[0])。 // LCD_Write_Char(4,0,dofly[1])。 // LCD_Write_Char(6,0,dofly[2])。 // LCD_Write_Char(8,0,dofly[3])。 第 38 頁 共 38 頁 if(key2==0) { DelayMs(20)。 if(key2==0) {while(!key2)。 num++。 if(num==8) num=0。 } } if(key3==0) { DelayMs(20)。 if(key3==0) {while(!key3)。 num。 if(num==255) num=8。 } } if(num==0) LCD_Write_String(1,1,gequ1)。 else if(num==1) LCD_Write_String(1,1,gequ2)。 else if(num==2) LCD_Write_String(1,1,gequ3)。 else if(num==3) LCD_Write_String(1,1,gequ4)。 else if(num==4) LCD_Write_String(1,1,gequ5)。 else if(num==5) LCD_Write_String(1,1,gequ6)。 else if(num==6) LCD_Write_String(1,1,gequ7)。 else if(num==7) LCD_Write_String(1,1,gequ8)。 } }
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1