<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 51單片機語音+溫度控制的源碼

          51單片機語音+溫度控制的源碼

          作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
          //*********************************************************************************************************************//*********************************************************************************************************************//*********************************************************************************************************************//*********************************************************************************************************************//*********************************************************************************************************************//***********************************下面是1-10檔位的子函數(shù)調(diào)用了顯示畫面和語音*****************************************//**********************************************************************************************************************void dangwei(uint k) // 檔位1-10的子函數(shù)。{switch(k){case 1: //檔位1.a=25;//火力的占空比是25.break;case 2: //檔位2.a=50;//火力的占空比是50.break;case 3: //檔位3a=75;//火力的占空比是75.break;case 4: //檔位4 a=100;//火力的占空比是25.break;case 5: //檔位5a=125;//火力的占空比是25.break;case 6: //檔位6a=25;//火力的占空比是25.break;case 7: //檔位7a=25;//火力的占空比是25.break;case 8: //檔位8a=25;//火力的占空比是25.break;case 9:a=25;//火力的占空比是25.break;case 10:a=25;//火力的占空比是25.break;}dispdangwei(k);//檔位K的畫面music(k);//檔位K的語音。} //**********************************************************************************************************************//*************************************************************************************************************************//******************************************到這里檔位定義信息完畢??!*****************************************************//**********************************************************************************************************************//****************************************************下面是PCA計數(shù)器初始化************************************************ void init_pca(void)//pca計數(shù)器初始化函數(shù){CMOD=0x00;CCON=0x00;CCAP0=0X2; //8位PWM輸出,無中斷。PWM0CCAP1=0x2;//8位PWM輸出,無中斷 。PWM1CL=0x00;//清零pca計數(shù)器CH=0x00;CCA1L=pm[0]; //初始化PWM1輸出的占空比CCA1H=pw[0];CCA0L=pm[0]; //初始化PWM0輸出的占空比CCA0H=pm[0];CR=1;//運行pca計數(shù)器}//*************************************************************************************************************************//*****************************************************************************************************************//***********************************************************************************************************************void huanying(){yuyin(30);//語音的歡迎語。init_12864();//初始化液晶。write_12864_com(0x80);//設(shè)定顯示位置是第一行。for(i=0;i<16;i++) //第一行有多少字,漢字占兩個位置。標(biāo)點符號一個。{write_12864_at(table100[i]); //開始挨個把表中的字一位一位的通過12864的數(shù)據(jù)發(fā)送子程序發(fā)送出去。delay_50us(1); //延時一會保證數(shù)據(jù)有發(fā)送完畢。}write_12864_com(0x90); //設(shè)定第二行。for(i=0;i<16;i++){write_1284_dat(table24[i]);delay_50us(1;}write_12864_com(0x88); //設(shè)定第三行for(i=0;i<10i++){write_12864_dat(table25[i]);delay_50us(1);}write_12864_com(0x98);//設(shè)定第四行顯示位置。for(i=0;i<16;i++){write_12864dat(table100[i]);delay_50us(1);}//##################################第二幅畫面。delay_1s(2000);//延時保持2秒鐘的第一幅畫面。init_12864();//初始化液晶。write_12864_com(0x80);//設(shè)定顯示位置是第一行。for(i=0;i<14;i++) //第一行有多少字,漢字占兩個位置。標(biāo)點符號一個。{write_12864_dat(table11[i]); //開始挨個把表中的字一位一位的通過12864的數(shù)據(jù)發(fā)送子程序發(fā)送出去。delay_50us(1); //延時一會保證數(shù)據(jù)有發(fā)送完畢。}write_12864_com(0x90); //設(shè)定第二行。for(i=0;i<16;i++){write_12864_dat(table13[i]);delay_50us(1);write12864_com(0x88); //設(shè)定第三行for(i=0;i<16;i++){write_12864_dat(table12[i]);delay_50us(1);}write_12864_com(0x98);//設(shè)定第四行顯示位置。for(i=0;i<16;i++){write_12864_dat(table14[i]);delay_50us(1);}}//***********************************************************************************************************************//*********************************************************************************************************************void main(){P4SW=0x7F; //設(shè)置P4為雙向IO口。c=0;//寫入未執(zhí)行過按鍵操作的標(biāo)志位 baohu=1;//先強制打開保護功能,促使PWN徹底關(guān)閉,防止上機的那種不可控的頻率。讓PWM有規(guī)律可循。beiguang=1;//打開背光yanshi(30);//延時一小會保證已經(jīng)徹底關(guān)閉。init_pa();//初始化PWM控制器。m=0;temp=0;init_1864();//初始化液晶。huanying();//開機歡迎語和歡迎畫面。while(1){if(pd==0) //檔位加{yanshi(50);if(pd==0){m++ //檢測火力+按鍵按了幾次。是幾次就是幾檔位、if(m==11) //當(dāng)檔位增加到11次以后,就給復(fù)位到檔位1.防止出現(xiàn)錯誤。{m=1;}dangwei(m); //檔位的各種信息。while(!pd);} }if(px==0) //檔位減{yanshi(50);if(px==0){ if(m==0){m=2;}m--; //檢測火力-按鍵按了幾次。是幾次就是幾檔位、if(m<=0)//當(dāng)檔位增加到0次以后,就關(guān)閉所有檔位的輸出。{m=1;}dangwei(m); //檔位的各種信息。while(!p);}}if(zd==0){yanshi(10);if(zd==0){b--;if(b<=0){b=56;};c=1;while(!zd);}}if(zx==0){yanshi(10);if(zx==0){b++;if(b>=56){b=0;};while(!zx);}}CCAP1L=pwm[a]; //初始化PWM1輸出的占空比CCAP1H=pwm[a];CCAP0L=pw[b]; //初始化PWM0輸出的占空比CCAP0H=pm[b];if(c>=1)//檢測是不是已經(jīng)穩(wěn)定好了PWM。{baohu=0;//開啟PWM輸出。}}}
          上一頁 1 2 下一頁

          關(guān)鍵詞: 51單片機語音溫度控

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();