新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機虛擬試驗箱設計與研究

        單片機虛擬試驗箱設計與研究

        作者: 時間:2011-11-05 來源:網絡 收藏
        3.2 綜合實驗
         (1) 利用51的定時器設計一個時鐘系統;
         (2) I2C總線擴展DS1307時鐘芯片設計一個高精度時鐘系統;
         (3) I2C總線擴展DS1621溫度芯片設計一個實時溫度報警的時鐘系統。
        4 實現教學使用實例
        下面就以六位數碼管動態顯示實驗為例說明基于Proteus的的使用。
        實驗內容:六位共陰數碼管動態掃描顯示數123456;
        實驗目的:理解數碼管動態顯數原理并學會單片機控制數碼管動態顯數。
        實驗電路圖說明:使用了兩個74HC573鎖存器,取名為段鎖存器和位鎖存器,分別控制數碼管(共陰極)的段選端和位選端,兩個鎖存器都使用P0口送數;并分別使用P2.0和P2.1來控制兩鎖存器的LE鎖存控制端,LE=1時選通,LE=0時鎖存。
        實驗操作步驟:(1)根據實驗電路圖使用Keil C51 uVision2編寫代碼;(2)將編寫好的代碼編譯生成HEX格式文件加載到試驗箱中的51單片機中;(3)點擊試驗箱左下角運行按鍵即可完成實驗。
        本實驗部分C51語言代碼如下:
        uchar code d_table[]={
        0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d}; //共陰0~6段碼
        uchar code w_table []={
        0xff/*空選*/,0xfe/*選中第一位*/,0xfd,0xfb,0xf7,0xef,
        0xdf}; //1~6位選碼
        sbit duan=P2^0; //段鎖存器選通/鎖存端
        sbit wei=P2^1; //位鎖存器選通/鎖存端
        void Display_123456() //動態顯示123456函數
        {
        for(num=1;num7;num++)
        {
        P0=w_table[num];
        //送位碼(選中相應數碼管)
        wei=1; //選通
        wei=0; //鎖存
        P0=d_table[num];
        //送段碼(即字型碼)
        duan=1;
        duan=0;
        delay(5); //延遲5 ms
        }
        }
        實驗效果:如圖2所示,六位數碼管同時顯示123456。

        單片機虛擬試驗箱設計與研究

        利用Proteus軟件設計的單片機具有很好的實用性。單片機虛擬試驗箱,不僅克服了傳統試驗箱購買價格昂貴,實驗內容固定,保養維護困難的缺點,而且可以幫助學生隨時隨地更快、更好地掌握課堂講述的內容,加深對單片機概念、原理的理解,彌補課堂理論教學的不足,更進一步增強學生學習單片機的興趣,大大提高學生的動手創新能力,并且作為個人實驗平臺,可以充分利用它所提供的資源,幫助學生提高工程應用能力。
        參考文獻
        [1] 周潤景,張麗娜.基于Proteus的電路及單片機系統設計與仿真[M].北京:北京航空航天大學出版社,2006.
        [2] 張毅剛.新編MCS-51單片機應用設計[M].第三版.哈爾濱:哈爾濱工業大學出版社,2006.
        [3] 李朝青.單片機原理及接口技術[M].北京:北京航天航空大學出版社,2005.
        [4] 唐勇波,徐東輝.基于Proteus的單片機課程教學與實驗改革初探[J].宜春學院學報,2009,4(31):147-149.
        [5] 蘇紅旗,朱紅.關于虛擬實驗室建設的思考與探討[J].科技創新導報,2010,1:31.
        [6] 葛海江,陶姍.融合Proteus于KeiluVision的C51教學模式探索與實踐[J].中國科技信息,2009,24:238.


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 凤冈县| 鱼台县| 高雄县| 元江| 南靖县| 南川市| 锡林郭勒盟| 红安县| 游戏| 富蕴县| 两当县| 巩义市| 雅安市| 五峰| 三都| 汶川县| 长葛市| 集安市| 翁牛特旗| 南汇区| 陆良县| 浮梁县| 甘德县| 龙泉市| 洛隆县| 左云县| 元谋县| 河东区| 永善县| 武威市| 高邑县| 怀宁县| 清远市| 六盘水市| 乃东县| 合阳县| 绿春县| 文登市| 武汉市| 萝北县| 苏尼特左旗|