久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專(zhuān)注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

avr單片機(jī)LED燈循環(huán)位移匯編程序

作者:huqin   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2014年03月17日   【字體:

本程序中使用的avr單片機(jī)是m16芯片,可以讓8個(gè)led實(shí)現(xiàn)循環(huán)移位的效果/*
 * loopLEDLight.asm
 *
 *  Created: 2014/3/14 9:47:20
 *   Author: Wujie
 */

 .include "m16def.inc"
 .def temp1=r20
 .def count=r17

 .org $0000
rjmp main
 .org $002A
 main:
ldi r16,high(RAMEND)
out sph,r16
ldi r16,low(RAMEND)
out spl,r16
ser temp1
out ddrc,temp1
out portc,temp1
ldi count,0b01111111
ldi r16,197

loop:
out portc,count
rcall delay
rcall loopdis 
rjmp loop
;循環(huán)位移
loopdis:
ldi r21,7 ;r21裝入立即數(shù)7,后面或?qū)ount右移7位
push count ;將count保存起來(lái)后面會(huì)使用
lsl count ;將count左移一位
mov r18,count ;左位移一的立即數(shù)裝入r18
pop count ;還原count
dis: lsr count ;右位移7次count值改變?yōu)橛乙?次的值
dec r21
brne dis
or count,r18 ;左移一次與右移7次進(jìn)行求或 即左循環(huán)一次
ret

delay: push r16
del3: push r16
del2:         push        r16
    del1: dec r16
brne         del1
pop r16
dec r16
brne     del2
pop r16
dec r16
brne del3
pop r16
ret
/*寄存器與寄存器直接的傳遞使用mov*/

 

關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 久久久久久久免费视频 | 深夜免费福利 | 国产乱码一区二区 | 色av综合 | 国产精品视频久久久 | 69av在线播放| 亚洲在线免费观看 | 亚洲看片 | 国产精品一区二区三 | 日韩欧美亚洲 | 亚洲高清毛片一区二区 | 成人免费毛片片v | 亚洲综合激情网 | 成人一区二区视频 | 亚洲国产精品久久 | 欧美亚洲视频 | 三年中文在线看免费观看 | 久久久久免费视频 | 国产传媒一区二区 | 97国产精品人人爽人人做 | 一级片免费视频 | 成人黄色一级片 | 深夜福利视频在线观看 | 久久精品视 | 久久精品国产成人av | 免费黄网站在线观看 | 九一国产精品 | 性大毛片视频 | 欧美日韩不卡 | 一级片久久久 | 欧美激情xxx | 日韩免费在线观看视频 | 国产精品国产成人国产三级 | 成人在线观看网站 | 成人午夜在线 | 一级欧美一级日韩 | 国产精品高潮呻吟av | 日韩一区中文字幕 | 国产黄在线观看 | 午夜福利毛片 | 欧美一二区 |