課程名稱:_微控制器原理與應用
姓 名:_趙存檔 _ __
2015-- 2016 學年第 1 學期
實驗專案( 一 ) — 預習報告
專案名稱
led高低電平交替閃爍程式
實驗目的及要求
1. 正確安裝keil軟體
2. 在 proteus 的環境下,設計硬體原理圖;
3.在keil 整合環境下設計c語言程式;
4. 在 proteus 的環境下,將硬體原理圖與軟體聯接**執行。
實驗內容及原理
1、先正確安裝keil c 以及 proteus 軟體。
2、利用keil 編寫c語言**,在**中,定義好要輸出的管腳p2,定義乙個delay()延遲函式,以及led = ~led的反相輸出。
3、proteus的**,微控制器最小系統的構建:包括40號引腳電源vcc,20號引腳
接地gnd,9號引腳復位reset,18、19號引腳外接12mhz的晶振以提供時鐘頻率;
4、8個led燈的接法:vcc 5v供電的話,微控制器的p2口置低電平led才能亮。
5、**中0x表示的是16進製制。0x0f表示的是0000 1111,也就是說左邊的4個led燈會亮。
預習過程
中的疑問
疑問一:0x表示的是怎麼?
疑問二:在keil c 中怎麼定義指定的引腳號?
疑問三:怎麼編寫delay()延遲函式?
疑問四:在keil c 中怎麼進行除錯演練**?
疑問五: 在**環境proteus中,怎麼將keil c 中的**與電路圖結合,來進行**?
疑問六:發光led二極體怎麼辨別其正負?
疑問七:怎麼才能知道給引腳置低電平led燈亮還是不亮?
疑問八:微控制器最小系統的電路圖怎麼畫?
實驗專案( 一 ) — 實驗報告
專案名稱
led高低電平交替閃爍程式
指導教師
高照玲實驗室
教室實驗日期
2015/10月
分組情況
趙存檔、張澤光
成 績
好實驗步驟(演算法、**、方法)給出流程圖
led高低電平交替閃爍的keil c**:
#include
#define led p2
void delay(int x);
void main()
led = 0x0f;
while(1)
delay(10000);
led = ~led;
void delay(int x)
int i;
for(i=0;iproteus**電路圖:
電路圖包括:微控制器最小系統:復位以及晶振提供時鐘頻率,led燈。
實驗結果(結論及
分析)經過除錯以及分析可得出結論:通過編寫keil c**設定晶振頻率12mhz
編譯獲得hex檔案,在proteus中將hex檔案載入進去,完成實驗的結果。
通過實驗可以明白微控制器最小系統該怎麼畫:先是at89c51微控制器,晶振提供微控制器執行的時鐘週期,手動復位端。p2埠輸出低電平與led燈相連,使之被點亮。成績
LED流水燈實驗
led流水燈實驗 實現led流水燈,只需將上述電 路圖中的d1到d8逐個點亮 同樣也需要用到延時,方便我們肉眼可見 根據流水燈實現原理,即io口由低往高或者由高往低逐個輸出低電平特點,那麼我們可以將移位操作和迴圈結合進來 include 此檔案中定義了微控制器的一些特殊功能暫存器 include 因...
入門實驗 流水燈
以前看過黑金寫的一本教程就是關於verilog的建模的 今天看了從零開始走進fpga有了更深的感觸,決定在自己的板子上從頭開始 記錄下走的每一步 也為自己以後的學習打下基礎和信心。首先學習的就是流水燈了,具體的步驟詳見 從零走進fpga 工程分為三個模組 1 頂層模組 例化各個模組,工程的最高端別檔...
51微控制器彙編流水燈實驗
51微控制器 彙編點燈程式 使用rr迴圈右移指令實現流水燈的效果。mov p2,01h 將設定p2暫存器預設值為01h start mov a,p2 將p2中的資料送入暫存器 a 中 rr a rr迴圈右移指令 movp2,a 將暫存器 a 中的資料送入到p2暫存器 acall yanshi 呼叫延...