SlideShare una empresa de Scribd logo
1 de 95
Descargar para leer sin conexión
第三章 TI MSP430 平台介紹
物聯網電子系統平台
物聯網電子系統平台
Outline
開發版硬體規格
 位定義腳
數位輸出實驗教學 (Digital Output)
數位輸入實驗教學 (Digital Input)
類比輸入實驗教學 (Analog Input)
脈衝 度調變寬 實驗教學 (PWM)
序列通訊界面實驗教學 (SPI)
UART 實驗教學
CC2500 通訊模組實驗教學
2
物聯網電子系統平台
開發版硬體規格
3
物聯網電子系統平台
開發版硬體規格
MSP430-F5438 硬體規格介紹 :
The Texas Instruments MSP430 family of ultralow-power
microcontrollers
16-Bit RISC Architecture
Flexible Power Management System
Unified Clock System
16-Bit Timer
Up to Four Universal Serial Communication Interfaces
12-Bit Analog-to-Digital (A/D) Converter
4
物聯網電子系統平台
開發版硬體規格
CC2500 硬體規格介紹 :
High sensitivity (–104 dBm at 2.4 kBaud, 1% packet error rate)
Frequency range: 2400 – 2483.5 MHz
Programmable data rate from 1.2 to 500 kBaud
64-byte transmit/receive
SPI interface
Output power up to +1 dBm
5
物聯網電子系統平台
位定義腳
6
物聯網電子系統平台
位定義腳
7
物聯網電子系統平台
數位輸出實驗教學
實驗目的
可利用 UI 介面藉由通信系統來要求 MSP430 做高、低電位輸出
的信號控制。對於直流馬達、 LED 等單純高低電位控制等設備
皆須以此法操縱
硬體設備
MSP430F5438
LED*1
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
原理簡介
設定 GPIO 訊號傳輸方向為 OUTPUT ,並且設定輸出訊號為高
電位 (HIGH) ,此為達到數位訊號輸出之目的。
8
物聯網電子系統平台
數位輸出實驗教學
實驗 驟步 .
第一步 : 找出該功能對應之硬體 (LED), 與其在開發版上所在位
址 ( 位腳 ) 。本實驗以 P1.0(Port1 第一個 pin 腳 ) 為連接 LED 的
位。腳
第二步 : 根據該 位功能腳 , 決定該 位之傳輸方向。腳
 1. 設定輸入 : 對 PxDIR 暫存器對應之 BIT 寫 0 。
 2. 設定輸出 : 對 PxDIR 暫存器對應之 BIT 寫 1 。
第三步 : 輸出訊號,若是數位 I/O 則透過 PXOUT 來輸出訊號。
9
物聯網電子系統平台
數位輸出實驗教學
程式範例 :
程式說明 :
P1SEL=0x00 // 設定 Port1 所有 pin 的功能為腳 GPIO
P1DIR=0x01 // 設定 Port1 第 1 隻 pin 腳 (pert1 pin0) 的 I/O 方向
為 OUTPUT
P1OUT=0x01 //Port1.0 OUTPUT HIGH 點亮接在 Port1.0 上的
LED 燈
10
物聯網電子系統平台
數位輸出實驗教學
問題與討論
設定 PxSEL 的目的是為了選擇相對應之 pin 的功能,有些 pin
除了當 GPIO 使用外還可以當作 PWM 或是 UART 、 SPI 等特
定功能,例如 P1SEL=0x02(P1SEL= b0000 0010) 就是將 port1 的
pin1 設定為 PWM 的輸出功能。
數位訊號輸出是控制周邊設備最基本的操作方式,凡事要對其
他設備做控制一定要給它們控制的訊號,而此控制訊號對
MSP430F5438 微處理器來說就是數位訊號輸出了,後面的章節
會介紹到 PWM 的使用, PWM 就是數位訊號輸出的一種應用
,可以用來控制馬達轉速、馬達轉向、 LED 亮暗程度等等。
11
物聯網電子系統平台
數位輸出實驗教學
參考資料
MSP430F5438 datasheet
MSP430F5438 user guide
MSP430F5438 schematic
12
物聯網電子系統平台
數位輸入實驗教學
實驗目的
此實驗目的為讓使用者學習如何使用 MSP430 上的 KEYPAD 以
及中斷,接收數位輸入訊號並產生中斷做相對應的中斷服務
(Interrupt Service Routine , ISR) 。在本系統架構中可以將相關的
數位輸入讀入並且藉由通信回饋給與使用者。
硬體設備
MSP430F5438
LED*1
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
13
物聯網電子系統平台
數位輸入實驗教學
原理簡介
當使用者按下 KEYPAD 上的按鍵以後會產生數位輸入訊號,當
此訊號產生就會觸發中斷,此時程式會依照中斷向量來判別要
進入 一個中斷服務哪 (ISR) 並執行其內容。
實驗 驟步
第一步 : 找到 KEYPAD 對應之 pin 。 
第二步 : 設定其功能為 GPIO 、輸出入方向為 INPUT 。
第三步 : 設定 KEYPAD 中斷。
第四部 : 撰寫相對應之中斷服務內容 (ISR) 。
14
物聯網電子系統平台
數位輸入實驗教學
數位訊號輸入 :
MSP430 有提供數位訊號輸入、輸出控制暫存器,上一章節提
到 PxOUT 為數位訊號輸出,而 PxIN 就是數位訊號輸入,但
PxIN 是唯讀的,也就是說只能看 PxIN 暫存器的內容不能對它
做改寫的動作。在本章節中當按下 PEYPAD 時會產生一個訊號
到 P2IN 暫存器中,所以我們只要讀取 P2IN 的內容就可以知道
是否有按下 PEYPAD ,若有按下則產生中斷。
15
物聯網電子系統平台
數位輸入實驗教學
中斷產生執行流程 :
當一個事件發生時需要 CPU 暫停目前的工作就會產生中斷,產
生中斷後 CPU 就會去 詢中斷向量看是 一個事件產生中斷,查 哪
然後再去相對應的 ISR 職執行其內容。
16
物聯網電子系統平台
數位輸入實驗教學
中斷向量表 :
系統程式之中的的表格,每一個 entry 紀錄一個 address ,這個
位址指到一段程式 ( 或說一個函式 ) ,稱為中斷處理程式 ( 或
ISR , Interrupt Service Routine) 。系統程式必須告訴 CPU 或中
斷處理器,中斷向量表放在 裡哪 ( 位於 個位址哪 ) ,當外部事件
或 exception 產生時, CPU 或中斷處理器會知道第幾號中斷產
生了,並參考中斷向量表,再將 CPU 「跳」到中斷向量表相對
entry 裡紀錄的位址。中斷處理程式執行完畢後,會返回被中斷
的程式。
中斷向量可查 msp430x54x.h 。
17
物聯網電子系統平台
數位輸入實驗教學
程式範例 :
18
物聯網電子系統平台
數位輸入實驗教學
問題與討論
 要使用中斷功能時要注意中斷向量的設定,若設定不正確將無
