51匯編程序實例:舉一例說明:流水燈加數碼管
LOOP: ; 標號CLR P2.6 ;選中p2.6 數碼管左邊的8字使能SETB P2.7 ;p2.7不使能。 右邊的數碼管消隱MOV P0,#28H ;把28h送p0口;數碼管顯示 0LCALL DELAY ;延時MOV P0,#0FFH ;0ffh 送p0口,數碼管清除CLR P1.0 ;點亮p1.0發光管MOV P0,#7EH ;把7eh送p0口;數碼管顯示 1LCALL DELAYMOV P0,#0FFHCLR P1.1 ;點亮p1.0發光管CLR P1.0 ;點亮p1.0發光管MOV P0,#0A2H ;數碼管顯示 2LCALL DELAYMOV P0,#0FFHCLR P1.2CLR P1.1CLR P1.0MOV P0,#62H ;數碼管顯示 3LCALL DELAYMOV P0,#0FFHCLR P1.3CLR P1.2CLR P1.1CLR P1.0MOV P0,#74H ;數碼管顯示 4LCALL DELAYMOV P0,#0FFHCLR P1.4CLR P1.3CLR P1.2CLR P1.1CLR P1.0MOV P0,#61H ;數碼管顯示 5;LCALL DELAYMOV P0,#0FFHCLR P1.5CLR P1.4CLR P1.3CLR P1.2CLR P1.1CLR P1.0MOV P0,#21H ; 數碼管顯示 6LCALL DELAYMOV P0,#0FFHCLR P1.6CLR P1.5CLR P1.4CLR P1.3CLR P1.2CLR P1.1CLR P1.0MOV P0,#7AH ; 數碼管顯示 7LCALL DELAYMOV P0,#0FFHCLR P1.7CLR P1.6CLR P1.5CLR P1.4CLR P1.3CLR P1.2CLR P1.1CLR P1.0MOV P0,#20H ; 數碼管顯示 8LCALL DELAYMOV P0,#0FFHLCALL DELAYMOV P0,#0FFHMOV P1,#0FFH;程序到此結果為左邊的數碼管顯示0,1,2,3,4,5,6,7,8;p1.0------------p1.7指示燈依次點亮SETB P2.6 ; 左邊的8消隱CLR P2.7 ;選中p2.7 數碼管右邊的8字使能 ,;MOV P0,#28HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.0MOV P0,#7EHLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.1MOV P0,#0A2HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.2MOV P0,#62HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.3MOV P0,#74HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.4MOV P0,#61HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.5MOV P0,#21HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.6MOV P0,#7AHLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHCLR P1.7MOV P0,#20HLCALL DELAYMOV P0,#0FFHMOV P1,#0FFHMOV P0,#0FFHMOV P1,#0FFH;這一段和上一段基本相同, 不同的是右邊的數碼管依次顯示012345678,左邊的不亮;;同時p1口的燈流動顯示:AJMP LOOP; 注意: 程序運行到此跳轉到開始標號,重復執行:DELAY: ;延時子程序;參考前面的教程:CLR P3.3 ;注意小喇叭在3.3口, 這里可以使小喇叭發出嗒,嗒聲MOV R7,#255NOPNOPD1:MOV R6,#255setb p3.3D2: DJNZ R6,D2clr p3.3DJNZ R7,D1SETB P3.3RETENDLOOP: ; 標號CLR P2.6 ;選中p2.6 數碼管左邊的8字使能SETB P2.7 ;p2.7不使能。 右邊的數碼管消隱MOV P0,#28H ;把28h送p0口;數碼管顯示 0 ;28為1010000LCALL DELAY ; 延時程序MOV P0,#0FFH ;0ffh 送p0口,數碼管清除;P0口為11111111CLR P1.0 ;點亮p1.0發光管; P1。0為電平,P0口為11111110MOV P0,#7EH ;把7eh送p0口;數碼管顯示 1; P1。0為低電平,P0口為11111110LCALL DELAY ; 延時程序MOV P0,#0FFHMOV P0,#0FFH ;0ffh 送p0口,數碼管清除;P0口為11111111 清一次顯示這條是清顯示的
標簽:
匯編
程序實例
上傳時間:
2013-10-31
上傳用戶:gundamwzc
//日歷時鐘
//按AN1,進入設置狀態
//按AN2,停止鬧鐘聲音
//按AN3,依次進入鬧鐘功能是否啟用,鬧鐘時,分秒,年,月,日及時間時,分,秒的設置,直到退出設置狀態
//按AN4,調整是否起用鬧鐘和調節鬧鐘時,分,秒,年,月,日,時間的時,分,秒的數字
//LCD第二排中間顯示小喇叭,表示啟用鬧鐘功能,無則禁止鬧鐘功能(可在調整狀態進行設置)
//正常狀態,LCD上排最前面顯示自定義字符,LCD下排最前面閃動"willar"
//設置狀態,LCD上排最前面顯示"P",下排最前面在設置鬧鐘時間時顯示"alarm:",其它狀態顯示"time"
//年代變化2000--2099,星期自動轉換
標簽:
AN
鬧鐘
時鐘
狀態
上傳時間:
2013-12-26
上傳用戶:hustfanenze
日歷時鐘
按AN3,依次進入鬧鐘功能,鬧鐘時間,年,月,日和時,分,秒模式,直致退出設置狀態
按AN4,調整是否起用鬧鐘和調節鬧鐘時,分,秒,年,月,日,時間的時,分,秒的數字
鬧鐘響時,按AN4即可停止鬧鐘的聲響
正常狀態,上排最前面顯示一自定義字符,下排最前面閃動"willar"
設置狀態,LCD上排最前面顯示"P",下排最前面設置鬧鐘時顯示"alarm:",其他顯示"time:"
鬧鐘啟用時,在LCD下排中間顯示一小喇叭,鬧鐘禁用時,無此小喇叭
年代變化2000--2099,星期自動轉換
標簽:
AN
時鐘
鬧鐘
上傳時間:
2014-01-10
上傳用戶:wendy15