內容簡介:
本書以SN-F2407M實驗發展系統配合SN-DSP2407P彈性組構介面,以簡易的C語言和快速的組合語言編寫出20個以上的範例實驗及多個專題製作,主要內容如下:第一章介紹機電控制的結構及發展系統、第二章則介紹了機電控制的記憶體配置結構;第三章到第四章介紹CPU與機電控制結構及狀態模組;第五章到第十章則說明在機電控制底下的各種不同模組型態;第十一章到第十四章則是專題製作實驗,讓讀者藉由實作的過程中,了解組合語言的應用。
本書適合科大電機、電子工程之「DSP晶片入門實務」課程使用。
--------------------------------------------------------------------------------
目錄:
目 錄
第1章 機電控制TMS320F/C2407結構及發
展系統 1-1
1-1 TMS320F2407特性簡介
1-2
1-2 TMS320F2407架構 1-3
1-3 SN-DSP2407M主CPU發展系統
1-14
1-3-1 SN-F2407M記憶體配置架構 1-18
1-3-2 SNF2407M介面訊號配置
1-22
1-4 SN-DSP2407-MIO週邊控制發展系統 1-30
1-5 SN-DSP2407-PLD擴充週邊控制發展系統
1-34
1-6 SN-CPLD8/10介面電路 1-35
1-6-1 EPF8282ALC84-4介面電路
1-35
1-6-2 EPF10K10TC144及ACX1K100QC208介面電路 1-47
1-7 SN-DSP2407S 發展系統實體結構
1-53
第2章 TMS320F/C2407的記憶體配置結構 2-1
2-1 TMS320LF/C2407的記憶體和映射暫存器及I/O的
配置
2-2
2-2 TMS320LF/C2407的外部記憶體及I/O的讀寫時序
設定 2-14
第3章 2407的CPU結構和定址模態及指令 3-1
3-1 LF2407的CPU架構 3-2
3-2 CPU的運算處理架構
3-5
3-2-1 CPU的乘法器運算處理架構 3-7
3-2-2 CALU的多工輸入移位倍率器架構
3-9
3-2-3 中央算術邏輯單元CALU的架構 3-11
3-2-4 輔助暫存器的索引算術運作單元ARAU架構
3-15
3-3 記憶體的定址模態 3-18
3-3-1 立即定址模式 3-19
3-3-2 直接定址模式
3-19
3-3-3 間接定址模式 3-20
3-4 對應程式記憶體PM及I/O記憶體IM的讀寫指令 3-23
3-4-1 程式記憶體的讀寫
3-23
3-4-2 I/O記憶體的讀寫 3-24
3-5 對應程式記憶體PM及資料記憶體DM的交互讀寫指令
3-24
3-6 程式記憶體PM,資料記憶體DM及I/O記憶體讀寫及ALU運算指令 3-26
第4章 TMS320F/C2407的程式分岔及控制
4-1
4-1 程式位址產生器 4-2
4-2 指令的管線結運作(Pipeline Operation)
4-6
4-3 分岔指令的分岔,呼叫副程式及返回主程式運作 4-7
4-4 重複單一指令的執行運作 4-14
4-5 中斷運作
4-15
4-6 週邊中斷暫存器 4-21
4-7 系統重設 4-25
4-8 非法的定址運作檢測 4-26
4-9 外部中斷控制暫存器
4-26
4-9-1 外部中斷1控制暫存器(XINT1CR) 4-26
4-9-2 外部中斷2控制暫存器(XINT2CR)
4-28
4-10 中斷優先序及其向量表格 4-29
4-11 系統結構化控制及狀態暫存器(SCSR1,SCSR2)
4-34
4-12 看門狗計時器(Watchdog Timer) 4-39
4-12-1 看門狗計時器模組的特性
4-40
4-12-2 看門狗計時器WDCNTR 4-41
4-12-3 看門狗重設鎖控暫存器WDKEY
4-42
4-12-4 看門狗計時器的控制暫存器WDCR 4-42
第5章 LF2407的CC/CCS運作及基本I/O
測試實驗
5-1
5-1 CC簡介 5-2
5-2 CC的安裝設定 5-2
5-3 LF2407系列的CCS/CC程式編輯和組譯操作
5-5
5-4 一般I/O的輸出入應用 5-9
5-5 基本週邊聯結測試及實驗 5-14
第6章 事件處理模組
6-1
6-1 事件處理模組概要 6-2
6-2 通用計時器GPT 6-10
6-3 通用計時器的比較器運作(Compare)
6-19
6-3-1 TxPWM的輸出控制運作 6-20
6-3-2 TxPWM的輸出控制邏輯電路 6-23
6-4 完全比較器單元
6-26
6-4-1 比較單元暫存器 6-28
6-5 PWM與比較器單元的結合電路 6-32
6-5-1 事件處理的PWM產生能力
6-33
6-5-2 可規劃的死帶單元 6-34
6-6 比較器單元的PWM波形產生及PWM電路
6-38
6-6-1 事件管理的PWM輸出產生 6-39
6-6-2 PWM輸出產生之暫存器設定 6-40
6-6-3 非對稱PWM波形的產生
6-40
6-6-4 對稱PWM波形的產生 6-41
6-7 向量空間PWM 6-51
6-7-1 三相電力換流器
6-52
6-7-2 以事件處理模組之空間向量PWM波形產生 6-54
6-8 捕捉(Capture)單元
6-62
6-8-1 捕抓單元的特性 6-63
6-8-2 捕抓單元的運作 6-65
6-8-3 捕抓單元之暫存器
6-66
6-8-4 捕抓單元的FIFO堆疊暫存器 6-70
6-8-5 捕抓中斷 6-71
6-8-6 捕抓應用範例程式
6-72
6-9 四象限編碼脈衝(Quadrature Encoder Pulse QEP)電路 6-76
6-9-1 QEP接腳端
6-76
6-9-2 QEP電路的計數時基 6-76
6-9-3 QEP解碼電路 6-77
6-9-4 QEP的通用計數器運作
6-78
6-9-5 通用計時器在QEP運作時的中斷及相關比較輸出 6-79
6-9-6 QEP電路中的暫存器設定
6-79
6-9-7 QEP電路應用範例說明 6-79
6-9-8 QEP電路應用範例說明 6-83
6-10 事件處理模組的中斷
6-98
6-10-1 EV中斷要求及其服務 6-99
6-10-2 EVA中斷相關暫存器 6-101
6-10-3 EVB中斷相關暫存器
6-108
6-10-4 捕抓器及事件中斷的程式應用範例 6-115
6-11 事件處理週邊的簡易C語言程式應用
6-120
6-11 事件處理的使用暫存器及其各位元名稱表 6-128
第7章 類比/數位轉換ADC模組 7-1
7-1 ADC模組特性
7-2
7-2 ADC轉換概述 7-4
7-2-1 自動輪序:運作原理 7-4
7-2-2 基本運作
7-7
7-2-3 輪序器以多重的“時序觸發”作“啟動/停止”運作 7-8
7-2-4 輸入觸發說明
7-10
7-2-5 在輪序期間的中斷運作 7-11
7-3 ADC模組的時脈預除器 7-14
7-4 ADC轉換值的校準
7-15
7-5 ADC轉換的自我測試 7-16
7-6 暫存器的位元功能描述 7-16
7-6-1 ADC控制暫存器1
7-16
7-6-2 ADC控制暫存器2 7-21
7-6-3 最大轉換通道暫存器
7-26
7-6-4 自動輪序狀態暫存器(AUTO_SEQ_SR) 7-27
7-6-5 ADC輸入通道選擇輪序控制暫存器(CHSELQn)
7-28
7-6-6 ADC轉換結果值的緩衝暫存器(對應於雙輪序模式) 7-29
7-7 ADC轉換時脈週期
7-29
7-8 ADC轉換模組的程式應用範例 7-31
7-9 ADC模組週邊各控制及旗號暫存器名稱及其位元表
7-40
第8章 串列通訊介面SCI模組 8-1
8-1 與C240的SCI介面差別 8-2
8-1-1 SCI物理層的描述
8-2
8-1-2 SCI的架構 8-3
8-1-3 SCI模組暫存器 8-5
8-1-4 多處理器及非同步通訊模式
8-6
8-2 SCI可規劃的資料格式 8-7
8-3 SCI多處理器通訊 8-8
8-3-1 閒置線多處理器模式
8-10
8-3-2 定址位元的多處理器模式 8-12
8-4 SCI通訊格式 8-14
8-4-1 通訊模式的接收訊號
8-15
8-4-2 通訊模式的傳出訊號 8-16
8-5 SCI埠的中斷 8-17
8-5-1 SCI包德率計算
8-18
8-6 SCI模組暫存器 8-19
8-6-1 SCI通訊控制(Communication Control)暫存器SCICCR
8-20
8-6-2 SCI控制(ConTroL)暫存器1 SCICTL1 8-22
8-6-3 SCI的包德率選擇設定暫存器
(SCIHBAUD/SCILBAUD) 8-25
8-6-4 SCI控制(ConTroL)暫存器2SCICTL2
8-27
8-6-5 SCI接收器的狀態暫存器SCIRXST 8-28
8-6-6 接收器的資料緩衝暫存器
8-31
8-6-7 SCITXBUF傳出資料緩衝暫存器 8-32
8-6-8 SCI的中斷優先序控制SCIPRI暫存器
8-33
8-7 SCI介面的應用程式範例 8-34
8-7-1 SCI程式實驗範例 8-34
8-8 SCI週邊各暫存器及對應位元名稱表
8-57
第9章 串列同步通訊介面SPI模組 9-1
9-1 SPI物性的描述 9-2
9-2 SPI控制暫存器
9-4
9-3 SPI的運作 9-5
9-3-1 SPI運作引言 9-6
9-3-2 SPI主控/次控連結 9-7
9-4 SPI的中斷
9-8
9-4-1 SPI的中斷致能位元SPI_INT_ENA(SPICTL.0)
9-9
9-4-2 SPI的中斷旗號位元SPI_INT_FLAGE (SPISTS.6)
9-9
9-4-3 SPI的接收溢位中斷致能位元OVERRUN_INT_ENA
(SPICTL.4)
9-10
9-4-4 SPI接收溢位中斷旗號位元 RECEIVER_OVERRUN (SPISTS.7)
9-10
9-4-5 SPI中斷優先序設定位元SPI_PRIORITY (SPIIPRI.6) 9-10
9-4-6 SPI的資料格式
9-11
9-4-7 SPI的包德率及時脈結構 9-11
9-4-8 SPI時脈結構 9-12
9-4-9 SPI處於重設時的啟動
9-14
9-4-10 適確的使用SPI的軟體重設來啟動SPI 9-15
9-4-11 資料傳輸例 9-15
9-5 SPI控制暫存器
9-17
9-5-1 SPI結構化控制暫存器(SPICCR) 9-18
9-5-2 SPI運作控制暫存器(SPICTL)
9-20
9-5-3 SPI運作狀態暫存器(SPISTS) 9-22
9-5-4 SPI包德率暫存器(SPIBRR)
9-24
9-5-5 SPI模擬緩衝暫存器(SPIRXEMU) 9-25
9-5-6 SPI串列接收緩衝暫存器(SPIRXBUF)
9-26
9-5-7 SPI串列傳出緩衝暫存器(SPITXBUF) 9-26
9-5-8 SPI串列資料暫存器(SPIDAT)
9-27
9-5-9 SPI中斷優先序控制暫存器(SPIPRI) 9-28
9-6 SPI的運作時序波形例
9-29
9-7 SPI的組合語言軟體應用例 9-32
9-7-1 SPI的組合語言編寫對應資料作SPI傳輸
9-38
9-8 SPI的C語言軟體應用例 9-48
9-9 SPI週邊各暫存器及對應位元名稱表 9-70
第10章 控制區域網路介面CAN模組 10-1
10-1 簡 介 10-2
10-2 CAN模組的概觀
10-4
10-2-1 CAN模組的協定概觀 10-4
10-2-2 CAN模組傳輸格式 10-5
10-2-3 CAN控制器的結構
10-7
10-3 CAN郵遞箱的佈局 10-13
10-3-1 CAN訊息緩衝器 10-16
10-3-2 寫入到接收郵遞箱RAM
10-16
10-3-3 傳送郵遞箱(Transmit Mailbox) 10-17
10-3-4 接收郵遞箱(Receive Mailbox)
10-17
10-3-5 遙控框(Remote Frame)的處置 10-18
10-3-6 接收濾除器(Accepctance Filter)
10-20
10-4 CAN控制暫存器(CAN Control Register) 10-22
10-4-1 郵遞箱方向及致能暫存器(Mailbox
Direction/Enable
Register) 10-23
10-4-2 傳送控制暫存器(Transmit Control Register
TCR) 10-24
10-4-3 接收控制暫存器(Receive Control Register RCR)
10-26
10-4-4 主控制暫存器(MCR:Master Control Register) 用來控制訊息的接收
10-29
10-4-5 位元傳輸率的設定暫存器(BCRn:Bit Configuration Registers)
10-32