STC12C5A60S2精簡(jiǎn)開(kāi)發(fā)板使用手機(jī)及其經(jīng)典例程
上傳時(shí)間: 2013-10-19
上傳用戶:JIEWENYU
C51單片機(jī)的串口通信例程
標(biāo)簽: 串行通信
上傳時(shí)間: 2013-12-17
上傳用戶:wutong
89c51一種用N+1條線實(shí)現(xiàn)矩陣鍵盤(pán)
標(biāo)簽: 矩陣鍵盤(pán)
上傳時(shí)間: 2014-12-26
上傳用戶:lhw888
假定從8位AD中讀取數(shù)據(jù)(如果是更高位的AD可定義數(shù)據(jù)類型為int),子程序?yàn)間et_ad(); 1、限幅濾波法(又稱程序判斷濾波法) A、方法: 根據(jù)經(jīng)驗(yàn)判斷,確定兩次采樣允許的最大偏差值(設(shè)為A) 每次檢測(cè)到新值時(shí)判斷: 如果本次值與上次值之差<=A,則本次值有效 如果本次值與上次值之差>A,則本次值無(wú)效,放棄本次值,用上次值代替本次值 B、優(yōu)點(diǎn): 能有效克服因偶然因素引起的脈沖干擾 C、缺點(diǎn) 無(wú)法抑制那種周期性的干擾 平滑度差 /* A值可根據(jù)實(shí)際情況調(diào)整 value為有效值,new_value為當(dāng)前采樣值 濾波程序返回有效的實(shí)際值 */ #define A 10 char value; char filter() { char new_value; new_value = get_ad(); if ( ( new_value - value > A ) || ( value - new_value > A ) return value; return new_value; } 2、中位值濾波法 A、方法: 連續(xù)采樣N次(N取奇數(shù)) 把N次采樣值按大小排列 取中間值為本次有效值 B、優(yōu)點(diǎn): 能有效克服因偶然因素引起的波動(dòng)干擾 對(duì)溫度、液位的變化緩慢的被測(cè)參數(shù)有良好的濾波效果 C、缺點(diǎn): 對(duì)流量、速度等快速變化的參數(shù)不宜 /* N值可根據(jù)實(shí)際情況調(diào)整 排序采用冒泡法*/
上傳時(shí)間: 2014-12-26
上傳用戶:nanshan
摘 要: 閥門(mén)開(kāi)度儀以AT89C51單片機(jī)為核心, 通過(guò)在閥門(mén)電機(jī)軸上安裝的電位計(jì)傳感器獲得閥 門(mén)電機(jī)軸的轉(zhuǎn)動(dòng)角位移, 從而得出閥門(mén)的開(kāi)度, 達(dá)到自動(dòng)檢測(cè)的目的。詳細(xì)介紹了串行控制的10 位A /D轉(zhuǎn)換器TLC1549的特點(diǎn)和功能, 說(shuō)明了TLC1549與AT89C51單片機(jī)在閥門(mén)開(kāi)度儀中的硬件 電路和軟件程序。實(shí)踐證明, 該閥門(mén)開(kāi)度儀數(shù)據(jù)采集準(zhǔn)確可靠、工作穩(wěn)定。 關(guān)鍵詞: TLC1549; AT89C51單片機(jī); 閥門(mén)開(kāi)度
標(biāo)簽: 1549 TLC 閥門(mén)開(kāi)度儀
上傳時(shí)間: 2013-10-14
上傳用戶:行者Xin
新一代的可攜式電子產(chǎn)品不但日趨輕巧纖薄,而且內(nèi)建的數(shù)位電路也越來(lái)越多,以便可以支援復(fù)雜的運(yùn)算工作。這類能快速處理大量資料的電子產(chǎn)品迅速普及起來(lái),使系統(tǒng)設(shè)計(jì)工程師在設(shè)計(jì)上面對(duì)新挑戰(zhàn)。為了在產(chǎn)品添加更多功能及確保外型更吸引,設(shè)計(jì)工程師一方面要為處理器提供足夠的供電來(lái)執(zhí)行各種新功能,其中包括聲頻/視訊錄播,電玩,網(wǎng)頁(yè)瀏覽,電子郵件傳送及一般的辦公室文檔處理,但另一方面又不能為應(yīng)付更大的耗電量而加大電池。超小型的可攜式電子產(chǎn)品近來(lái)很受市場(chǎng)歡迎,這個(gè)趨勢(shì)顯示電池體積會(huì)進(jìn)一步縮小,令系統(tǒng)很易便耗盡電池的儲(chǔ)電。這些儲(chǔ)電量如此有限的電池還要為其他新加的元件,例如高解析度彩色顯示器及攝影鏡頭,提供所需的供電。電池技術(shù)固然在效能上有一定的提升,但基本上仍不足以解決電源的供求失衡問(wèn)題。此外,新一代的半導(dǎo)體技術(shù)也令這個(gè)問(wèn)題雪上加霜,因?yàn)樯顚哟挝⒚字瞥碳夹g(shù)有漏電的問(wèn)題,進(jìn)一步增加系統(tǒng)的整體功耗。電源轉(zhuǎn)換技術(shù)也達(dá)到瓶頸,效能出現(xiàn)大幅提升的機(jī)會(huì)十分渺茫。(目前市場(chǎng)上各大開(kāi)關(guān)穩(wěn)壓器的電源轉(zhuǎn)換效率已高達(dá)90%以上。)面對(duì)這樣的情況,我們必須重新思考電源管理的問(wèn)題,以及采用周密完善的方式來(lái)開(kāi)發(fā)新系統(tǒng)。頭痛醫(yī)頭,腳痛醫(yī)腳的方法只能暫時(shí)解決個(gè)別的電源轉(zhuǎn)換效率問(wèn)題,對(duì)問(wèn)題的徹底解決沒(méi)有幫助。因此,我們必須全面審視整個(gè)系統(tǒng)的供電需要,并確保系統(tǒng)內(nèi)的不同元件能在運(yùn)作上互通,才可進(jìn)一步提升能源效益以滿足消費(fèi)者的要求。
上傳時(shí)間: 2013-12-19
上傳用戶:zhanditian
中穎單片機(jī)入門(mén)與實(shí)戰(zhàn) 單片機(jī)又稱單片微處理器,其應(yīng)用已滲入到各行各業(yè),生產(chǎn)廠家亦從二十年前的寥寥幾家發(fā)展到現(xiàn)在的幾十間甚至更多。不同的廠家基于各自的架構(gòu)平臺(tái),設(shè)計(jì)了不同功能特點(diǎn)的單片機(jī),這就使得工程師們可以按照具體設(shè)計(jì)要求挑選最適合的一款芯片進(jìn)行系統(tǒng)開(kāi)發(fā),既滿足功能需求又能最大限度降低成本,提高了自己產(chǎn)品的性價(jià)比。中穎單片機(jī)基于公司自有的4-bit CPU IP(CPU60)發(fā)展起來(lái),芯片采用的是程序內(nèi)存和數(shù)據(jù)存儲(chǔ)器在物理空間上完全獨(dú)立的哈佛結(jié)構(gòu)。程序內(nèi)存和數(shù)據(jù)存儲(chǔ)器地址以及總線完全分開(kāi),可以使指令和數(shù)據(jù)有不同的數(shù)據(jù)寬度。同時(shí)由于讀取指令和存取操作數(shù)可以同時(shí)進(jìn)行(流水線作業(yè)),因而具有較高的執(zhí)行效率。中穎設(shè)計(jì)工程師以此設(shè)計(jì)了SH66XX, SH67XX 和SH69XX 等一系列的單片機(jī),涵蓋了包括消費(fèi)類,家電及來(lái)電顯示電話的多方面應(yīng)用,以其產(chǎn)品的多樣化,優(yōu)異的抗干擾性能,良好的性價(jià)比和及時(shí)的售后服務(wù)在競(jìng)爭(zhēng)激烈的市場(chǎng)占有一席之地,并且每年的出貨量在持續(xù)快速的增長(zhǎng)中。中穎單片機(jī)能在短短數(shù)年間取得如此成績(jī)及市場(chǎng)認(rèn)可度,自有其道理。
標(biāo)簽: 中穎單片機(jī)
上傳時(shí)間: 2013-11-20
上傳用戶:huanglang
針對(duì)MCS51 微控制器(單片機(jī))在實(shí)際工程開(kāi)發(fā)中遇到的調(diào)試難題,提出一種在線調(diào)試解決方案。充分利用微控制器本身自帶RS232 接口,以Keil C51 開(kāi)發(fā)出服務(wù)例程駐留于微控制器內(nèi),從而完成實(shí)際工程調(diào)試。該服務(wù)例程已在實(shí)際工程中得到現(xiàn)場(chǎng)應(yīng)用,全面達(dá)到了設(shè)計(jì)要求。本文涉及的服務(wù)例程對(duì)于實(shí)際工程中MCS51 微控制器的調(diào)試具有普遍參考價(jià)值。
標(biāo)簽: MCS 51 背景 調(diào)試服務(wù)
上傳時(shí)間: 2013-12-24
上傳用戶:stvnash
單片機(jī)接口技術(shù)(C51版)例程源代碼:文件名基本與教材中的例題序號(hào)一致,如"例3-2"的源程序?yàn)?Ch3-2"。有些程序在使用前請(qǐng)參閱程序開(kāi)頭的注釋,這些注釋解釋了程序使用方法。歡迎到您提出寶貴意見(jiàn),可到bbs.elecfans.com留言或就具體問(wèn)題進(jìn)行交流。
標(biāo)簽: C51 單片機(jī)接口技術(shù) 源代碼
上傳時(shí)間: 2013-10-18
上傳用戶:huang111
單片機(jī)音樂(lè)中音調(diào)和節(jié)拍的確定方法:調(diào)號(hào)-音樂(lè)上指用以確定樂(lè)曲主音高度的符號(hào)。很明顯一個(gè)八度就有12個(gè)半音。A、B、C、D、E、F、G。經(jīng)過(guò)聲學(xué)家的研究,全世界都用這些字母來(lái)表示固定的音高。比如,A這個(gè)音,標(biāo)準(zhǔn)的音高為每秒鐘振動(dòng)440周。 升C調(diào):1=#C,也就是降D調(diào):1=BD;277(頻率)升D調(diào):1=#D,也就是降E調(diào):1=BE;311升F調(diào):1=#F,也就是降G調(diào):1=BG;369升G調(diào):1=#G,也就是降A(chǔ)調(diào):1=BA;415升A調(diào):1=#A,也就是降B調(diào):1=BB。466,C 262 #C277 D 294 #D(bE)311 E 330 F 349 #F369 G 392 #G415A 440. #A466 B 494 所謂1=A,就是說(shuō),這首歌曲的“導(dǎo)”要唱得同A一樣高,人們也把這首歌曲叫做A調(diào)歌曲,或叫“唱A調(diào)”。1=C,就是說(shuō),這首歌曲的“導(dǎo)”要唱得同C一樣高,或者說(shuō)“這歌曲唱C調(diào)”。同樣是“導(dǎo)”,不同的調(diào)唱起來(lái)的高低是不一樣的。各調(diào)的對(duì)應(yīng)的標(biāo)準(zhǔn)頻率為: 單片機(jī)演奏音樂(lè)時(shí)音調(diào)和節(jié)拍的確定方法 經(jīng)常看到一些剛學(xué)單片機(jī)的朋友對(duì)單片機(jī)演奏音樂(lè)比較有興趣,本人也曾是這樣。在此,本人將就這方面的知識(shí)做一些簡(jiǎn)介,但愿能對(duì)單片機(jī)演奏音樂(lè)比較有興趣而又不知其解的朋友能有所啟迪。 一般說(shuō)來(lái),單片機(jī)演奏音樂(lè)基本都是單音頻率,它不包含相應(yīng)幅度的諧波頻率,也就是說(shuō)不能象電子琴那樣能奏出多種音色的聲音。因此單片機(jī)奏樂(lè)只需弄清楚兩個(gè)概念即可,也就是“音調(diào)”和“節(jié)拍”。音調(diào)表示一個(gè)音符唱多高的頻率,節(jié)拍表示一個(gè)音符唱多長(zhǎng)的時(shí)間。 在音樂(lè)中所謂“音調(diào)”,其實(shí)就是我們常說(shuō)的“音高”。在音樂(lè)中常把中央C上方的A音定為標(biāo)準(zhǔn)音高,其頻率f=440Hz。當(dāng)兩個(gè)聲音信號(hào)的頻率相差一倍時(shí),也即f2=2f1時(shí),則稱f2比f(wàn)1高一個(gè)倍頻程, 在音樂(lè)中1(do)與 ,2(來(lái))與 ……正好相差一個(gè)倍頻程,在音樂(lè)學(xué)中稱它相差一個(gè)八度音。在一個(gè)八度音內(nèi),有12個(gè)半音。以1—i八音區(qū)為例, 12個(gè)半音是:1—#1、#1—2、2—#2、#2—3、3—4、4—#4,#4—5、5一#5、#5—6、6—#6、#6—7、7—i。這12個(gè)音階的分度基本上是以對(duì)數(shù)關(guān)系來(lái)劃分的。如果我們只要知道了這十二個(gè)音符的音高,也就是其基本音調(diào)的頻率,我們就可根據(jù)倍頻程的關(guān)系得到其他音符基本音調(diào)的頻率。 知道了一個(gè)音符的頻率后,怎樣讓單片機(jī)發(fā)出相應(yīng)頻率的聲音呢?一般說(shuō)來(lái),常采用的方法就是通過(guò)單片機(jī)的定時(shí)器定時(shí)中斷,將單片機(jī)上對(duì)應(yīng)蜂鳴器的I/O口來(lái)回取反,或者說(shuō)來(lái)回清零,置位,從而讓蜂鳴器發(fā)出聲音,為了讓單片機(jī)發(fā)出不同頻率的聲音,我們只需將定時(shí)器予置不同的定時(shí)值就可實(shí)現(xiàn)。那么怎樣確定一個(gè)頻率所對(duì)應(yīng)的定時(shí)器的定時(shí)值呢?以標(biāo)準(zhǔn)音高A為例: A的頻率f = 440 Hz,其對(duì)應(yīng)的周期為:T = 1/ f = 1/440 =2272μs 由上圖可知,單片機(jī)上對(duì)應(yīng)蜂鳴器的I/O口來(lái)回取反的時(shí)間應(yīng)為:t = T/2 = 2272/2 = 1136μs這個(gè)時(shí)間t也就是單片機(jī)上定時(shí)器應(yīng)有的中斷觸發(fā)時(shí)間。一般情況下,單片機(jī)奏樂(lè)時(shí),其定時(shí)器為工作方式1,它以振蕩器的十二分頻信號(hào)為計(jì)數(shù)脈沖。設(shè)振蕩器頻率為f0,則定時(shí)器的予置初值由下式來(lái)確定: t = 12 *(TALL – THL)/ f0 式中TALL = 216 = 65536,THL為定時(shí)器待確定的計(jì)數(shù)初值。因此定時(shí)器的高低計(jì)數(shù)器的初值為: TH = THL / 256 = ( TALL – t* f0/12) / 256 TL = THL % 256 = ( TALL – t* f0/12) %256 將t=1136μs代入上面兩式(注意:計(jì)算時(shí)應(yīng)將時(shí)間和頻率的單位換算一致),即可求出標(biāo)準(zhǔn)音高A在單片機(jī)晶振頻率f0=12Mhz,定時(shí)器在工作方式1下的定時(shí)器高低計(jì)數(shù)器的予置初值為 : TH440Hz = (65536 – 1136 * 12/12) /256 = FBH TL440Hz = (65536 – 1136 * 12/12)%256 = 90H根據(jù)上面的求解方法,我們就可求出其他音調(diào)相應(yīng)的計(jì)數(shù)器的予置初值。 音符的節(jié)拍我們可以舉例來(lái)說(shuō)明。在一張樂(lè)譜中,我們經(jīng)常會(huì)看到這樣的表達(dá)式,如1=C 、1=G …… 等等,這里1=C,1=G表示樂(lè)譜的曲調(diào),和我們前面所談的音調(diào)有很大的關(guān)聯(lián), 、 就是用來(lái)表示節(jié)拍的。以 為例加以說(shuō)明,它表示樂(lè)譜中以四分音符為節(jié)拍,每一小結(jié)有三拍。比如: 其中1 、2 為一拍,3、4、5為一拍,6為一拍共三拍。1 、2的時(shí)長(zhǎng)為四分音符的一半,即為八分音符長(zhǎng),3、4的時(shí)長(zhǎng)為八分音符的一半,即為十六分音符長(zhǎng),5的時(shí)長(zhǎng)為四分音符的一半,即為八分音符長(zhǎng),6的時(shí)長(zhǎng)為四分音符長(zhǎng)。那么一拍到底該唱多長(zhǎng)呢?一般說(shuō)來(lái),如果樂(lè)曲沒(méi)有特殊說(shuō)明,一拍的時(shí)長(zhǎng)大約為400—500ms 。我們以一拍的時(shí)長(zhǎng)為400ms為例,則當(dāng)以四分音符為節(jié)拍時(shí),四分音符的時(shí)長(zhǎng)就為400ms,八分音符的時(shí)長(zhǎng)就為200ms,十六分音符的時(shí)長(zhǎng)就為100ms。可見(jiàn),在單片機(jī)上控制一個(gè)音符唱多長(zhǎng)可采用循環(huán)延時(shí)的方法來(lái)實(shí)現(xiàn)。首先,我們確定一個(gè)基本時(shí)長(zhǎng)的延時(shí)程序,比如說(shuō)以十六分音符的時(shí)長(zhǎng)為基本延時(shí)時(shí)間,那么,對(duì)于一個(gè)音符,如果它為十六分音符,則只需調(diào)用一次延時(shí)程序,如果它為八分音符,則只需調(diào)用二次延時(shí)程序,如果它為四分音符,則只需調(diào)用四次延時(shí)程序,依次類推。通過(guò)上面關(guān)于一個(gè)音符音調(diào)和節(jié)拍的確定方法,我們就可以在單片機(jī)上實(shí)現(xiàn)演奏音樂(lè)了。具體的實(shí)現(xiàn)方法為:將樂(lè)譜中的每個(gè)音符的音調(diào)及節(jié)拍變換成相應(yīng)的音調(diào)參數(shù)和節(jié)拍參數(shù),將他們做成數(shù)據(jù)表格,存放在存儲(chǔ)器中,通過(guò)程序取出一個(gè)音符的相關(guān)參數(shù),播放該音符,該音符唱完后,接著取出下一個(gè)音符的相關(guān)參數(shù)……,如此直到播放完畢最后一個(gè)音符,根據(jù)需要也可循環(huán)不停地播放整個(gè)樂(lè)曲。另外,對(duì)于樂(lè)曲中的休止符,一般將其音調(diào)參數(shù)設(shè)為FFH,F(xiàn)FH,其節(jié)拍參數(shù)與其他音符的節(jié)拍參數(shù)確定方法一致,樂(lè)曲結(jié)束用節(jié)拍參數(shù)為00H來(lái)表示。下面給出部分音符(三個(gè)八度音)的頻率以及以單片機(jī)晶振頻率f0=12Mhz,定時(shí)器在工作方式1下的定時(shí)器高低計(jì)數(shù)器的予置初值 : C調(diào)音符 頻率Hz 262 277 293 311 329 349 370 392 415 440 466 494TH/TL F88B F8F2 F95B F9B7 FA14 FA66 FAB9 FB03 FB4A FB8F FBCF FC0BC調(diào)音符 1 1# 2 2# 3 4 4# 5 5# 6 6# 7頻率Hz 523 553 586 621 658 697 739 783 830 879 931 987TH/TL FC43 FC78 FCAB FCDB FD08 FD33 FD5B FD81 FDA5 FDC7 FDE7 FE05C調(diào)音符 頻率Hz 1045 1106 1171 1241 1316 1393 1476 1563 1658 1755 1860 1971TH/TL FB21 FE3C FE55 FE6D FE84 FE99 FEAD FEC0 FE02 FEE3 FEF3 FF02
上傳時(shí)間: 2013-10-20
上傳用戶:哈哈haha
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1