/* 跳線(xiàn)設(shè)置:默認(rèn) 實(shí)驗(yàn)方法:按int0 這個(gè)獨(dú)立按鍵你就會(huì)發(fā)現(xiàn)發(fā)光管會(huì)一個(gè)個(gè)都往下亮起來(lái),并且蜂鳴器會(huì)響 */ mov r7,#8 main:mov r0,#8 ;一個(gè)循環(huán)需要移動(dòng)8位 clr p1.4 mov p0,#01111111b ;初始為P0.7燈點(diǎn)亮 loop: jnb p3.2,loop acall ds1ms jnb p3.2,loop loop1:jb p3.2,loop1 clr p2.2 acall ds1ms ;延時(shí),以便人眼可以觀察到 setb p2.2 acall ds1ms mov a,p0 ;讀P0口當(dāng)前顯示的數(shù)據(jù)送到A rr a ;將A中的數(shù)據(jù)循環(huán)右移1位 mov p0,a ;再將A中右移過(guò)的數(shù)據(jù)送到P0 djnz r0,loop djnz r7,main ;移動(dòng)不夠8位,跳到LOOP處循環(huán), ljmp rel ;流動(dòng)1遍跳轉(zhuǎn)到MAIN處循環(huán)流。
;---顯示延時(shí)---------- ds1ms: mov r1,#2 ds1lo: mov r2,#20 ds2lo: mov r3,#200 djnz r3,$ djnz r2,ds2lo djnz r1,ds1lo ret ;延時(shí)返回 rel: end
|