欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3293|回復: 1
打印 上一主題 下一主題
收起左側

DICE-DS01配51單片機開發板的實驗指導書下載

[復制鏈接]
跳轉到指定樓層
樓主
ID:426405 發表于 2018-11-14 15:53 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
目   錄
第1章  DICE-DS01實驗系統的資源介紹
一、系統功能概述
二、系統硬件資源
第2章  開發環境安裝使用說明
一、KeilC51集成開發環境的安裝
二、在Keil uVision2中新建一個工程以及工程配置
三、工程的編譯、調試以及ISP下載
第3章  基于51單片機系統資源實驗
一、單片機的IO編程
二、單片機的中斷系統
三、單片機的定時器/計數器
四、單片機的串口特點和編程
五、存儲器
六、PWM發生器
七、WDG看門狗
八、SPI總線
九、 I2C總線
十、綜合實驗
十一、步進電機實驗
十二、TFT液晶顯示實驗
十三、16X16LED點陣顯示漢字實驗
附錄
芯片管腳與實驗箱上面MCU模塊部分的二號孔對應說明:
第4章  基于Altera CPLD系統設計實驗
實驗一  簡單門電路實驗
實驗二  地址譯碼電路實驗
實驗三  分頻器電路實驗
實驗四  8位鎖存器電路實驗
實驗五  4位共陰極數碼管動態顯示實驗
附錄A  QuartusII 6.0安裝方法
附錄B  QuartusII 6.0使用說明書
第1章  DICE-DS01實驗系統的資源介紹一、系統功能概述
DICE-DS01型教學實驗系統是屬于一種綜合的教學實驗系統,該系統支持8位的8051 / C8051F021等型號、16位的MSP430系列 / AVR系列以及基于Cortex-M3內核的32位群星系列ARM處理器,實現了多模塊的應用實驗。它是集學習、應用編程、開發研究于一體多功能創新平臺。用戶可根據自己的需求選用不同類型的CPU適配板,同時,實驗系統上的EXP總線能夠拓展較為豐富的實驗接口板。用戶在了解EXP標準后,更能研發出滿足自身需求的實驗接口板。除此之外,在實驗板上有豐富的外圍擴展資源(如:撥動鍵盤與LED顯示、HD7279、TFT真彩液晶、16X16 LED漢字點陣、12位串行AD和DA、光耦/繼電器、通信模塊、IC卡模塊、E-LAB模塊以及電機控制模塊等),可以完成基于CPU硬件資源的基礎性實驗、多種串行總線類實驗以及CAN總線實驗等等。實驗箱底板的平面框圖如下圖1-1所示:


1-1 DICE-DS01系統的底板資源平面
DICE-DS01實驗箱(即:《多功能創新平臺》)是集EDA /CPLD/FPGA和MCU 的開發為一體的綜合性實驗箱,它不僅可以獨立完成各種EDA /CPLD/FPGA設計,也可以完成多種MCU開發。
MCU部分支持的CPU板卡有:EXP-LM3S615/2948/3749/6952/9B90、EXP-C8051F021、EXP-MSP430F149/155/5419、EXP-Atmega128等等(我公司的全系列EXP接口類開發板)。
EDA部分支持的CPU板類有:EXP-EPM3128&3256、EXP-EP1K30、EXP-EP3C5 & EP3C10等等(我公司的全系列EXP接口類開發板)。
二、系統硬件資源

DICE-DS01實驗系統的硬件資源主要包括:

