1.
實驗任務
利用取表的方法,使埠
p1做單一燈的變化:左移
2次,右移
2次,閃爍
2次(延時的時間
0.2秒)。
2.
電路原理圖
圖4.5.1
3.
系統板上硬體連線
把「微控制器系統」區域中的
p1.0
-p1.7用8
芯排線連線到「八路發光二極體指示模組」區域中的l1-
l8埠上,要求:
p1.0
對應著l1
,p1.1
對應著l2,……
,p1.7
對應著l8。
4.
程式設計內容
在用**進行程式設計的時候,要用以下的指令來完成
(1).
利用movdptr
,#data16
的指令來使資料指標暫存器指到表的開頭。
(2).
利用movca,@
a+dptr
的指令,根據累加器的值再加上
dptr
的值,就可以使程式計數器
pc指到**內所要取出的資料。
因此,只要把控制碼建成乙個表,而利用
movc
工,@a
+dptr
做取碼的操作,就可方便地處理一些複雜的控制動作,取表過程如下圖所示:
程式框圖
圖4.5.2
6.
彙編源程式
org 0
start:mov dptr,#table
loop:clr a
movc a,@a+dptr
cjne a,#01h,loop1
jmp start
loop1:mov p1,a
mov r3,#20
lcall delay
inc dptr
jmp loop
delay:mov r4,#20
d1:mov r5,#248
djnz r5,$
djnz r4,d1
djnz r3,delay
rettable:db 0feh,0fdh,0fbh,0f7h
db 0efh,0dfh,0bfh,07fh
db 0feh,0fdh,0fbh,0f7h
db 0efh,0dfh,0bfh,07fh
db 07fh,0bfh,0dfh,0efh
db 0f7h,0fbh,0fdh,0feh
db 07fh,0bfh,0dfh,0efh
db 0f7h,0fbh,0fdh,0feh
db 00h, 0ffh,00h, 0ffh
db 01h
end7.c語言源程式
#include
unsigned char code table=;
unsigned char i;
void delay(void)
void main(void)
else
}
}
微控制器廣告燈實驗總結 基於微控制器的廣告燈實驗方案
1 實驗任務 利用取表的方法,使埠p1做單一燈的變化 左移2次,右移2次,閃爍2次 延時的時間0.2秒 2 電路原理圖 圖4.5.1 3 系統板上硬體連線 把 微控制器系統 區域中的p1.0 p1.7用8芯排線連線到 八路發光二極體指示模組 區域中的l1 l8埠上,要求 p1.0對應著l1,p1.1...
微控制器廣告燈實驗總結 基於微控制器的廣告燈實驗方案
基於微控制器的廣告燈實驗方案 實驗任務 利用取表的方法,使埠 p1做單一燈的變化 左移 次,右移 次,閃爍 次 延時的時間 0.2秒 電路原理圖 圖4.5.1 3 系統板上硬體連線 把微控制器系統區域中的 p1.0 p1.7 用芯排線連線到八路發光二極體指示模組區域中的 l1l8 埠上,要求 p1....
利用正則爬取貓眼電影
爬取貓眼電影 import json import requests from requests.exceptions import requestexception import redef get one page url 獲取乙個頁面的資訊 try proxies get random ip ...