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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設計應用 > 自制創(chuàng)意激光豎琴

          自制創(chuàng)意激光豎琴

          作者: 時間:2012-05-15 來源:網(wǎng)絡 收藏
          T-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; PADDING-TOP: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(255,255,255); orphans: 2; widows: 2; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">

            光敏電阻在室內(nèi)光線下的阻值約20kΩ。當受到激光管照射時,它的電阻將小于1kΩ。于是,筆者用10kΩ的電阻和光敏電阻串聯(lián),進行分壓。當有激光照射時,單片機讀取光敏電阻的電壓(3/11,約 0.27V),此時它的邏輯電平為0。當無激光照射時,單片機讀取光敏電阻的電壓,約(3/30)×20=2V,這時它的邏輯電平為1。

            這樣,當我們遮擋激光的光線時,就能在電路中產(chǎn)生開關(guān)的效果。音符是如何產(chǎn)生的呢?人耳能聽到的聲音頻率為20Hz~20kHz,音符頻率當然也在這個范圍。只是,不同的音符,有著自己固定的頻率。通過51單片機自帶的16位定時器就可以產(chǎn)生上述音頻。例如的標準音la為440Hz。通過計算可知,它的半周期為1136μs。這樣,只要在半周期時跳變引腳電平,就可以產(chǎn)生440Hz的方波了。再經(jīng)過電聲轉(zhuǎn)換元件(蜂鳴器),就可以產(chǎn)生標準音la 了,其他音符也是這樣產(chǎn)生的。

            

          自制創(chuàng)意激光豎琴

            51單片機底板

            

          自制創(chuàng)意激光豎琴

            AVR單片機底板

            

          自制創(chuàng)意激光豎琴

            激光的結(jié)構(gòu)

            采用51單片機的電路使用了AT89C2051單片機,在P3.7引腳上連接發(fā)聲元件,即無源蜂鳴器。通過三極管放大電流,使音樂更響亮。其余部分是51 單片機的最小系統(tǒng)。電路的電源用2節(jié)5號電池。大家可能會認為,這個音符沒有音色啊。因此,我又對這個51單片機做的發(fā)聲底座進行了改變,用M8單片機重新設計了發(fā)聲的底座。使用新設計的M8單片機電路,我們可以將音色文件放到SD卡中,大家根據(jù)自己的喜好,放入喜歡的音符,如鋼琴、二胡、吉他等。不過,音符需要自己用電腦事先錄制,并保存為8位的WAV文件,文件名為D、R、M、F、S、L、X。程序會判斷哪根激光被阻擋,播放相應的音符文件。聲音通過 M8單片機的OC1A、OC1B產(chǎn)生。只要把音頻輸出的OCR1A、OCR1B和音響或耳機連接,就能聽到響亮的音符了。

            制作需要的材料(見附表)

            附表?使用AT89C2051方案的元件清單

            



          關(guān)鍵詞: 自制 創(chuàng)意激光 豎琴

          評論


          相關(guān)推薦

          技術(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); })();