EXP系列MCU板接口單元
              EXP系列EDA/CPLD/FPGA板接口單元
              E_LAB模塊接口單元
              外擴看門狗(MAX705)單元
   接觸式IC卡單元
              蜂鳴器驅動單元
              光電耦合器與繼電器單元
              單脈沖產生單元
              單總線(DS18B20數字溫度傳感器)單元
              12位串行AD(TLC2543)單元
              12位串行DA(TLV5616)單元
              數字輸入輸出(12個撥動開關及12個LED發光管)單元
              電機(直流電機與步進電機)控制單元
              鍵盤顯示(芯片HD7279A,2×4鍵盤,帶4位LED數碼管)單元
              TFT真彩液晶(AM176220 TFT彩色液晶屏,176×220分辨率)顯示單元
   16X16 LED點陣顯示單元
              RS232 、RS485總線通信接口單元
              CAN總線多機通信接口單元(部分芯片
              USB主從設備接口單元(部分芯片有,硬件在CPU板上)
              以太網接口單元(部分芯片有,硬件在CPU板上)

下面分別介紹各個單元:

1、CPU板接口
              該實驗系統采用外設底板加CPU最小系統板的結構方式,CPU通過雙排針擴展槽擴展。用戶可根據自己的需求選用不同類型的CPU板。不同類型的CPU板在實驗箱的硬件資源上是完全兼容的。支持不同種類的CPU板混合使用。
CPU最小系統板主要由以下幾個模塊組成:
☆              CPU芯片部分
☆              時鐘產生部分
☆              復位電路部分
☆              擴展接口部分
☆              電源變換部分
☆              UART接口部分
☆              USB主從接口部分(部分CPU具有
☆              以太網接口部分(部分CPU板)
EXP-89S51CPUPCB布局圖,如圖1-2所示
1-2外觀和接口示意圖
1-1接口說明
序號
1
2
3
4
5
含義
CPU
擴展接口
P1
電源接口
POWER
UART接口
+5V電源指示燈
序號
6
7
8
9
10
含義
擴展接口
P2
擴展接口
P4
復位按鈕
RST
串口復用跳線
ISP下載口
ISP下載口EXP-89S51的JISP下載口,符合51接口標準,引腳分配圖如下圖1-3所示:(PCB中的方形焊盤為第一腳)
1-3ISP下載口管腳定義
POWER電源接口,CPU板單獨使用時,從此接口給CPU板供電,+5V,內正外負。CPU板插在實驗箱底板上時,不需要從POWER電源插口供電。
RST復位按鈕,按下系統復位。
P1:CPU數據地址總線擴展接口。
1-2P1管腳定義
編號
定義
備注
1
DGND
數字地
2
DD0/I/O
數據總線0/通用雙向I/O口
總線雙向數據線
3
DD1/I/O
數據總線1/通用雙向I/O口
4
DD2/I/O
數據總線2/通用雙向I/O口
5
DD3/I/O
數據總線3/通用雙向I/O口
6
DD4/I/O
數據總線4/通用雙向I/O口
7
DD5/I/O
數據總線5/通用雙向I/O口
8
DD6/I/O
數據總線6/通用雙向I/O口
9
DD7/I/O
數據總線7/通用雙向I/O口
10
DD8/I/O
數據總線8/通用雙向I/O口
11
DD9/I/O
數據總線9/通用雙向I/O口
12
DD10/I/O
數據總線10/通用雙向I/O口
13
DD11/I/O
數據總線11/通用雙向I/O口
14
DD12/I/O
數據總線12/通用雙向I/O口
15
DD13/I/O
數據總線13/通用雙向I/O口
16
DD14/I/O
數據總線14/通用雙向I/O口
17
DD15/I/O
數據總線15/通用雙向I/O口
18
DGND
數字地
19
A17/I/O
地址總線17/通用雙向I/O口
總線中的地址線
20
A16/I/O
地址總線16/通用雙向I/O口
21
A19/I/O
地址總線19/通用雙向I/O口
22
A18/I/O
地址總線18/通用雙向I/O口
23
A1/I/O
地址總線1/通用雙向I/O口
24
A0/I/O
地址總線0/通用雙向I/O口
25
A3/I/O
地址總線3/通用雙向I/O口
26
A2/I/O
地址總線2/通用雙向I/O口
27
A5/I/O
地址總線5/通用雙向I/O口
28
A4/I/O
地址總線4/通用雙向I/O口
29
A7/I/O
地址總線7/通用雙向I/O口
30
A6/I/O
地址總線6/通用雙向I/O口
31
A9/I/O
地址總線9/通用雙向I/O口
32
A8/I/O
地址總線8/通用雙向I/O口
33
A11/I/O
地址總線11/通用雙向I/O口
34
A10/I/O
地址總線10/通用雙向I/O口
35
A13/I/O
地址總線13/通用雙向I/O口
36
A12/I/O
地址總線12/通用雙向I/O口
37
A15/I/O
地址總線15/通用雙向I/O口
38
A14/I/O
地址總線14/通用雙向I/O口
39
+5V
主電源
40
+5V

P2:CPU外設總線擴展接口
1-3P2管腳定義
編號
定義
備注
1
DGND
數字地
2
DGND
3
READY / I/O
準備好/通用I/O
4
PS / I/O
程序空間片選信號
5
DS / I/O
數據空間片選信號
6
IS / I/O
地址空間片選信號
7
R/W0 / I/O
讀寫信號0
8
/CE1 / I/O
外部存儲器選中信號1
9
/CE0 / I/O
外部存儲器選中信號0
10
MSC
微狀態完成信號
11
XF/XPLLDSIS
I/O輸出口
12
/BHOLDA
外部DMA保持確認信號
13
IAQ
指令地址采集信號
14
HOLD
外部DMA保持請求信號
15
BIO / I/O
I/O輸入信號
16
DGND
數字地
17
SPICLK2 / I/O
SPI2時鐘信號/通用I/O(TXD1)
18
SPICLK1 / I/O
SPI1時鐘信號/通用I/O
19
SPISTE2 / I/O
SPI2從動發送使能/通用I/O(RXD2)
20
SPISTE1 / I/O
SPI1從動發送使能/通用I/O
21
SOMI2 / I/O
SPI2從出主入/通用I/O(TXD1)
22
SOMI1 / I/O
SPI1從出主入/通用I/O
23
SPICLK2 / I/O
SPI2時鐘信號/通用I/O(RXD1)
24
SPICLK1 / I/O
SPI1時鐘信號/通用I/O
25
SPISTE2 / I/O
SPI2從動發送使能/通用I/O(TXD0)
26
SPISTE1 / I/O
SPI1從動發送使能/通用I/O
27
SIMO2 / I/O
SPI2從入主出/通用I/O(RXD0)
28
SIMO1 / I/O
SPI1從入主出/通用I/O
29
NMI
不可屏蔽中斷信號
30
IACK
中斷響應信號
31
INT1/TA0/ TICTRIP / I/O
外部中斷1/捕捉0/定時器1比較器輸出/通用I/O
32
INT0/TACLK / I/O
外部中斷0/定時器A時鐘/通用I/O
33
INT3/TA2 / I/O
外部中斷3/捕捉2/通用I/O
34
ADCSOC/INT2 / I/O
外部中斷2/ADC轉換啟動 /通用I/O
35
CLKOUT
CPU時鐘輸出
36
TOUT
定時器1輸
37
C6TRIP / I/O
比較單元6輸出
38
RESET
復位信號
39
DGND
數字地
40
DGND

P4:總線輸入輸出接口
1- 4P4管腳定義
編號
定義
備注
1
CAP0 / I/O
捕獲引腳0/通用I/O
2
CAP1 / COMPIN+/I/O
捕獲引腳1/外部比較器輸入端+/通用I/O
3
CAP2 /COMPIN-/ I/O
捕獲引腳2/外部比較器輸入端-/通用I/O
4
COMPOUT / I/O
外部比較器輸出端/通用I/O
5
SDA / I/O
IC數據接口/通用I/O
6
SCL / I/O
IC時鐘接口/通用I/O
7
PWM0 / I/O
PWM輸出0/通用I/O
8
PWM1 / I/O
PWM輸出1/通用I/O
9
PWM2 / I/O
PWM輸出2/通用I/O
10
PWM3 / I/O
PWM輸出3/通用I/O
11
LCDD0 /I/O
LCD數據線0/通用I/O
12
LCDD1 /I/O
LCD數據線1/通用I/O
13
LCDD2 /I/O
LCD數據線2/通用I/O
14
LCDD3 /I/O
LCD數據線3/通用I/O
15
LCDD4/I/O
LCD數據線4/通用I/O
16
LCDD5 /I/O
LCD數據線5/通用I/O
17
LCDD6 /I/O
LCD數據線6/通用I/O
18
LCDD7 /I/O
LCD數據線7/通用I/O
19
T1PWM/PWM4
PWM輸出/ PWM輸出4
20
REQ / I/O
LCD請求信號/通用I/O
21
T2PWM/PWM5
PWM輸出/ PWM輸出5
22
BUSY / I/O
LCD應答信號/通用I/O
23
TDIRA / I/O
定時器方向/通用I/O
24
TDIRB / I/O
定時器方向/通用I/O
25
TCLKINA
時鐘輸入A (外部定時器0)
26
CANTX 0
CAN 0發送數據引腳
27
CADC0 / I/O
模數轉換0通用I/O口
28
CADC1 / I/O
模數轉換1/通用I/O口
29
CADC2 / I/O
模數轉換2/通用I/O口
30
CANRX 0
CAN 0接收數據引腳
31
CANTX 1
CAN 1發送數據引腳
32
CANRX 1
CAN 1接收數據引腳
33
CDAC0 / I/O
CPU內部數模轉換0/通用I/O口
34
CDAC1 / I/O
CPU內部數模轉換1/通用I/O口
35
CADC3 / I/O
模數轉換3/通用I/O口
36
CADC4 / I/O
模數轉換4/通用I/O口
37
CADC5 / I/O
模數轉換5/通用I/O口
38
IISCDCLK / I/O
IIS編解碼時鐘/通用I/O
39
IISDO / I/O
IIS數據輸出/通用I/O
40
IISLCK / I/O
IIS時鐘/通用I/O
41
IISLRCK / I/O
IIS通道選擇時鐘/通用I/O
42
IISDI / I/O
IIS數據輸入/通用I/O
43
VREFHI
AD輸入高電平參考
44
VREFLO
AD輸入低電平參考
45
RD / I/O
讀信號線/通用I/O
46
WE / I/O
寫使能信號線/通用I/O
47
DGND
數字地
48
+5V
主電源

LED指示燈:D1:程序運行燈、D2:+3.3V。

2、E_lab總線接口
通過E_lab接口,可擴展我公司的E_lab擴展模塊,信號定義如圖1-4所示:
1-4  E-LAB接口定義
接口的外形如圖1-5所示
1-5E_LAB接口外形
3、串口接口
該模塊主要支持用串口進行無線通信的模塊,如ZIGBEE模塊。
接口信號定義如圖1-6所示:
1-6串口接口信號定義
4、看門狗模塊
該模塊主要實現外擴看門狗器件控制MCU復位,做實驗的時候只需連接兩根線,電路圖如圖1-7所示。

1-7外擴看門狗電路圖
5、IC卡模塊
該模塊主要完成 I2C總線讀寫IC卡的實驗,既可以采用GPIO口模擬I2C時序的方式也可以采硬件I2C的方式,具體取決于所選擇的MCU是否自帶I2C控制器。原理圖如圖1-8所示:


1-8 IC卡電路圖
6、RS485模塊
該模塊主要完成485通信實驗,由MAX485芯片完成485電平的轉換。電路圖如圖1-9所示:


1-9RS485電路圖
7、溫度采集模塊
該模塊采用單總線通信方式的數字溫度傳感器DS18B20實時采集當前的溫度。電路圖如圖1-10所示:


1-10DS18B20電路圖
8A/D轉換模塊
                 該模塊主要完成模擬量與數字量的轉換,使用TI的TLC2543芯片,該芯片是12位的串行A/D轉換芯片,采用SPI的通信模式,電路圖如圖1-11所示:



1-11 A/D轉換電路圖
9、D/A轉換模塊
該模塊主要完成數字量與模擬量的轉換,使用TI的TLC5616芯片,該芯片是12位的串行D/A轉換芯片,采用SPI的通信模式,電路圖如圖1-12所示:


1-12 DA轉換電路圖
10、CAN總線模塊
Cortex-M3的部分芯片帶CAN控制器,只需外接一個CAN收發隔離器件就可以完成CAN總線通信實驗。電路圖如圖1-13所示:




1-13  CAN總線電路圖
11、蜂鳴器模塊
該模塊主要完成用MCU的定時器產生不同頻率的PWM方波驅動蜂鳴器鳴叫。電路圖如圖1-14所示:

1-14蜂鳴器電路圖
12、光耦與繼電器模塊
該部分主要用光耦控制繼電器的打開與閉合,實現光電隔離的功能。電路圖如圖1-15所示:

1-15光耦、繼電器電路圖
13、脈沖產生模塊
該模塊主要用來提供外部脈沖信號,可供給MCU的中斷管腳實現外部中斷計數的功能。電路圖如圖1-16所示:


1-16外部脈沖輸入電路圖

14、撥動開關LED模塊
該模塊主要作為一個簡單的數字量輸入輸出設備,撥動開關可以改變輸入的狀態,LED燈可以顯示輸出的高低電平。電路圖如圖1-17所示:


1-17鍵盤與LED電路圖
15、直流電機模塊
              該模塊主要實現直流電機的轉速測量及調速實驗,通過電位器改變電機的轉速,轉速經霍爾傳感器轉后得到方波,用定時器定時1S鐘來觀測MCU接收到多少個外部脈沖,從而得到電機轉速。電路圖如圖1-18所示:




1-18直流電機電路圖
16、步進電機模塊
                            該模塊主要實現步進電機轉向與轉速的控制,用74LS07作為驅動芯片,電路圖如圖1-19所示:


1-19步進電機電路圖
17、鍵盤數碼管顯示模塊
              該模塊采用專用的鍵盤與顯示控制芯片HD7279A,實現顯示與按鍵中斷的控制。電路圖如圖1-20和1-21所示:





1-20數碼管顯示電路圖
1-21 7279電路圖
18LCD模塊
              該模塊采用臺灣晶采公司生產的AM176220JTNQW-00真彩液晶,該液晶參數為262K色,176X220像素,2.0寸液晶,在實驗箱上采用8位數據線與5根控制線的方式驅動該液晶顯示字符。實驗箱上的撥碼開關K33為液晶的背光開關,KT1為液晶電源開關,使用的時候將兩個撥碼開關撥到上側,不使用的時候均撥到下側,達到節約資源的目的。電路圖如圖1-22所示:


1-22  TFT 2.0真彩液晶電路圖
1916X16LED陣顯示模塊
              該模塊主要顯示漢字的功能。采用兩片74LS138控制行信號,兩片74LS595傳送數據,實現串入并出的方式,這樣可以節省MCU的GPIO口。74LS138控制的行給低電平,數據位給高電平的時候對應的點會點亮。驅動電路圖如圖1-23所示:






1-23  16X16 LED點陣顯示行列驅動電路
20、其它接口說明
電源單元:為系統提供+5V、+12V、-12V、+3.3V的電源,其中+3.3V的電源已經在實驗箱底板上用紅色LED(POWER)燈指示出來。
時鐘單元:采用我公司現成的時鐘模塊,通過接插件連入實驗箱的底板上,看絲印注釋選擇相應的撥碼開關狀態即可獲得所需的時鐘輸出?勺鱁DA部分的時鐘輸入。



第2章  開發環境安裝使用說明一、KeilC51集成開發環境的安裝
1、Keil uVision2的安裝步驟如
將安裝文件拷貝到電腦根目錄下,然后雙擊圖標,如圖2-1所示:
注意:去掉屬性里的只讀選項。

2-1啟動安裝環境對話框
2、選擇Eval Version。然后然后一直next直至安裝完成,如圖2-2所示:

2-2 完成安裝
二、在Keil uVision2中新建一個工程以及工程配置
1、打開Keil C環境,如圖2-3所示。
2-3 打開工程對話框
2、新建工程或打開工程文件:在主菜單上選“Project”項,在下拉列表中選擇“New Project”新建工程,瀏覽保存工程文件為擴展名為“.Uv2”的文件;蛟谙吕斜碇羞x擇“Open project”打開已有的工程文件。如題2-4所示:
2-4 新建工程
3、環境設置:新建工程文件后,在工具欄中選擇如下圖選項設置調試參數及運行環境,或從主菜單“Project”項中選擇“Options for Target ‘Target1’”,打開如下圖2-5設置窗口。
2-5 選擇目標器件
在“Device”項下選擇要仿真的芯片類型,如:Atmel –> AT89S51。
在“Target”項下的晶振設置中修改為硬件電路所用晶振頻率,如:6MHz。
在“Output”項下如在Creat HEX File選項前打勾,則在編譯的同時生成可下載執行的HEX文件,用仿真芯片仿真時可以不進行此項設置。
在“Debug”項下選擇“Use: Keil Moniter-51 Driver ”使用硬件仿真。如圖2-6所示:
2-6Debug窗口設置
點擊“Settings”按鈕,進入串口選擇及波特率設置窗口(如圖2-7所示)。
2-7端口設置
選擇合適的波特率及串口號!癝erial Interrupt”項不可選,把前面的勾打掉。點OK保存設置。
在“Option for Target ‘Target1’”窗口中,點確定,退出環境設置。
4、新建文件:在主菜單的“File”下拉列表中選“New…”新建文件。編輯文件并保存文件。文件保存為擴展名為“.C”或“.ASM”的文件,如圖2-8所示。
2-8新建main.C或.ASM文件

5、添加文件:在左邊的“Project Window”窗口中,用右鍵選取“Source Group 1”,在彈出的列表中選擇“Add Files to Group ‘Source Group 1”,彈出瀏覽窗口,如圖2-9所示:
2-9 添加main.c.asm文件
瀏覽添加編輯好的C或ASM文件。添加完畢點“Close”,關閉窗口。
這時發現添加的文件名已出現在“Project Window”窗口中。雙擊剛添加的C或ASM文件。打開編輯文件窗口如圖2-10所示:
2-10 工程窗口
三、工程的編譯、調試以及ISP下載
1、譯鏈接:在“Build Bar”工具條中,選第二項編譯當前文件,第三項為編譯全部。編譯完成,在下方“Output”窗口中出現編譯結果,如圖2-11所示:
2-11編譯窗口
2、仿真調試:點擊調試按鈕,或從主菜單選取調試“Start/Stop Debgu Session CTRL+F5”(快捷鍵CTRL+F5),程序下載到仿真芯片中。窗口下方顯示下載進度條。100%下載完成后出現如圖2-12所示。
2-12下載窗口
  • 序仿真:運用運行“Debug Bar”調試工具條,進行單步、進入、跳出、運行到光標、全速運行等。
全速運行后,程序不受控。如需再次單步調試,需點擊調試工具停止按鈕,停止調試。停止后,硬件復位仿真芯片,再次運行第7步。
              4、使用ISP燒寫hex文件。
(1)、雙擊次目錄下的文件IspPgm.exe即可打開軟件進入如圖2-13的界面
2-13 ISP窗口
(2)、芯片選擇左擊界面右面芯片選擇窗口的下拉箭標,選擇編程芯片的型號。
(3)、導入hex文件到緩沖區
    (4)、左擊界面上的“Open File”按鈕,選擇需要寫入的hex文件。
(5)、向芯片寫入文件(寫文件時要保證編程電纜連接正確,且CPU工作正常)
(6)、左擊界面上的“Write”按鈕,開始編程向芯片寫入程序。
(7)、寫入結束,出現如圖2-14界面表示完成寫入編程。
2-14 ISP下載完畢
(8)、退出程序,左擊界面右上角的“x”按鈕,退出此程序。





第3章  基于51單片機系統資源實驗一、單片機的IO編程
實驗1   IO開關量輸入實驗
目的:學習單片機讀取IO引腳狀態的的方法。
內容:編程讀取IO引腳狀態。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:首先要把相關的引腳設置在IO的輸入狀態,然后寫一個循環,不停地檢測引腳的狀態。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將試驗箱上的的IO1--- IO8分別連接到SWITCH的8個撥碼開關的K1---K8的輸出端子K1---K8上,連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾IO_INPUT下的工程文件IO_INPUT.Uv2編譯程序,上電,在程序注釋處設置斷點,進入調試狀態,打開窗口Peripherals-->IO-Port-->P0,改變開關狀態,
運行程序到斷點處,觀察窗口的數值與開關的對應關系。


實驗2   IO輸出驅動繼電器(或光電隔離器)實驗
目的:學習IO輸出控制方法。
內容:通過單片機的IO引腳驅動繼電器(或光電隔離器)動作。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:首先要把相關的引腳設置在IO的輸出狀態,然后寫一個循環,依次輸出高低電平。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1、IO2分別連接到RELAY的輸入R_IN和PHOTO的輸入P_IN上,R_OUT和P_OUT分別連接到發光二極管LAMP的輸入孔L1和L2上。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾IO_OUTPUT下的工程文件IO_OUTPUT.Uv2編譯程序,上電,進入調試狀態,打開窗口Peripherals-->IO-Port-->P0,單步運行程序,觀察窗口的數值變化。
4、全速運行程序,觀察繼電器的發光二極管的亮滅變化,同時確定繼電器動作(或光電隔離器導通)與IO輸出電平的關系。


實驗3   IO輸入/輸出---半導體溫度傳感器DS18B20實驗
目的:學習IO引腳編程實現交替輸入、輸出的方法。
內容:通過單片機的IO引腳與半導體溫度傳感器實現單線通訊。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:根據18B20的資料(見備注),將IO引腳設置在輸出狀態,分別模擬出不同的命令時序,例如復位、讀寄存器等;再改變IO引腳的為輸入狀態,接收傳感器輸出的數據。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1連接到TEMP SENSOR DS18B20的DQ。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾IO_INOUTPUT下的工程文件IO_INOUTPUT.Uv2編譯程序,上電,進入調試狀態,按照程序注釋說明設置斷點,全速運行程序到斷點處,觀察寄存器R7中的數據,用手摸住傳感器DS18B20芯片,再運行到斷點處,比較R7的變化。
4、備注: DSl8B20數字溫度計提供9位(二進制)溫度讀數指示,器件的溫度信息經過單線接口送入DSl8B20或從DSl8B20送出,因此從主機CPU到DSl8B20僅需一條線(和地線),DSl8B20的電源可以由數據線本身提供而不需要外部電源。因為每一個DSl8B20在出廠時已經給定了唯一的序號,因此任意多個DSl8B20可以存放在同一條單線總線上,這允許在許多不同的地方放置溫度敏感器件。DSl8B20的測量范圍從-55到+125增量值為0.5可在l s(典型值)內把溫度變換成數字。

二、單片機的中斷系統
實驗 1外部中斷----脈沖計數實驗
目的:學習單片機的外部中斷使用方法。
內容:對外部中斷計數顯示。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:首先第一步設置單片機的IO為輸入狀態,第二步設置引腳的中斷觸發方式,一般設置為邊沿觸發,第三步,設置外部中斷的優先級,第四步,編寫中斷服務程序,包括中斷入口跳轉等,第五步,設置中斷使能,允許外部引腳觸發中斷。第六步,設置死循環,主程序結束,交給中斷服務程序完成計數。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的INT0連接到單脈沖輸出孔P-,連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾EXT_INT1下的工程文件EXT_INT1.Uv2,編譯程序,上電,進入調試狀態,按照程序注釋說明設置斷點,全速運行程序,每按下一次單脈沖開關Paulse,程序運行到斷點處一次,觀察寄存器R1的變化。

三、單片機的定時器/計數器
實驗1   計數器實驗
目的:學習單片機的定時/計數器的計數功能使用方法。
內容:對外部單脈沖信號進行計數,計數10個后產生計數中斷。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:使用定時/計數器的計數功能,將外部時鐘信號加在計數器的計數時鐘輸入引腳上,當計數10次后,計數器溢出,觸發標志位,編程控制分頻輸出引腳電平翻轉,產生分頻后的時鐘信號。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1和T0分別連接到發光二極管L1的輸入L1上和單脈沖輸出孔P-,連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾COUNTER下的工程文件COUNTER.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、上電全速運行程序,按下5次單脈沖按鍵后發光二極管點亮,再按5次后發光二極管熄滅,如此重復。


實驗2   秒時鐘發生器實驗
目的:學習單片機的定時/計數器的定時功能使用方法。
內容:產生頻率為0.5Hz的時鐘輸出。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:使用定時/計數器的定時功能,時鐘源采用系統時鐘,根據時鐘源的頻率配置初值寄存器,使能定時器中斷,在中斷服務程序中翻轉一個IO引腳輸出,產生0.5Hz的時鐘輸出。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1連接到發光二極管L1的輸入L1上,連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾TIMER_SECOND下的工程文件TIMER_SECOND.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、全速運行程序,觀察發光二極管的亮滅情況。
5、備注:現在的單片機系統時鐘較高,難于產生1秒的定時中斷,所以,可以設置定時時間為50毫秒,在中斷服務程序中設置程序計數,當累加到1秒后,控制輸出IO引腳電平翻轉,驅動發光二極管。

四、單片機的串口特點和編程
實驗1   PC機串口通訊實驗
目的:學習單片機串口的使用方法。
內容:與PC機實現通訊。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:第一步,配置串口工作在8位,波特率可變異步通訊工作方式,波特率由定時器1確定,同時使能其中斷并清除其中斷標志位;第二步,配置定時器1,工作在8位自動重裝入模式,根據波特率計算其初值。第三步,編寫串口中斷服務程序,只處理接收中斷,對發送中斷只清除標志,不做其他處理。第四步,設置死循環,交由中斷服務程序處理。

步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用附帶的直連串口線連接試驗箱的DB9和計算機的串口,接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾RS232下的工程文件RS232.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化,全速運行程序,拔掉開發板上的串口線,強制關閉RS232工程,然后將串口線連接到實驗箱上的的串口上。
4、實驗箱上MCU部分的TXD、RXD連接到RS232的TXD和RXD上,并將開發板上的跳線帽JP2短接在下側。
4、打開PC機的超級終端,設置波特率9600、數據位8、無流控、無校驗等信息,PC機全速運行實驗程序,在超級終端里輸入可顯示字符,觀察超級終端的顯示,斷開連接的串口線,再輸入字符,觀察顯示有什么不同。
5、備注:在串口中斷服務程序中,要清除中斷標志位。在發送數據前,要檢測發送狀態位在發送結束狀態。


實驗2   RS485通訊實驗
目的:學習單片機串口的使用方法以及RS485通訊。
內容:使用Max485芯片進行電平轉換,實現差分方式通訊。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。AT89S51/52/53芯片兩個(需2套)
步驟:
1、將兩個實驗箱的CPU板正確安放在CPU接口插座上,跳線帽JP2端都跳在下側。
2、連線:
發送設備:
(1)用導線將MCU的TXD、RXD、IO1、INT0分別連接到RS485的TXD、RXD、E485和單脈沖輸出P-孔。
(3)用兩根導線順序連接兩個實驗箱的UR1差分接口(上、下分別對接)。
接收設備:
(1)用導線將MCU的TXD、RXD分別連接到RS485的TXD、RXD;
(2)用導線將MCU的SDA連接到RS485的E485;
(3)用導線將MCU的IO1-IO8分別連到LAMP的L1-L8;
(4)用兩根導線順序連接兩個實驗箱的UR1差分接口(A、B分別對接)。
3、分別連接好仿真器,試驗箱上電,在PC機上打開Keil C環境,打開試驗程序文件夾RS485下的RS485_TX里的工程,編譯程序,將程序下載到“發送設備”的CPU板中。再打開RS485下的RS485_RX里的工程,編譯程序,將程序下載到“接收設備”的CPU板中。
4、同時給兩個實驗箱上電。按下發送設備上的單脈沖按鍵。觀察“接收設備”實驗箱上的LED燈變化。再結合程序分析為什么。
5、備注:在該RS485的通訊中,關鍵是設置RS485的E485端的狀態,從而決定是接收回來數據還是發送出去數據。

五、存儲器
實驗1   RAM存儲器讀寫實驗
目的:學習存儲器數據讀寫方法。
內容:將內部RAM中的一段數據復制到另一RAM空間。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:首先設置源的首地址和目的首地址,再設置數據塊的長度,設置一個變量,先從源讀取一個字節,再寫入到目的地址中,如此循環,直至到數據塊的長度。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾RAM下的工程文件RAM.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、按照注釋設置斷點,打開變量觀察窗口,全速運行實驗程序到斷點處,觀察2個數組內容的變化。
5、備注:在匯編中,對內部存儲器的操作使用指令MOV,外部存儲器的操作使用MOVX和MOVC,其他相同。
6、Keil C環境下觀察變量的方法:
在地址框填寫:  
                            C:0000    查看   CODE    區  
                              D:0000    查看   DATA    區  
                              I:0000     查看   IDATA   區  
                              X:0000    查看   XDATA   區


六、PWM發生器
實驗1   PWM發生器(模擬)實驗
目的:學習利用定時器和IO產生PWM的方法。
內容:產生占空比變化的PWM波形輸出。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板,示波器。
編程:使用定時/計數器的定時功能,分別產生PWM的高電平和低電平。第一步,首先選擇使用單片機的定時/計數器0的定時功能,確定工作方式。第二步,根據PWM頻率要求確定初值。第三步,使能定時器的中斷。第四步,編寫定時器中斷服務程序,確定PWM波形高低電平的保持時間,控制IO引腳輸出翻轉電平。做一個死循環,一切交給中斷處理。

步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾PWM_IO下的工程文件PWM_IO.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、全速運行程序,用示波器的單片機的IO1的波形。
5、備注:定時器產生中斷的定時時間是PWM波形占空比調整的最小單位,即分辨率,在定時器中斷服務程序中對中斷計數,控制IO電平的翻轉。


實驗2蜂鳴器實驗
目的學習AT89S51的定時器定時功能使用方法。
內容用定時器產生PWM方波驅動蜂鳴器鳴叫。
設備DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
步驟
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、用導線將MCU的IO1連接到BUZZER的BUZZER孔,連接好仿真器。
3、試驗箱上電,在PC機上打開Keil C環境,打開試驗程序文件夾BUZZER下的工程文件BUZZER.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、全速運行程序,觀察蜂鳴器的鳴叫情況,同時伴隨繼電器動作。




七、WDG看門狗
實驗1   外擴WDGMAX705)實驗
目的:學習外擴看門狗控制器的使用方法。
內容:配置外擴看門狗電路。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:配置一個IO輸出翻轉電平信號喂狗,配置一個IO輸出驅動發光二極管顯示狀態。
步驟:
1、將CPU板正確安放在CPU接口插座上。
2、用導線將MCU的IO1、IO2分別連接到WDG的WDI和發光二極管L1的輸入孔L1上,用導線將WDG的RST連接到光耦的的P_IN孔,P_OUT連接到74LS244的D0,74LS244的Q0接MCU的RST上,74LS244的/G1、/G2接GND。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾EXT_WDG下的工程文件EXT_WDG.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、將CPU板上的仿真芯片換成可燒錄的芯片AT89S51/52/53,通過ISP電纜燒錄HEX文件。復位后運行程序,觀察發光二極管在上電時亮一次,然后保持熄滅狀態。去除IO1到WDI的連線,觀察發光二極管會重復亮滅。
5、備注:在程序開始處,點亮發光二極管約1秒鐘,在程序正常運行中,發光二極管熄滅,如果在設定的時間內不能喂狗,程序回到開始處運行,重新點亮發光二極管。

實驗2  WDG(內部)實驗
目的:學習內部看門狗控制器的使用方法。
內容:配置內部看門狗。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:配置一個IO輸入控制信號,控制喂狗。
步驟:
1、將CPU板正確安放在CPU接口插座上。
2、連線:用導線將MCU的IO1、IO2分別連接到平推開關K1的輸出插孔K1和發光二極管L1的輸入孔L1上。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾INT_WDG下的工程文件INT_WDG.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、將CPU板上的仿真芯片換成可燒錄的芯片AT89S51/52/53,通過ISP電纜燒錄HEX文件。復位后運行程序,把平推開關K1撥到H側,觀察發光二極管L1的狀態。把平推開關K1撥到L側,比較發光二極管L1的狀態變化。
5、備注:在程序開始處,點亮發光二極管約1秒鐘,在程序正常運行中,發光二極管熄滅,如果在設定的時間內不能喂狗,程序回到開始處運行,重新點亮發光二極管。

八、SPI總線
實驗1  SPI(模擬)實驗-----TLC2543  AD轉換實驗
目的:學習SPI總線通訊編程方法、串行AD應用。
內容:利用SPI總線配置AD轉換芯片,并讀取轉換結果。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:編程3個IO引腳為輸出,一個IO為輸入;3個輸出引腳一個模擬CLK,一個模擬CS,另一個模擬DO,1個輸入引腳模擬DI。根據芯片的技術資料,模擬輸出3個輸出引腳的時序。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、用導線將MCU的IO1--IO5分別連接到AD的AD_CS、AD_CLK、AD_IN、AD_OUT、AD_EOC,用導線將AD_IN1連接到ANOUT.。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾EXT_ADC下的工程文件EXT_ADC.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、上電,運行程序,在程序的注釋處設置斷點,全速運行程序到斷點,調節輸入的模擬量,觀察30H、31H單元中的數的變化

實驗2  SPI(模擬)實驗-----TLV5616  DA轉換實驗
目的:學習SPI總線通訊編程方法、串行DA應用。
內容:利用SPI總線配置DA轉換芯片,并用萬用表測量輸出電壓值。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:編程4個IO引腳為輸出, 4個輸出引腳:一個模擬CLK,一個模擬CS,一個模擬DATA,另一個模擬FS。根據芯片的技術資料,模擬出4個輸出引腳的時序。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、用導線將MCU的IO1--IO4分別連接到DA的DA_CS、DA_CLK、DA_IN、DA_FS,用導線將DA_REF連接到插孔Vref 2.5V.。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾EXT_DAC下的工程文件EXT_DAC.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、上電,全速運行程序,用萬用表觀察插孔DA_OUT的電壓值;再修改程序中31H-30H單元的值,看電壓值的變化。

九、 I2C總線
實驗1   I2C(模擬)實驗-----IC卡(AT24C01)讀寫實驗
目的:學習I2C總線通訊編程方法。
內容:利用I2C總線讀取存儲器IC卡AT24C01)的數據。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:編程2個IO引腳模擬I2C總線,按照AT24C01的操作時序,訪問AT24C01存儲器的內容。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1--IO4分別連接到IC_CARD的SCK、SDA、DET、PWR。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾IIC_CARD下的工程文件IIC_CARD.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、實驗箱上電,按照注釋設置斷點,插入IC卡,全速運行程序到斷點處,觀察30H~36H單元的數據是否與寫入數據一致!