法執行正確的 ISR ,導致程式執行結果無法達成預期目標。中
斷是非常重要的一項功能,很多情況都會產生中斷,而產生中
斷後 CPU 原本做到一半的工作被暫停了,此時勢必有些資料需
要保存,方法就是先將要保存的 address 存到 Stack 中,等到執
行完 ISR 後再將原本的 address 從 Stack 讀回來,如此一來可以
確保中斷之前的程式流程繼續運作。
參考資料
MSP430F5438 datasheet
MSP430F5438 user guide
MSP430F5438 schematic
19
物聯網電子系統平台
類比輸入實驗教學
實驗目的
讓使用者學習如何使用 ADC 轉換,使得外部的類比訊號可以轉
存到 MSP430 中。
硬體設備
MSP430F5438
1.5V 電池 *1
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
20
物聯網電子系統平台
類比輸入實驗教學
原理簡介
ADC 轉換是將外部連續的類比訊號轉換成離散的數位訊號,本
章節主要是將電池的電壓量透過 ADC 轉換後儲存到 MSP430 的
memory 裡,並透過讀取 memory 內容得知電池的電壓。圖為
ADC 轉換流程示意圖,而從圖十五中可以了解到連續的訊號如
何轉換成離散的訊號。
21
物聯網電子系統平台
類比輸入實驗教學
22
ADC 電路圖
物聯網電子系統平台
類比輸入實驗教學
ADC 轉換示意圖
23
物聯網電子系統平台
類比輸入實驗教學
連續類比訊號轉離散數位訊號示意圖
24
物聯網電子系統平台
類比輸入實驗教學
實驗 驟步
25
物聯網電子系統平台
類比輸入實驗教學
第一步 : 設定參考電壓和輸入通道。
其目的在於設定參考電壓的範圍以及從 一個輸入通道讀入訊哪
號。
輸入通道的選擇 :
MSP430F5438 的 ADC 輸入通道有 A0 到 A15 共 16 個。
26
物聯網電子系統平台
類比輸入實驗教學
ADC 轉換公式 :
Vref+ 為參考電壓對最大 。值
Vref- 為參考電壓對最小 。值
Vin 為輸入電壓。
NADC 為轉換後的結果 。值
27
物聯網電子系統平台
類比輸入實驗教學
第二步 :ADC 處理核心內部設定。
其目的在於設定 ADC 基本功能暫存器。
第三步 : 設定取樣時間。
首先要設定好 clock 的來源與理想的頻率。
28
物聯網電子系統平台
類比輸入實驗教學
而後計算好理想的取樣時間並做設定。
因為 ADC 要將連續的訊號轉成離散的訊號,也就是說 MSP430
會在一段時間取樣一次,而設定取樣時間就是設定兩次取樣中
間的時間間隔,也就是設定取樣的頻率。
29
物聯網電子系統平台
類比輸入實驗教學
第四步 : 設定資料要儲存位址以及讀取資料的中斷。
其目的在於設定 ADC 資料儲存在 memory 的起始位址和終點位
址,還有讀進資料時會產生中斷。
30
物聯網電子系統平台
類比輸入實驗教學
第五步 : 儲存資料
其目的在於當讀入資料時會產生中斷進入 ADC 中斷服務,進而
把讀入資料寫入設定好的 memory 位址內。
31
物聯網電子系統平台
類比輸入實驗教學
暫存器介紹 :
32
物聯網電子系統平台
類比輸入實驗教學
33
物聯網電子系統平台
類比輸入實驗教學
34
物聯網電子系統平台
類比輸入實驗教學
35
物聯網電子系統平台
類比輸入實驗教學
36
物聯網電子系統平台
類比輸入實驗教學
37
物聯網電子系統平台
類比輸入實驗教學
問題與討論
 ADC 是一種將外界類比資訊轉成數位資訊並讀入至嵌入式平台
