久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > PIC單片機“跑馬燈”實驗程序代碼

PIC單片機“跑馬燈”實驗程序代碼

作者: 時間:2016-11-23 來源:網絡 收藏
;實驗目的:本程序主要實現一個簡單的流水燈程序

;即輪流點亮C口的8個燈(先點亮RC0,再熄滅RCO點亮RC1。。。。)
;硬件要求:撥碼開關S11全部置ON。
#include ;調用頭文件
__CONFIG _DEBUG_OFF&_CP_ALL&_WRT_HALF&_CPD_ON&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC
;**********************用戶寄存器定義********************
count equ 20h ;移位次數寄存器
del_va1 equ 0ffh ;外層延時參數
del_va2 equ 0afh ;內層延時參數

本文引用地址:http://cqxgywz.com/article/201611/320211.htm


org 00h ;程序人口地址
;**********************主程序開始***********************
main
nop ;ICD所需要的一條空指令
clrf PORTC ;先清楚C口所有顯示
banksel TRISC ;選擇I/O口方向寄存器所在的體
clrf TRISC ;設置C口全為輸出
clrf STATUS ;返回體0
movlw .8
movwf count ;裝載循環次數8(C口共8位)


bsf STATUS,C ;置進位標志位為1,因循環移位是帶進位循環的
loop
rlf PORTC,1 ;C口左移1位
call delay
call delay
CALL delay ;調用三次延時程序(保證亮度,以及流水燈閃爍速度)
bcf STATUS,C ;清0進位標志位(永遠只有一只LED亮)
DECFSZ count,1 ;判斷是否一輪循環結束
goto loop ;否,繼續循環移位
GOTO main ;是,程序重頭開始

;***********************延時程序*************************
delay
movlw del_va1 ;延時程序外層參數
movwf 30h
movlw del_va2 ;延時程序內層參數
movwf 31h
decfsz 31h,1
goto $-1
decfsz 30h,1
goto $-4
return

;********************程序結束****************************
end



評論


技術專區

關閉