十、綜合實驗
所謂混合總線,是指由3線組成的總線:CS、CLK、IO,典型應用是芯片HD7279,特別分出來單獨實驗。
實驗1   HD7279LED數碼管顯示實驗
目的:學習HD7279的通訊方法。
內容:利用IO向HD7279寫入控制命令和數據。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:配置IO,向HD7279寫入控制命令,控制數碼管的顯示。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1----IO3分別連接到HD7279的7279_CS、7279_CLK、7279_DATA。用導線將HD7279的7279_A、7279_B、7279_C、7279_D、7279_E、7279_F、7279_G、7279_DP分別連接到LED DISP的LED_A、LED_B、LED_C、LED_D、LED_E、LED_F、LED_G、LED_DP;用導線將HD7279的7279_C1、7279_C2、7279_C3、7279_C4分別連接到LED DISP的LED_C1、LED_C2、LED_C3、LED_C4。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾HD7279DISP下的工程文件HD7279DISP.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、全速運行程序,觀察LED數碼管的顯示變化。

















實驗2   HD7279鍵盤實驗
目的:學習HD7279的通訊方法。
內容:利用總線向HD7279寫入控制命令并顯示鍵值。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:配置2個IO輸出作為SPI的CS和CLK,配置1個IO做I2C的LDA。使能外部中斷,并將中斷引腳連接到              HD7279的中斷輸出INT上。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1----IO3、INT0分別連接到HD7279的7279_CS、7279_CLK、7279_DATA、7279_KEY;用導線將HD7279的7279_A、7279_B、7279_C、7279_D、7279_E、7279_F、7279_G、7279_DP分別連接到LED DISP的LED_A、LED_B、LED_C、LED_D、LED_E、LED_F、LED_G、LED_DP;用導線將HD7279的7279_C1、7279_C2、7279_C3、7279_C4分別連接到LED DISP的LED_C1、LED_C2、LED_C3、LED_C4;用導線將HD7279的7279_A、7279_B、7279_C、7279_D、7279_E、7279_F、7279_G、7279_DP分別連接到KEY的KEY7、KEY6、KEY5、KEY4、KEY3、KEY2、KEY1、KEY8;用導線將HD7279的7279_C1連接到KEY的插孔KEY。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾HD7279下的工程文件HD7279.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、上電,運行程序,按鍵,觀察LED顯示的數據是否與鍵盤一一對應。
實驗3  電機轉速實驗
目的:學習外部中斷的應用方法。
內容:對外部中斷計數處理,顯示電機的轉速。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:首先第一步設置單片機的IO為輸入狀態,第二步設置引腳的中斷觸發方式,一般設置為邊沿觸發,第三步,設置外部中斷的優先級,第四步,編寫中斷服務程序,包括中斷入口跳轉等,第五步,設置定時器中斷,中斷時間設為1秒(方法在定時器部分詳細說明)。第六步,設置中斷使能,允許外部引腳觸發中斷。設置死循環,主程序結束,交給中斷服務程序完成計數并顯示。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的INT0連接到DC_MOTOR的SPEED,DC_MOTOR的DRV連接到ANOUT,連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾EXT_INT下的工程文件EXT_INT.Uv2,編譯程序,進入調試狀態。按照程序注釋說明設置斷點,全速運行程序到斷點處,觀察采樣的速度也會相應的變化(觀察寄存器R0的數值)。調節電位器POT1,調整電機轉速,再運行到斷點處,觀察寄存器R0的數值
4、備注: 在電機的同軸轉盤上,安裝有磁體,在轉盤下面由對磁體敏感的霍爾傳感器,隨著轉盤轉動,當磁體正對傳感器時,傳感器的輸出電壓發生變化,單片機利用此電壓變化觸發中斷。單片機在固定時間內累計發生中斷的數值,即電機的轉速。