之方法,其中設定參考電壓和取樣時間需要多加注意,若設定
的不理想就無法達到系統要求的目標。舉例來說,取樣時間若
設定不理想系統就會在不對的時間點做中斷處理,而往往會造
成儲存錯誤的 。值 ADC 轉換的應用非常普遍,很多時候人們需
要得到一些外界的類比資訊,例如溫度、濕度等,像市面上可
自動調控室內溫度的冷氣機就是用類比輸入 ADC 轉換的方式感
應到室內的溫度,並做相對應的溫度、風量調整,而在物聯網
的世界中 ADC 的轉換比定是不可或缺的。
參考資料
MSP430F5438 datasheet
MSP430F5438 user guide
MSP430F5438 schematic
38
物聯網電子系統平台
脈衝 度調變寬 實驗教學
實驗目的
讓使用者學習如何調控 duty cycle 來控制 Output 訊號的脈波寬
度,並以此操作來改變 LED 的亮暗程度。換言之則 Analog
Output 。
硬體設備
MSP430F5438
LED*1
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
39
物聯網電子系統平台
脈衝 度調變寬 實驗教學
原理簡介
藉由調控 OUTPUT 脈波的 度,也就是寬 duty cycle 的大小來改
變 LED 燈光的亮暗,調控 duty cycle 的大小改變 OUTPUT 脈波
的 度就是寬 PWM(Pulse-Width Modulation) 的基本操作。
40
物聯網電子系統平台
脈衝 度調變寬 實驗教學
duty cycle 和平均電壓的計算
41
物聯網電子系統平台
脈衝 度調變寬 實驗教學
實驗 驟步
第一步 : 找到 PWM 對應之 pin ,提供 LED 連接接 。腳
第二步 : 設定其功能為 PWM 、輸出入方向為 OUTPUT 。
第三步 : 設定 PWM 操作模式和 OUTPUT 模式 。
第四步 : 計算理想 duty cycle 。
第五步 : 設定輸出頻率與脈波 度。寬
42
物聯網電子系統平台
脈衝 度調變寬 實驗教學
PWM 操作模式介紹,本實驗使用 Up Mode
43
物聯網電子系統平台
脈衝 度調變寬 實驗教學
Up Mode 操作
操作說明 :
在 Up Mode 模式下計數器會從 0 數到 TAxCCR0( 使用者設定的
值 ) ,然後再直接回到 0 ,當計數器數到 TAxCCR0 時會產生
CCIFG 中斷訊號,而從 TAxCCR0 重至回 0 的時候會產生
TAIFG 中斷訊號。
44
物聯網電子系統平台
脈衝 度調變寬 實驗教學
OUTPUT 模式介紹,本實驗使用 Reset/Set 模式
45
物聯網電子系統平台
脈衝 度調變寬 實驗教學
OUTPUT 模式示意圖
46
物聯網電子系統平台
脈衝 度調變寬 實驗教學
OUTPUT 模式 (Reset/Set) 與 PWM 操作模式 (Up Mode)
搭配特性
47
物聯網電子系統平台
脈衝 度調變寬 實驗教學
特性說明 :
首先給定 TAxCCR0 和 TAxCCR1 兩個暫存器 ,值
Up Mode 模式特性是當計數器從 0 數到 TAxCCR0 時計數器會
歸零
Reset/Set 模式特性是當計數器數到 TAxCCR1 時會產生 reset 訊
號,也就是本實驗設定的接腳 P8.1 為 LOW ,接者當計數器數
到 TAxCCR0 時會產生 set 訊號 (P8.1 為 HIGH) ,在 set 和 reset
之間就會產生一個脈波 度。寬
48
物聯網電子系統平台
脈衝 度調變寬 實驗教學
程式範例 :
49
物聯網電子系統平台
脈衝 度調變寬 實驗教學
程式說明 :
8~9 設定 P8.1 為 PWM 功能及 OUTPUT 方向。
10 設定 TimerA0 計數器 clock 來源、 PWM 操作模式。
11 設定 TimerA1 ,同上。
12 設定 OUTPUT 模式為 reset/set 。
13~14 設定 TA0CCR0 、 TA0CCR1 的 。值
15 設定 TA1CCR0 的值
16 開啟 TA1CCTL 中斷。
( 開 此中斷目的為當中斷發生時進入啟 ISR 調整 PWM 的脈波 度寬
,而設定 TA1CCR0 的 目的為當計數器數到值 TA1CCR0 時產生
中斷 )
18 進入 low power 模式並開 總中斷。啟
19 行以下就是 ISR 的撰寫,目的為藉由改變 TA0CCR1 的 來值
改變 duty cycle 大小,使得 LED 亮暗程度改變。
50
物聯網電子系統平台
脈衝 度調變寬 實驗教學
暫存器介紹 :
TAxCTL 暫存器 :
51
物聯網電子系統平台
脈衝 度調變寬 實驗教學
TAxCCTL 暫存器
52
物聯網電子系統平台
脈衝 度調變寬 實驗教學
53
物聯網電子系統平台
脈衝 度調變寬 實驗教學
問題與討論
 PWM 的應用非常多,可以控制馬達、控制訊號頻率、調整蜂鳴
