微控制器 並行埠輸入輸出實驗

2021-07-29 17:47:15 字數 1141 閱讀 4238

讀s10撥碼開關的狀態作為p1的輸入,p0埠做輸出接8個發光二極體。

(1)點亮板子上的第乙個燈d0。

#include

void main()

(2)點亮d0、d2、d4、d6燈,與d1、d3、d5、d7燈交替閃爍。

#include

#define uint unsigned int

#define uchar unsigned char

void delay( );

void main( )

} void delay()

(3)用庫函式實現順序迴圈移動點亮。

#include

#include//此處使用的標頭檔案包含了移位函式_crol_

void delay( ) 

void main()

}(4)用組合語言實現

org 0000h

main: mov a,#11111110b ;先把數11111110b送到累加器a,

loop: mov p0,a ;把a裡面的數11111110b送到p1埠輸出顯示

acall ys ; 顯示一小段時間

rl a ; 把a裡的數11111110b左移一位

ajmp loop ;回到loop處迴圈,即把左移後得到新的數碼再顯示,再重新整理a

ys: ;延時子程式ys,功能是能讓led亮起來或者滅掉一小段時間

mov r1,#200 ;讓燈亮滅時間的長短也就是延時的長短跟#號後面的資料有關

d: mov r2,#200 ;延時長點#號後面的資料就大點,延時短點#號後面的資料

t: mov r3,#200 ;就小點,但#號後面最大的資料是255

djnz r3,$ ;r3中的資料減一,若不為零,停止

djnz r2,t; r2中的資料減一,若不為零,轉至t

djnz r1,d ;r1中的資料減一,若不為零,轉至d

ret ;子程式返回指令,子程式的設計一般都是因為主程式要呼叫它, 呼叫完是要返回到主程式繼續執行下乙個語句的

end

(5)程式迴圈從p1埠讀入資料,從p0埠輸出,用led燈顯示輸入的狀態。

#include

void main(void)

} 

微控制器io口輸入輸出實驗報告 微控制器功耗的計算辦法

微控制器的功耗是非常難算的,而且在高溫下,微控制器的功耗還是乙個特別重要的引數。暫且把微控制器的功耗按照下面的劃分。暫且把微控制器的功耗按照下面的劃分。1.內部功耗 與頻率有關 2.數字輸入輸出口功耗 2.1輸入口 2.2輸出高 2.3輸出低 3.模擬輸入口功耗從下表可以得出一些基本的引數 首先我們...

微控制器學習 1 基本輸入輸出

1 題目 p1口接8個發光二極體作為輸出指示,程式設計實現是8個發光二極體按一定的頻率亮 滅閃爍。include 特殊功能暫存器的宣告 void delay unsigned int d 延時函式 void main 電路圖 2 流水燈設計 p1口接8個發光二極體作為輸出指示,程式設計實現8個燈 每...

微控制器C語言C51的輸入輸出

在c51語言中,它本身不提供輸入和輸出語句,輸入和輸出操作是由函式來實現的。在c51的標準函式庫中提供了乙個名為 stdio.h 的一般i o函式庫,它當中定義了c51中的輸入和輸出函式。當對輸入和輸出函式使用時,須先用預處理命令 include 將該函式庫包含到檔案中。在c51的一般i o函式庫中...