十一、步進電機實驗
實驗1步進電機正反轉實驗
目的學習步進電機的控制方法。
內容用單片機的IO口控制步進電機正轉。
設備DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程用單片機的IO口模擬產生PWM,使步進電機正轉。
步驟
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1---- IO4分別連接到STEP MOTOR的ORANGE、YELLOW、PINK、BLUE管腳。連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾BuJin4下的工程文件BuJin4.Uv2,編譯程序,進入調試狀態,單步運行程序,觀察IO口的變化。
4、全速運行程序,電機開始正轉,交換ELLOW與BLUE兩根線,電機反轉。















十二、TFT液晶顯示實驗
實驗1TFT液晶顯示彩色條紋實驗
目的:學習TFT液晶顯示的控制方法。
內容:用單片機的IO口控制TFT液晶顯示。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:用單片機的IO口控制TFT液晶顯示字符。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1---- IO8分別連接到TFT LCD的ED0、ED1、ED2、ED2、ED4、ED5、ED6、ED7,MCU的SDA、SCL、PWM0、CADC0、CDAC0分別接CS、R/D、W/R、EA、RST。
3、將液晶屏下面的撥碼開關K33、KT1撥到上端。
4、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾TFT下的工程文件TFT.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
5、全速運行程序(或按下復位鍵),觀察TFT液晶上顯示的內容。