器音頻等等,使用上也不複雜,而要注意的是 duty cycle 的計算
,若計算錯誤則無法達成理想的效果,例如若要控制蜂鳴器音
頻,但 duty cycle 計算失準,理所當然蜂鳴器音頻就會不準確。
參考資料
MSP430F5438 datasheet
MSP430F5438 user guide
MSP430F5438 schematic
54
物聯網電子系統平台
序列通訊界面實驗教學
實驗目的
本實驗室目的在於學習如何在 MSP430 上驅動 SPI 的通信環境
介面,並且利用此通信協定來達到交換資料封包及互相溝通的
效果。
硬體設備
MSP430F5438
USART 模組( MSP430 F5438 內部即有)
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
55
物聯網電子系統平台
序列通訊界面實驗教學
原理簡介
SPI 全稱為「 Serial Peripheral Interface 」,此通信協定可以利用
四條線和目標板溝通。 SPI 除了全雙工之外,更可以藉由
MOSI 和 MISO 的配合不斷地將信息串起來,就像火車一樣,
從機的信息傳給下一個從機,不斷的位移到相對應的 Address
上。而 SPI 也可以利用 CLK 和 MOSI 來達到一線對多物控制的
效果。
MOSI : Master Output, Slave Input.
MISO : Master Input, Slave Ouput.
SCK : Clock.( 利用時間來分析出來 SPI 所傳輸過來的資料或是
傳輸出去的資料,如果沒有 CLK 幫忙分頻,資料將無法分析而
導致亂 。值 )
CS : Chip select.( 動該啟 Slave 設備 )
56
物聯網電子系統平台
序列通訊界面實驗教學
SPI 電路圖
57
物聯網電子系統平台
序列通訊界面實驗教學
SPI 主模式
58
物聯網電子系統平台
序列通訊界面實驗教學
SPI 從模式
59
物聯網電子系統平台
序列通訊界面實驗教學
SPI 時序圖
60
物聯網電子系統平台
序列通訊界面實驗教學
實驗 驟步
本程式使用 SPI 之模組編號為 USCI_B0 ,而和 SPI 較為相關暫
存器包含:
一、控制暫存器 (UCB0CTL0 、 UCB0CTL1)
二、 Baud rate 控制暫存器 (UCB0BR0 、 UCB0BR1)
三、調整控制暫存器 (UCB0MCTL 、 UCB0MCTL1)
四、狀態暫存器 (UCB0STAT)
五、接收緩衝 (UCB0RXBUF)
六、發送緩衝 (UCB0TXBUF)
七、中斷開 暫存器啟 (UCB0IE)
硬體接線:
3.1(UCB0SIMO) 、 3.2(UCB0SOMI) 、 3.3(UCB0CLK).
61
物聯網電子系統平台
序列通訊界面實驗教學
 本程式碼主要利用 LED1 來提醒使用者在 SPI 上是否傳輸成功,
確認方式為對照 SPI 的 TX 和 RX 的 Buffer 暫存器是否和傳送 相值
同。
程式範例 :
 設定控制暫存器、 Baud rate 控制暫存器、 SPI 位設定。腳
