資源描述:
《單片機at89s51流水燈匯編程序》由會員上傳分享,免費在線閱讀,更多相關內容在應用文檔-天天文庫。
1、一、流水燈1、(定時)ORG0000H;程序從0000H開始AJMPMAIN;跳轉到主程序ORG0030H;主程序起始地址MAIN:MOVA,#0FEH;給A賦值成11111110LOOP:MOVP0,A;將A送到P0口,發(fā)光二極管低電平點亮LCALLDELAYRLA;累加器A循環(huán)左移一位AJMPLOOP;重新送P0顯示DELAY:MOVTMOD,#20HMOVTH1,#06HMOVTL1,#06HMOVR2,40SETBTR1LOOP1:JBCTF1,LOOP2SJMPLOOP1LOOP2:DJNZR0,LOOP1RETEND2、(中斷)ORG0
2、0HAJMPMAINORG0BHAJMPT0INTORG30HMAIN:MOVTMOD,#01HMOVTH0,#3CHMOVTL0,#0B0HMOVR0,#10SETBEASETBET0SETBTR0LS:MOVA,#01HLS0:MOVP1,ACLRF0RLAJNCLS0AJMPLST0INT:MOVTH0,#3CHMOVTL0,#0B0HDJNZR0,RTIMOVR0,#10SETBF0RTI:RETIEND3(延時)ORG0000H;程序從0000H開始AJMPMAIN;跳轉到主程序ORG0030H;主程序起始地址MAIN:MOVA,#0FE
3、H;給A賦值成11111110LOOP:MOVP0,A;將A送到P0口,發(fā)光二極管低電平點亮LCALLDELAY;調用延時子程序RLA;累加器A循環(huán)左移一位AJMPLOOP;重新送P0顯示DELAY:MOVR3,#20;最外層循環(huán)20次D1:MOVR4,#80;次外層循環(huán)80次D2:MOVR5,#250;最內層循環(huán)250次DJNZR5,$;總共延時2us*250*80*20=0.8SDJNZR4,D2DJNZR3,D1RETEND