十三、16X16LED點陣顯示漢字實驗
實驗116X16LED點陣顯示漢字實驗
目的:學習16X16LED點陣顯示漢字的控制方法。
內容:用單片機的IO控制74LS138和74LS595驅動16X16LED點陣顯示漢字。
設備:DICE-DS01試驗箱、EXP-89S51/52/53 CPU板。
編程:用單片機的IO口控制74LS138譯碼產生16位行選通信號,74LS595用串轉并的方式傳送16位的數據。
步驟:
1、將CPU板正確安放在CPU接口插座上,跳線帽JP2短接在上側。
2、連線:用導線將MCU的IO1---IO4分別連接到16*16LED的A0、A1、A2、A3;MCU的SDA、SCL、PWM0分別連接到16*16LED的SHCP、STCP、DS,連接好仿真器。
3、實驗箱上電,在PC機上打開Keil C環境,打開實驗程序文件夾LED下的工程文件LED.Uv2,編譯程序,上電,進入調試狀態,單步運行程序觀察每條語句執行后相關寄存器的變化。
4、全速運行程序,觀察16X16LED點陣上顯示的漢字。














附錄芯片管腳與實驗箱上面MCU模塊部分的二號孔對應說明:
管腳說明見下表:
注意:NC表示該管腳沒有跟芯片連接。
芯片管腳與實驗箱MCU部分二號孔的對應關系表
二號空名稱
51芯片管腳
備注
IO1
P0.0