62
物聯網電子系統平台
序列通訊界面實驗教學
傳送資料
63
物聯網電子系統平台
序列通訊界面實驗教學
接收資料
64
物聯網電子系統平台
序列通訊界面實驗教學
暫存器介紹 :
65
物聯網電子系統平台
序列通訊界面實驗教學
66
物聯網電子系統平台
序列通訊界面實驗教學
67
物聯網電子系統平台
序列通訊界面實驗教學
68
物聯網電子系統平台
序列通訊界面實驗教學
問題與討論
許多工程師會熟練一些通信協定以便於嵌入式系統、單晶片上
面的應用,目前 SPI 、 I2C 、 UART 三者是比較多人使用的,
在本次實驗中最主要注意的部分是暫存器的開 和啟 Baud rate 設
定、 Clock 的配置。而如果測試上發現只有一塊板子也沒有關
係,可以將自己的 MISO 接到自己的 MOSI ,因為 Clock 都是
一樣,所以不用擔心不同步的問題。藉用這個方法,就可以將
信息傳進來,也可以在 Buffer 中看到自己的資料。
參考資料
MSP430F5438 datasheet
MSP430F5438 user guide
Emp-Learn (http://emplearn.blogspot.tw/)
69
物聯網電子系統平台
UART 實驗教學
實驗目的
本實驗室目的在於學習如何在 MSP430 上驅動 UART 的通信環
境介面,並且利用此通信協定來達到交換資料封包及互相溝通
的效果。
硬體設備
MSP430F5438
USART 模組( MSP430 F5438 內部即有)
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
70
物聯網電子系統平台
UART 實驗教學
原理簡介
通用非同步收發傳輸器 (Universal Asynchronous
Receiver/Transmitter, UART) 為一種非同步收發通訊機制,可將
資料由串列傳輸與並列傳輸間做傳輸轉換。
UART 傳輸資料主要原理為使用分時傳送方式,由傳送端每隔
一段時間就將一位元的資料狀態傳送出去,直到這筆資料傳送
結束,如此即完成一筆資料的傳送。接收端則必須以相同的速
度,以分時的方式一個位元一個位元的接收。
71
物聯網電子系統平台
UART 實驗教學
資料傳送與接收示意圖
72
物聯網電子系統平台
UART 實驗教學
上圖說明 :
使用者傳送的資料是以序列的方式傳到微處理機的接收端暫存
器 (Rx) , Rx 再以並列的方式傳送資料給 CPU ,而相反的當
CPU 傳送資料給微處理機的傳送端暫存器 (Tx) 時是以並列的方
式, Tx 再以序列的方式將資料傳回給使用者。
73
物聯網電子系統平台
UART 實驗教學
Parity bit 機制 :
傳送端會計算 Parity bit ,也就是計算傳送資料裡面有幾的 1 ,
若 1 的個數為奇數則 Parity bit 為 0 ,偶數則為 1 。傳送端會連
帶 Parity bit 一起傳送,而接收端收到資料後也會計算資料中 1
的個數再和 Parity bit 做相比,若兩者符合則表示傳送資料沒有
遺失,不符合則表示資料在傳送過程中可能有缺陷。
74
物聯網電子系統平台
UART 實驗教學
實驗 驟步
第一步 : 設定 Baud-rate ,設定 UCBRx 暫存器
設定 Baud-rate 的目的就是設定連接 UART 的兩端設備傳輸頻率
,傳輸頻率必須一致資料才可以傳輸。若頻率不一致可能會造
成資料遺失。
75
物聯網電子系統平台
UART 實驗教學
Baud-rate 設定公式 :
fBRCLK: clock source 頻率。
N: 計算後之結果 ,並設定到值 UCBRx 暫存器中。
範例 :
 fBRCLK : 32768(32kHz)
 Baud-rate : we want set 9600
 N = 32768 / 9600 = 3.413…
76
物聯網電子系統平台
UART 實驗教學
第二步 : 設定 UCBRSx
公式 : UCBRSx = round [ ( N – INT(N) ) * 8 ]
範例 :
 UCBRSx = round [ ( 3.413 – INT(3.413)) * 8 ]
 = round [ (3.413 – 3) * 8 ]
 = round [ 0.413 * 8 ]
 = round [ 3.304 ]
 = 3
第三步 : 撰寫中斷 ISR ,將 RxBUF 收到的資料傳給
TxBUF 。
第四步 : 開啟 Putty 並且由鍵盤輸入字串。
77
物聯網電子系統平台
UART 實驗教學
程式範例 :
78
物聯網電子系統平台
UART 實驗教學
暫存器介紹 :
79
物聯網電子系統平台
UART 實驗教學
80
物聯網電子系統平台
UART 實驗教學
81
物聯網電子系統平台
UART 實驗教學
82
物聯網電子系統平台
UART 實驗教學
83
物聯網電子系統平台
UART 實驗教學
測試方式 :
使用電腦透過 Putty 設定 Baud-rate ,由 RS-232 連接至開發 ,粄
透過 Putty 觀看資料傳送結果是否正確。
84
物聯網電子系統平台
UART 實驗教學
是否成功 ( 無亂碼 ) 。
85
物聯網電子系統平台
UART 實驗教學
問題與討論
 暫存器的設定在前幾章節都有類似的操作,所以本章節就不多
介紹。反而 UART 的 ISR 撰寫是比較 得注意的事。值 很多人剛
開始接觸 UART 時都會將 Tx 和 Rx 寫反,會有這樣的錯誤觀念
是因為使用者不小心將使用者端和 CPU 端 反了,程式撰寫全搞
部都是在寫 CPU 端的程式,所以要從 CPU 端來思考,由於
CPU 端的 Rx 是接受使用者端傳進來的資料然後 Tx 是將處理過
的資料回傳給使用者端,所以流程是「先收再傳」,也就是說
資料會先進 Rx 再傳到 Tx 再傳回使用者端,而程式碼的撰寫就
是 Tx=Rx 了。
參考資料
MSP430F5438 datasheet
MSP430F5438 user guide
MSP430F5438 schematic
86
物聯網電子系統平台
CC2500 通訊模組實驗教學
實驗目的
讓使用者學習使用無線傳輸模組來達到無線傳輸訊息之目的。
透過按下 KEYPAD 按鍵產生中斷將訊息從 master 端傳到 slave
端並點亮 LED 燈。
硬體設備
MSP430F5438
CC2500 ( MSP430 F5438 內部即有)
LED*1
軟體工具與套件
IAR Embedded Workbench IDE version 4.21
87
物聯網電子系統平台
CC2500 通訊模組實驗教學
CC2500 電路圖
88
物聯網電子系統平台
CC2500 通訊模組實驗教學
原理簡介
CC2500 模組有一組 64-byte RX and TX 暫存器, RX 是用來接
收資料而 TX 是傳送資料,在設定好 CC2500 傳輸頻率以及傳送
與接收兩端傳輸資料長度、接收端位址 ( 接收端 IP) 、接收端腳
位後就可以互相傳遞資料。
89
物聯網電子系統平台
CC2500 通訊模組實驗教學
實驗 驟步
第一步 : 設定 CC2500 傳輸頻率
 在 CC1100-CC2500.c 中將傳輸頻率設定為檔 2400 。
第二步 : 初始化 SPI 、 CC2500 模組、無線電 Buffer 。
第三步 : 設定 KEYPAD 和 LED 位。腳
第四步 : 設定接收端無線接收 位,本實驗是使用腳 P1.6 接收訊
息。
第五步 : 撰寫傳送端 ISR 內容。
第六步 : 撰寫接收端 ISR 內容。
90
物聯網電子系統平台
CC2500 通訊模組實驗教學
程式範例 :
91
物聯網電子系統平台
CC2500 通訊模組實驗教學
程式說明
10 初始化 SPI 設定。
11 初始化 CC2500 模組及暫存器。
12 初始化無線電設定。
13 設定 CC2500 和 MSP430 通訊模組。
14~20 設定 KEYPAD 暫存器並開啟 KEYPAD 中斷,與實驗
3.6 相同。
23 設定接收 位為腳 P1.6 並設定當訊號為下降緣 (HIGH to
LOW) 時產生中斷。 ( 當接收到資料後會產生中斷 )
24 清除 P1.6 中斷旗標。
25 開 接收 位中斷。啟 腳
26 當 RX 收到包封後發出信號告知 CPU 準備將資料透過 SPI 傳
輸到 MSP430 。
29 進入 low power 模式並開 總中斷。啟
92
物聯網電子系統平台
CC2500 通訊模組實驗教學
程式範例 :ISR
93
物聯網電子系統平台
CC2500 通訊模組實驗教學
程式說明 :
32~47 為按下 KEYPAD 之中斷,也就是傳送端中斷 ISR 。
49~60 為接受端中斷 ISR 。
35~36 設定 P4.1 為 LED 接 ,當訊息傳送的時候點亮腳 LED 燈
。
38 設定傳送封包長度。
39 設定接收端的位址。
40 傳送封包內容。
42 傳遞封包。
52 設定接收封包長度。
53~54 設定 P4.1 為 LED 接 ,當接收到訊息的時候點亮腳 LED
燈。
56~57 接收傳遞之封包資料。
94
物聯網電子系統平台
CC2500 通訊模組實驗教學
問題與討論
 若同時有多組封包資料進行傳送時,則要判斷資料的重要程度
來決定資料的接收優先順序,還有如果有封包遺失的情形發生
時需要建立重傳機制,接收端也需要告知傳送端是否已接收到
封包資料,如此一來可降低封包傳輸錯誤的情況。
參考資料
MSP430CC2500 datasheet
MSP430F5438 datasheet
MSP430F5438 user guide
95

Más contenido relacionado

La actualidad más candente

MTech Degree Certificate
MTech Degree CertificateMTech Degree Certificate
MTech Degree CertificateSOURAV MITRA
 
Hortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_act
Hortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_actHortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_act
Hortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_actSimoolya
 
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)Linaro
 
