新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 以單片機AT89S52為核心的樂曲編輯發(fā)生器的設計

        以單片機AT89S52為核心的樂曲編輯發(fā)生器的設計

        作者: 時間:2012-06-08 來源:網(wǎng)絡 收藏

        3.4 播放的軟件實現(xiàn)方法

        “播放任務”程序時,利用內(nèi)部的定時器T1定時溢出中斷來產(chǎn)生音調(diào)的頻率,并利用RTX51操作系統(tǒng)的os_wait2(K_TMO,ticks)函數(shù)來產(chǎn)生音長。“播放任務”的C51源程序如下:


        3.5 系統(tǒng)軟件流程

        根據(jù)對系統(tǒng)功能的分析,把系統(tǒng)軟件分解為5個任務,具體如下:

        任務0:系統(tǒng)初始化任務,包括TC1602A的初始化、定時器T1的初始化、中斷初始化。在啟動任務1~任務4后,自動刪除任務0,使得任務0只在系統(tǒng)上電復位時執(zhí)行一次。

        任務1:鍵盤掃描任務。每隔50 ms執(zhí)行1次,掃描所得的鍵值存于全局變量keycode,然后向“按鍵處理任務”發(fā)信號。

        任務2:按鍵處理任務。等待信號,根據(jù)鍵值keycode完成相應處理,實現(xiàn)的功能包括、的保存和讀取等。

        任務3:播放任務。等待信號,按照音調(diào)和音長播放樂曲。

        任務4:顯示刷新任務。根據(jù)光標指針變量的值在液晶屏上顯示樂曲數(shù)據(jù)(音調(diào)和音長)。

        系統(tǒng)軟件流程圖如圖2所示。

        4 結(jié)束語

        本文給出了以構(gòu)成的任意樂曲,具有硬件電路簡單、操作界面友好、使用方便的特點。該系統(tǒng)已投入運行,播放出來的樂曲效果良好,音調(diào)和節(jié)拍都由控制得相當準確。


        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 成武县| 新建县| 汉川市| 临江市| 邹城市| 龙江县| 扶沟县| 平安县| 阿城市| 衡阳县| 都江堰市| 台中县| 固安县| 凤台县| 丰城市| 衡阳县| 合江县| 巨野县| 永清县| 大埔区| 平舆县| 庆元县| 如东县| 景洪市| 靖安县| 金平| 佛冈县| 漠河县| 阿坝| 大庆市| 沾益县| 任丘市| 乐山市| 漾濞| 泸溪县| 临高县| 温宿县| 元朗区| 安国市| 新沂市| 浦江县|