IO2
P0.1

IO3
P0.2

IO4
P0.3

IO5
P0.4

IO6
P0.5

IO7
P0.6

IO8
P0.7

IO9
NC

IO10
NC

IO11
NC

IO12
NC

CAP0
P1.0

COMP+
NC

COMP-
NC

COMPOUT
NC

SDA
P1.1

SCL
P1.2

PWM0
P1.3

PWM1
NC

PWM2
NC

PWM3
NC

T0
P3.4

CADC0
P1.4

CDAC0
P1.5

CANRX
NC

CANTX
NC

SPICLK
P1.6

SPISTE
P1.7

SOMI
NC

SIMO
NC

TXD
P3.1

RXD
P3.0
板子上的跳線帽JP2短接在下側
INT0
P3.2

INT1
P3.3

T1
P3.5

RST
RST
















第4章  基于Altera CPLD系統設計實驗

一、EXP-EPM3128 CPU板卡上的CPLD芯片引腳與實驗箱上標示的對應表:

標示
引腳
標示
引腳
標示
引腳
標示
引腳
IO1
132
IO9
15
IO17
109
IO24
53
IO2
134
IO10
25
IO18
113
IO25
55
IO3
137
IO11
83
IO19
118
IO26
IO4
143
IO12
88
CLK
117
IO27
125
IO5
6
IO13
98
IO20
127
IO28
128
IO6
8
IO14
102
IO21
IO29
70
IO7
9
IO15
101
IO22
141
IO30
72
IO8
11
IO16
106
IO23
41
IO31
80

二、說明及注意事項:

每次實驗完成后,請一定將芯片內下載的實驗程序擦除!以防上次定義的IO口狀態和下次將要使用的不同,這樣在接線上電后(還沒有下載下次實驗程序前)會造成芯片的IO燒壞。擦除方法如下圖4-1所示:(勾選Erase












4-1 CPLD片內程序的擦除方法

實驗一  簡單門電路實驗

一、實驗目的
1、掌握QuartusII 6.0集成開發環境的使用及CPLD的程序下載方法;
2、學會門電路的設計方法。
二、實驗內容
使用CPLD來實現一個簡單的門電路(圖形輸入法、VHDL語言輸入法)。
三、實驗設備
1、DICE-DS01教學實驗箱,EXP-EPM3128板卡,PentiumII以上的PC機,USB Blaster(Altera)仿真器;
2、PC操作系統WIN98或WIN2000或WINXP,QuartusII 6.0集成開發環境,USB Blaster(Altera)仿真調試驅動程序。
四、實驗步驟
1、編程:采用圖形輸入法或VHDL語言輸入法兩種方式編寫。即:創建工程后,一種方法是:選擇圖形編輯器,添加一個邏輯門(例如“與門”),再添加引腳并命名;第二種方法,編寫VHDL語言實現“與門”,定義端口并分配到引腳。
2、檢查無誤后,綜合、編譯,保證沒有錯誤存在。打開圖形仿真界面,將3個引腳全部添加進去,設置2個輸入引腳的波形信號,在設定輸入的預設波形時,要保證各種組合狀態能被仿真到,點擊仿真按鈕,開始仿真,完成后,彈出仿真結果波形,驗證輸出波形與輸入波形的關系是否符合設計功能。
3、將CPU板正確安放在CPU接口插座上。
4、連線:將EDA/CPLD/FPGA側的IO1和IO2分別連接到平推開關K1和K2的輸出K1和K2上.,將IO3連接到發光二極管L1的輸入L1上。連接好編程器。
5、試驗箱上電,在PC機上打開Quartus II 6.0環境,進入文件夾Gate,打開工程Gate.qpf,編譯程序,創建仿真圖形文件,將端口加進去,設置可能出現的輸入的波形,進行圖形仿真,確認邏輯的正確;進入下載界面,下載程序到芯片上。或者進入文件夾Gate1打開工程Gate1.qpf編譯程序,進入下載界面,下載程序到芯片上。
6、驗證:改變2個撥碼開關的電平狀態組合,觀察發光二極管的亮滅狀態是否與設計的“與門”邏輯功能相符。
7、將芯片內下載的實驗程序擦除。

實驗二  地址譯碼電路實驗

一、實驗目的
1、掌握QuartusII 6.0集成開發環境的使用及CPLD的程序下載方法;
2、學習地址譯碼電路的設計方法。
二、實驗內容
使用CPLD來實現一個組合邏輯“3-8譯碼電路”。
三、實驗設備
1、DICE-DS01教學實驗箱,EXP-EPM3128板卡,PentiumII以上的PC機,USB Blaster(Altera)仿真器;
2、PC操作系統WIN98或WIN2000或WINXP,QuartusII 6.0集成開發環境,USB Blaster(Altera)仿真調試驅動程序。
四、實驗步驟
1、編程:創建工程,根據要求寫出真值表,根據真值表編寫VHDL語言,定義端口并分配引腳。
2、檢查無誤后,綜合、編譯,保證沒有錯誤存在。打開圖形仿真界面,將引腳全部添加進去,設置輸入引腳的波形信號,在設定輸入的預設波形時,要保證各種組合狀態能被仿真到,點擊仿真按鈕,開始仿真,完成后,彈出仿真結果波形,驗證輸出波形與輸入波形的關系是否符合設計功能。
3、將CPU板正確安放在CPU接口插座上,將板上的跳帽J4跳至左側(短接1-2腳)。
4、連線:將EDA/CPLD/FPGA側的IO1--IO4分別連接到平推開關K1--K4的輸出K1--K4上,將IO10---IO17連接到發光二極管L1---L8的輸入L1---L8上。連接好編程器。
5、試驗箱上電,在PC機上打開Quartus II環境,進入文件夾Decode,打開工程Decode.qpf編譯程序,創建仿真圖形文件,將端口加進去,設置輸入可能出現的波形,進行圖形仿真,確認邏輯正確,進入下載界面,下載程序到芯片上。
6、驗證:將撥碼開關K4撥到H側,改變K1—K3的狀態,觀察發光二極管的亮滅情況,再將撥碼開關K4撥到L側,改變K1—K3的狀態,觀察發光二極管的亮滅情況是否與“3-8譯碼器”邏輯功能相符。
7、將芯片內下載的實驗程序擦除。


實驗三  分頻器電路實驗

一、實驗目的
1、掌握QuartusII 6.0集成開發環境的使用及CPLD的程序下載方法;
2、學習分頻器的設計方法。
二、實驗內容
使用CPLD來實現秒時鐘電路。
三、實驗設備
1、DICE-DS01教學實驗箱,EXP-EPM3128板卡,PentiumII以上的PC機,USB Blaster(Altera)仿真器、示波器;
2、PC操作系統WIN98或WIN2000或WINXP,QuartusII 6.0集成開發環境,USB Blaster(Altera)仿真調試驅動程序。
四、實驗步驟
1、編程:用示波器測量輸入信號的頻率,此頻率值即分頻系數,創建工程,編寫VHDL語言,定義端口并分配引腳。
2、檢查無誤后,綜合、編譯,保證沒有錯誤存在。打開圖形仿真界面,將引腳全部添加進去,設置輸入引腳的波形信號,點擊仿真按鈕,開始仿真,完成后,彈出仿真結果波形,驗證輸出波形與輸入波形的關系是否符合設計功能。
3、將CPU板正確安放在CPU接口插座上,將EPM3128板上的跳線J9短接右側(在10MHz側,短接2-3腳)。
4、連線:將EDA/CPLD/FPGA側的IO10---IO17連接到發光二極管L1---L8的輸入L1---L8上。連接好仿真器。
5、試驗箱上電,在PC機上打開Quartus II環境,進入文件夾FreqDivider,打開工程FreqDivider.qpf編譯程序,創建仿真圖形文件,將端口加進去,設置輸入可能出現的波形,進行圖形仿真,確認邏輯正確,進入下載界面,下載程序到芯片上。
6、驗證:用示波器觀察輸入時鐘信號(10MHz的時鐘)和輸出信號(8路中的每一路)的頻率關系是否與設計要求相符。
8、將芯片內下載的實驗程序擦除。
6、說明:輸入時鐘也可從外部給定,原始時鐘信號的要求:TTL 電平方波,最高電平(峰值):大于3.5V,小于5V,最低電平(谷值):大于0V,小于0.8V。

實驗四  8位鎖存器電路實驗

一、實驗目的
1、掌握QuartusII 6.0集成開發環境的使用及CPLD的程序下載方法;
2、學習鎖存器的設計方法。
二、實驗內容
使用CPLD來實現數據鎖存電路。
三、實驗設備
1、DICE-DS01教學實驗箱,EXP-EPM3128板卡,PentiumII以上的PC機,USB Blaster(Altera)仿真器;
2、PC操作系統WIN98或WIN2000或WINXP,QuartusII 6.0集成開發環境,USB Blaster(Altera)仿真調試驅動程序。
四、實驗步驟
1、編程:創建工程,編寫VHDL語言,定義端口并分配引腳。
2、檢查無誤后,綜合、編譯,保證沒有錯誤存在。打開圖形仿真界面,將引腳全部添加進去,設置輸入引腳的波形信號,點擊仿真按鈕,開始仿真,完成后,彈出仿真結果波形,驗證輸出波形與輸入波形的關系是否符合設計功能。
3、將CPU板正確安放在CPU接口插座上,將板上的跳帽J4、J6、J8都跳至左側(短接1-2腳)。
4、連線:將EDA/CPLD/FPGA側的IO9連接到單脈沖開關輸出孔P-上;-將IO10---IO17連接到發光二極管L1---L8的輸入L1---L8上;將IO1---IO8連接到平推開關K1---K8的輸入K1---K8上。連接好仿真器。
5、試驗箱上電,在PC機上打開Quartus II環境,進入文件夾Lock,打開工程Lock.qpf編譯程序,創建仿真圖形文件,將端口加進去,設置輸入可能出現的波形,進行圖形仿真,確認邏輯正確,進入下載界面,下載程序到芯片上。
6、驗證:比較按下單脈沖開關Pulse和不按下單脈沖開關Pulse兩種情況下,改變撥碼開關的變化對發光二極管亮滅的影響,再結合鎖存器電路的真值表看是否正確。
7、將芯片內下載的實驗程序擦除。


實驗五  4位共陰極數碼管動態顯示實驗

一、實驗目的
1、掌握QuartusII 6.0集成開發環境的使用及CPLD的程序下載方法;
2、學習LED數碼管動態顯示的設計方法。
二、實驗內容
使用CPLD來實現LED數碼管動態顯示。
三、實驗設備
1、DICE-DS01教學實驗箱,EXP-EPM3128板卡,PentiumII以上的PC機,USB Blaster(Altera)仿真器;
2、PC操作系統WIN98或WIN2000或WINXP,QuartusII 6.0集成開發環境,USB Blaster(Altera)仿真調試驅動程序。
四、實驗步驟
1、編程:創建工程,編寫VHDL語言,定義端口并分配引腳。
2、檢查無誤后,綜合、編譯,保證沒有錯誤存在。打開圖形仿真界面,將引腳全部添加進去,設置輸入引腳的波形信號,點擊仿真按鈕,開始仿真,完成后,彈出仿真結果波形,驗證輸出波形與輸入波形的關系是否符合設計功能。
3、將CPU板正確安放在CPU接口插座上,將板上的跳帽J4跳至左側(短接1-2腳)。
4、連線:將EDA/CPLD/FPGA側的IO1--IO4分別連接到數碼管的輸入插孔LED_C1---LED_C4上,將IO10---IO17連接到數碼管的輸入插孔LED_A、LED_B、LED_C、LED_D,LED_E、LED_F、LED_G、LED_P上。連接好仿真器。
5、試驗箱上電,在PC機上打開Quartus II環境,進入文件夾DynamicDisp,打開工程DynamicDisp.qpf,編譯程序,創建仿真圖形文件,將端口加進去,設置輸入可能出現的波形,進行圖形仿真,確認邏輯正確,進入下載界面,下載程序到芯片上。
6、說明:將EPM3128板上的跳線J9短接右側(在10MHz側,短接2-3腳)。
7、驗證:觀察數碼管上的顯示,結合程序分析其正確性。
8、將芯片內下載的實驗程序擦除。



附錄A  QuartusII 6.0安裝方法

1、在1號盤中打開install.exe,如右圖圖標所示:

2、在跳出的框中點擊第一個進行安裝:

3、按下圖所示選擇安裝:(其他未選的是外端仿真、編譯類的軟件)一直點擊NEXT:

4、進入安裝環節(慢慢等到選擇安裝2號盤的提示信息):
5、當安裝過程中跳出如下圖所示提示框時,點擊按鈕進行選擇安裝2號盤(4步驟中提及的):
6、選擇第二盤的文件夾然后確定再點擊開始安裝2號盤:
7、看見了完成的曙光了,點擊FINISH:

8、接下來點擊EXIT,關閉安裝窗口:



安裝完后,開始裝補丁以及破解部分:
1、點擊打開2號盤的文件夾,點擊安裝補。

2、修改license.dat,(也在文件夾中),將所有的XXXXXXXXXXXX替換為你的網卡MAC,并拷貝到Quartus II 6.0安裝目錄(默認為c:\altera)。


獲取網卡MAC方法
點擊開始——>運行——>輸入CMD——>在DOS窗口輸入ipconfig /all>Enter如下所示得到就是你的MAC地址(注意替換時將連接符“—”去掉):

3、確定將新換的license.dat放好后,運行Quartus_II_6.0+SP1_B202_dll破解器(也在文件夾中)。點擊瀏覽指定sys_cpt.dll的路徑C:\altera\quartus60\win:
點擊應用,出現下圖的話表示破解成功,點擊確定:

4、運行Quartus II出現下圖框提示,點擊然后OK :      
出現如下框圖找到你放的license.dat完成破解安裝接下來就能用了


















附錄B  QuartusII 6.0使用說明書

1、啟動Quartus II,方法有兩種,用戶可以任選其一。

    1)開始→所有程序|Alteta → Quartus II 6.0 → Quartus II 6.0,如下圖1所示。
    2)單擊桌面的快捷方式,也可以啟動,如下圖2所示。