Transcript Masters in Economics (1)
Transcript Masters in Economics (1)Transcript Masters in Economics (1)
Transcript Masters in Economics (1)Mohamed Souka
 
深入淺出C語言
深入淺出C語言深入淺出C語言
深入淺出C語言Simen Li
 
UCT Advanced Diploma in Business Project Management certificate for Perez
UCT Advanced Diploma in Business Project Management certificate for PerezUCT Advanced Diploma in Business Project Management certificate for Perez
UCT Advanced Diploma in Business Project Management certificate for PerezPerez Mnkile
 
MSc Degree Certificate
MSc Degree CertificateMSc Degree Certificate
MSc Degree Certificatesiddharthamm
 
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)William Liang
 
Trancript Seneca College-Aslihan Altay
Trancript Seneca College-Aslihan AltayTrancript Seneca College-Aslihan Altay
Trancript Seneca College-Aslihan AltayAslihan Altay
 
HIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATION
HIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATIONHIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATION
HIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATIONHIREN SHAH
 

La actualidad más candente (20)

Marksheet
MarksheetMarksheet
Marksheet
 
MTech Degree Certificate
MTech Degree CertificateMTech Degree Certificate
MTech Degree Certificate
 
ACADEMIC TRANSCRIPT
ACADEMIC TRANSCRIPTACADEMIC TRANSCRIPT
ACADEMIC TRANSCRIPT
 
Hortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_act
Hortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_actHortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_act
Hortelano luisa gonzalez_elena_la_pandilla_1_cuaderno_de_act
 
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
 
MARK SHEET BA
MARK SHEET BAMARK SHEET BA
MARK SHEET BA
 
Transcript Masters in Economics (1)
Transcript Masters in Economics (1)Transcript Masters in Economics (1)
Transcript Masters in Economics (1)
 
Matric Certificate
Matric CertificateMatric Certificate
Matric Certificate
 
BBA ORIGINAL CERTIFICATE
BBA ORIGINAL CERTIFICATEBBA ORIGINAL CERTIFICATE
BBA ORIGINAL CERTIFICATE
 
Transcript Copy
Transcript CopyTranscript Copy
Transcript Copy
 
深入淺出C語言
深入淺出C語言深入淺出C語言
深入淺出C語言
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to Linux
 
UCT Advanced Diploma in Business Project Management certificate for Perez
UCT Advanced Diploma in Business Project Management certificate for PerezUCT Advanced Diploma in Business Project Management certificate for Perez
UCT Advanced Diploma in Business Project Management certificate for Perez
 
Lufthansa recency letter
Lufthansa recency letterLufthansa recency letter
Lufthansa recency letter
 
MSc Degree Certificate
MSc Degree CertificateMSc Degree Certificate
MSc Degree Certificate
 
BS Transcript
BS TranscriptBS Transcript
BS Transcript
 
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
 
Osama schengen visa
Osama schengen visaOsama schengen visa
Osama schengen visa
 
Trancript Seneca College-Aslihan Altay
Trancript Seneca College-Aslihan AltayTrancript Seneca College-Aslihan Altay
Trancript Seneca College-Aslihan Altay
 
HIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATION
HIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATIONHIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATION
HIREN ICFAI MBA SEM 4 -CERTIFICATE OF MASTER OF BUSINESS ADMINISTRATION
 

Destacado

車用通信報告
車用通信報告車用通信報告
車用通信報告冠宇 陳
 
2014 1029 adaptive dissmination of safety data among vehicles
2014 1029 adaptive dissmination of safety data among vehicles2014 1029 adaptive dissmination of safety data among vehicles
2014 1029 adaptive dissmination of safety data among vehicles冠宇 陳
 
Stm32 develop tool introduction
Stm32 develop tool introductionStm32 develop tool introduction
Stm32 develop tool introduction冠宇 陳
 
The design of electronic license plate recognition terminal system based on n...
The design of electronic license plate recognition terminal system based on n...The design of electronic license plate recognition terminal system based on n...
The design of electronic license plate recognition terminal system based on n...冠宇 陳
 
Based on raspberry pi with the application of Stepper
Based on raspberry pi with the application of StepperBased on raspberry pi with the application of Stepper
Based on raspberry pi with the application of Stepper冠宇 陳
 
第二周課程 Arduino介紹
第二周課程 Arduino介紹第二周課程 Arduino介紹
第二周課程 Arduino介紹冠宇 陳
 
2014暑期訓練之Linux kernel power
2014暑期訓練之Linux kernel power2014暑期訓練之Linux kernel power
2014暑期訓練之Linux kernel power冠宇 陳
 
Stm32f4硬體週邊介紹
Stm32f4硬體週邊介紹Stm32f4硬體週邊介紹
Stm32f4硬體週邊介紹Jack Wang
 
艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗艾鍗科技
 
Verilog 語法教學
Verilog 語法教學 Verilog 語法教學
Verilog 語法教學 艾鍗科技
 
簡介 GitHub 平台
簡介 GitHub 平台簡介 GitHub 平台
簡介 GitHub 平台Will Huang
 
Visual Studio Code 快速上手指南
Visual Studio Code 快速上手指南Visual Studio Code 快速上手指南
Visual Studio Code 快速上手指南Shengyou Fan
 

Destacado (13)

Densebox
DenseboxDensebox
Densebox
 
車用通信報告
車用通信報告車用通信報告
車用通信報告
 
2014 1029 adaptive dissmination of safety data among vehicles
2014 1029 adaptive dissmination of safety data among vehicles2014 1029 adaptive dissmination of safety data among vehicles
2014 1029 adaptive dissmination of safety data among vehicles
 
Stm32 develop tool introduction
Stm32 develop tool introductionStm32 develop tool introduction
Stm32 develop tool introduction
 
The design of electronic license plate recognition terminal system based on n...
The design of electronic license plate recognition terminal system based on n...The design of electronic license plate recognition terminal system based on n...
The design of electronic license plate recognition terminal system based on n...
 