圖 1
圖 2

2、新建工作項目

圖 3 Quartus II 6.0 的工作界面
    1)打開新建項目指南,File→New Project WiZard…;如下圖4所示。
圖 4
2)彈出以下對話框,點擊Next>即可,如下圖5所示。
   注:如果勾選了Don’t show me this introduction again 前面的復選框,則以后不會出現該對話框,而直接進入圖6所示的對話框。
圖5
3)設置項目的存放目錄、名稱和頂層設計名稱。如圖6所示設置后,點擊Next>即可進入下一個選項的設置;若不需要進行其他設置,可以點擊Finish結果設置(不推薦)。
圖 6
4)添加源文件和用戶庫,若沒源文件和用戶庫可直接點擊Next>進入下一個項目的設置。
圖 7
    5)選擇芯片型號,此步很重要,要根據CPLD的具體的型號來選擇。本CPLD系統開發板選用的Altera公司的MAX3000A系列的EMP3128ATC144-10的芯片,如圖8設置即可,設置完成后。點擊Next>進入下一組選項的設置。
圖 8
    6)選擇EDA工具,若不需要,則可點擊Next>跳過,如下圖9所示。
圖9
    7)核實項目設置,如圖10所示,列出了您之前所設置的相關信息,若無誤點擊Finish即可生成一個新的項。
圖 10

3、新建一個VHDL源文件。

    1)如圖11所示,點擊 File→New…后彈出如圖12所示的源文件類型選項框,選擇VHDL  File 然后點擊OK即可;騿螕艄ぞ邫谏系膱D標
圖 11
圖 12
    2)保存文件,點擊File→Save,如圖13所示。然后如圖14所示的對話框,點擊“保存(S)”即可。或單擊工具欄上的圖標。
圖 13
圖14

4VHDL語言輸入與編譯

1)如圖15所示,在VHDL文本編輯區輸入下圖所示的文本(一個5輸入的與門)。
   注:①要采用英文半角符號。
②文件的實體名要與文件名一致。
③’0’(零)與O(歐)的的區別。
例程:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY test IS
PORT( a,b,c,d,e:IN STD_LOGIC;
           q:OUT STD_LOGIC
);
END test;

ARCHITECTURE CHENG OF test IS
BEGIN
    PROCESS(a,b,c,d,e)
        VARIABLE state:std_logic;
        VARIABLE delay:time;
    BEGIN
        state:=a and b and c and d and e;
        IF state ='1' THEN
            delay:=4.5 ns;
        ELSIF state ='0' THEN
            delay:=3ns;
        ELSE
            delay:=4ns;
        END IF;
        q<=state AFTER delay;
    END PROCESS;
END CHENG;
圖 15
    2)全編譯文件,如圖16所示,點擊Processing → Start Compilation即可;騿螕艄ぞ邫谏系膱D標。若編譯通過則如圖17所示。否則編譯不能通過,可根據信息提示的信息修改輸入,再編譯,直到成功為止。
圖16
圖 17
    3)配置IO管腳。點擊Assignments→Pins 如圖18所示。然后彈出如圖19所示的IO管腳配置對話框;騿螕艄ぞ邫谏系膱D標
圖 18
根據本CPLD系統開發的原理圖所示,選用撥動開關做為與門的輸入,LED作為輸出。則對5輸入與門的管腳分配如下:a~e:PIN_?~PIN_?,q:PIN_?。如圖19所示。
圖19
設置完畢后,進行全編譯如圖16所示,若能通過,則可以進入下載階段,否則重新設置IO管腳,再編譯,直至成功為止。

5、文件下載

在文件下載之要確保下載線與計算機和CPLD開發板連接好,開發板上電,且電源指示的全亮。
在文件編譯成功的前提下,進行如下操作:
1)點擊Tools→Progammer。如圖20所示;騿螕艄ぞ邫谏系膱D標。然后彈出如圖21所示的下載對話框。
圖 20
    2)點擊Hardwar Setup彈出如圖21所示的設置對話框,選擇USB-Blaster,設完后點colse關閉對話框即可。
圖 21
    3)下載,選中要下載的文件,勾選這Program/ConfigueVerify下的復選框后,如圖22所示,點擊Stat即可。
圖22
    若下載不能成功,且出現如圖23所示的錯誤提示信息,則可能是下載線與CPLD系統板沒有接好,或者是電源沒有接好,在排除錯誤后,再點擊Start重新下載即可。
圖23


完整的Word格式文檔51黑下載地址:
DICE-DS01配51開發板的實驗指導書.doc (4.61 MB, 下載次數: 8)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:426726 發表于 2018-11-15 09:14 來自觸屏版 | 只看該作者
資料挺全的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表