Based on raspberry pi with the application of Stepper
Based on raspberry pi with the application of StepperBased on raspberry pi with the application of Stepper
Based on raspberry pi with the application of Stepper
 
第二周課程 Arduino介紹
第二周課程 Arduino介紹第二周課程 Arduino介紹
第二周課程 Arduino介紹
 
2014暑期訓練之Linux kernel power
2014暑期訓練之Linux kernel power2014暑期訓練之Linux kernel power
2014暑期訓練之Linux kernel power
 
Stm32f4硬體週邊介紹
Stm32f4硬體週邊介紹Stm32f4硬體週邊介紹
Stm32f4硬體週邊介紹
 
艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗艾鍗學院-單晶片韌體-CC2500通訊實驗
艾鍗學院-單晶片韌體-CC2500通訊實驗
 
Verilog 語法教學
Verilog 語法教學 Verilog 語法教學
Verilog 語法教學
 
簡介 GitHub 平台
簡介 GitHub 平台簡介 GitHub 平台
簡介 GitHub 平台
 
Visual Studio Code 快速上手指南
Visual Studio Code 快速上手指南Visual Studio Code 快速上手指南
Visual Studio Code 快速上手指南
 

Similar a 第三章Ti msp430平台介紹 v3

Deployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnDeployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnahnlabchina
 
Raspberry Pi 智能風扇
Raspberry Pi 智能風扇Raspberry Pi 智能風扇
Raspberry Pi 智能風扇艾鍗科技
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术jugn
 
网络基础知识(经典)
网络基础知识(经典)网络基础知识(经典)
网络基础知识(经典)littlesujin
 
STM32F4 for 智慧型電動輪椅系統Part1
STM32F4 for 智慧型電動輪椅系統Part1STM32F4 for 智慧型電動輪椅系統Part1
STM32F4 for 智慧型電動輪椅系統Part1Jack Wang
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)FLASH开发者交流会
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)Shanda innovation institute
 
Deployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cnDeployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cnahnlabchina
 
物聯網技術分享 使用ESP8266
物聯網技術分享 使用ESP8266物聯網技術分享 使用ESP8266
物聯網技術分享 使用ESP8266Power Wu
 
[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware
[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware
[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack FirmwareSimen Li
 
Sy03091说明书
Sy03091说明书Sy03091说明书
Sy03091说明书guest8f3690
 
嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統艾鍗科技
 
181201_CoAP_coding365
181201_CoAP_coding365181201_CoAP_coding365
181201_CoAP_coding365Peter Yi
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnahnlabchina
 

Similar a 第三章Ti msp430平台介紹 v3 (20)

Deployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cnDeployment instruction tg4100 f-ig_cn
Deployment instruction tg4100 f-ig_cn
 
Step7
Step7Step7
Step7
 
LinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorialLinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorial
 
Raspberry Pi 智能風扇
Raspberry Pi 智能風扇Raspberry Pi 智能風扇
Raspberry Pi 智能風扇
 
第6章 输入输出技术
第6章 输入输出技术第6章 输入输出技术
第6章 输入输出技术
 
网络基础知识(经典)
网络基础知识(经典)网络基础知识(经典)
网络基础知识(经典)
 
STM32F4 for 智慧型電動輪椅系統Part1
STM32F4 for 智慧型電動輪椅系統Part1STM32F4 for 智慧型電動輪椅系統Part1
STM32F4 for 智慧型電動輪椅系統Part1
 
Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)Avm2虚拟机浅析与as3性能优化(陈士凯)
Avm2虚拟机浅析与as3性能优化(陈士凯)
 
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
[Flash开发者交流][2010.05.30]avm2虚拟机浅析与as3性能优化(陈士凯)
 
Deployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cnDeployment instruction tg1100 ig-cn
Deployment instruction tg1100 ig-cn
 
物聯網技術分享 使用ESP8266
物聯網技術分享 使用ESP8266物聯網技術分享 使用ESP8266
物聯網技術分享 使用ESP8266
 
[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware
[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware
[ZigBee 嵌入式系統] ZigBee Architecture 與 TI Z-Stack Firmware
 
Arduino overview
Arduino overviewArduino overview
Arduino overview
 
Arduino overview
Arduino overviewArduino overview
Arduino overview
 
nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論
 
nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論nodeMCU IOT教學03 - NodeMCU導論
nodeMCU IOT教學03 - NodeMCU導論
 
Sy03091说明书
Sy03091说明书Sy03091说明书
Sy03091说明书
 
嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統嵌入式inux應用專題文件-智慧家庭系統
嵌入式inux應用專題文件-智慧家庭系統
 
181201_CoAP_coding365
181201_CoAP_coding365181201_CoAP_coding365
181201_CoAP_coding365
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cn
 

第三章Ti msp430平台介紹 v3

Notas del editor

  1. 時鐘來源(ADC or other timers)與保持時間(4,8,16,64 clocks)