Microsoft Word - 10

Similar documents
Microsoft Word - 18

Microsoft Word - MSP430 Launchpad 指导书.docx

MSP430x11x1 T A -40 ~ SOWB 20 TSSOP (DW) (PW) MSP430F110IDW MSP430F110IPW MSP430F112IDW MSP430F112IPW + F11x 30kΩ

Microsoft Word - Delta Controller ASCII_RTU_TC

untitled

untitled

学习MSP430单片机推荐参考书

MSP430 Launchpad 指导书

(3)ADC12Ó¦Ó÷¶Àý

MSP430F KB+256B flash 10KB RAM 64 Quad Flat Pack QFP MSP430x1xx SLAU049 MSP430 MSP RISC CPU 16 DCO 6 MSP430x15x/16x/161x A/D 12 D/A

1

untitled

bingdian001.com

用户指南

MSP430单片机简介

2 12

第三章 3.5 Flash 使用的代码样例 #include "msp430g2553.h" /**************************************************** g2553 有 4 个数据段, 每个数据段有 64bytes, 共 256bytes D:0x10

中文摘要 本系統採用德州儀器 MSP430 系列的晶片, 配合具有 HID 人機介面的藍芽來遙控智慧行動裝置遊戲軟體 目的在於使用第三方裝置來無線操作 Android 手機裡的遊戲, 讓手機遊戲增加更多玩法及趣味性, 以此改變傳統的手機遊戲 英文摘要 The system uses a Texas

网上对外发布资料适用版本

Microsoft PowerPoint - chap12.ppt

MSP430 MSP430 F149 MSP430F149 P USART MSP430F PWM 63#

YYW1.nps

<4D F736F F D20B9F0D5FEB0ECB7A2A3A A3A93532BAC52E646F63>

<313032A655A874B2D5B3CCA743BFFDA8FABCD0B7C7AAED2E786C73>

柳州历史上的今天内文改版式.FIT)

生 產 準 備 您 接 近 生 產 之 注 意 事 項 : 備 妥 住 院 用 物, 勿 遠 行 ( 生 產 用 物 包 ) 最 好 有 人 在 家 陪 伴, 或 和 陪 產 者 保 持 連 繫, 有 任 何 狀 況 可 立 即 趕 到 可 做 家 事 散 步 蹲 下 等 運 動, 以 不 太 累

Q8. 公 營 事 業 機 構 之 公 務 員 兼 具 勞 工 身 分 者, 於 97 年 3 月 19 日 以 前, 原 選 擇 參 加 勞 保, 調 任 其 他 公 營 事 業 機 構 時, 應 改 參 加 公 保 所 謂 調 任 其 他 公 營 事 業 機 構 之 判 別 依 據 ( 或 標

untitled

天人炁功行入與感應經驗分享

Microsoft Word 箕æ−¥ï¼‹å®ı稿;

98年度即測即評學科測試與即測即評即發證技術士技能檢定簡章

Lab 4

Microsoft PowerPoint - chap11.ppt

VH中文硬體說明書 A4-cd9新版.cdr

LCD模組之應用

The golden pins of the PCI card can be oxidized after months or years

iziggi

Microsoft Word - CMU200 WCDMA 手機測試步驟.doc

Microsoft Word - ha0359t

2005.book

Arduino 1-1 Arduino 1-2 Arduino 1-3 Arduino IDE

中文手册

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

FM1935X智能非接触读写器芯片

Microsoft PowerPoint - C_Structure.ppt

从MCS51向AVR的快速转换.PDF

ZT0102_Cb-00封面

<4D F736F F D20B3E6B4B9A4F930365F32A443AC71C5E3A5DCBEB9B1B1A8EE2E646F63>

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

QR Code 技術之探討

(Microsoft Word - wes _\246p\246\363\250\317\245\316LED\277O\305\343\245\334\252\254\272A.doc)

Microsoft Word - ACI chapter00-1ed.docx

PCM-3386用户手册.doc

朝陽科技大學

Test Report tamio R3 Netis WF2409E Model TP-LINK TL-WR841HP ASUS RT-N12+ B1 LB-LINK BL-WR2000 v1.0.4 v Firmware v v2.0.8 v1.0.6 Date 20

Microsoft Word - µÚ4ÕÂ Basic clock+.doc

untitled

Microsoft Word - PLC與GP接線說明_缺WDH_2.doc

untitled

Microsoft Word - ISSFA-0237_A_SM39R_series_EEPROM_APN_TC_.doc

Microsoft Word - 版頭.doc

2015年莆田一青会射箭资格赛.xls

目录

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp


初始化A7121

台灣科學工業園區科學工業同業公會

Microsoft Word - ISSFA-0109_B_SM59264_WDT_ APN_TC_.doc

Microsoft Word - ~ doc

僑生(含港澳生)及外籍生參加全民健康保險實施要點

84

(Microsoft PowerPoint - OctopusX \245\255\245x\261\320\276\307.pptx)

(Microsoft Word - wes _\246p\246\363\250\317\245\316watchdog\250\276\244\356\265{\246\241\267\355\276\367.doc)

untitled


INCF SEC1,F ; 將 SEC1+1 作查表取回對應數字 MOVF SEC1,W banksel STRING1 banksel PORTB RETFIE run_sec2: MOVF SEC2,W SUBLW.5 GOTO run_min ; 將秒個位數歸 0 CLRF SEC1 MOVL

Transcription:

第十章通用非同步收發傳輸器 (UART) 10.1 結構介紹 10.2 內部暫存器 10.3 初始化流程 10.4 UART 傳輸實驗 10.4.1 實驗目的 10.4.2 實驗設備 10.4.3 實驗描述 10.4.4 接線步驟 10.4.5 程式流程圖 10.4.6 程式碼 10.4.7 實驗結果

10.1 結構介紹 圖 10.1 為通用串行通信接口 _AX(USCI_Ax) 設為 UART 模式時的區塊結構圖, 主要分成接收器 ( 紅框 ) 傳送器( 藍框 ) 以及決定頻率的區塊, 在紅框與藍框的部分, 有很多連接到相同暫存器的部分, 主要是用來選擇 設定傳輸模式 圖 10.1 USCI_Ax UART 模式區塊結構圖

MSP430 有 4 個埠 (3 5 9 10) 用來進行當作通用串行通信接口 (USCI) 模組來支持多種串行通信模式 (UART SPI I2C) 在通用非同步收發傳輸模式中,MSP430 中 USCI_Ax 模組利用了兩個腳位來和外部的介面做連接 (UCAxRXD UCAxTXD) UART 模式的功能包括 : 有奇 偶 無同位檢查的 7 或 8 位元的資料傳輸 獨立的傳送 接收位移暫存器 分離的傳送 接收緩衝暫存器 資料傳輸可以選擇 LSB 或 MSB 接收器的啟動編緣檢測會從 LPMx 模式中自動喚醒 可程式化的鮑率 有錯誤偵測和抑制的狀態旗標 有位址偵測的狀態旗標 傳送與接收器有獨立的中斷 10.2 內部暫存器 下表為 USCI_Ax 暫存器, 接下來會依照範例程式, 介紹幾個主要常用的暫存器 表 10.1 USCI_Ax 暫存器

表 10.2 UCAxCTL0 控制常用暫存器功能說明 名稱 說明 UCPEN 同位檢查致能, 預設為 0, 關閉 UCMSB 決定是否為 MSB 傳送方式, 預設為 0, 採用 LSB UC7BIT 字元長度選擇 (0:8-bit 1:7-bit) UCSPB 停止 bit 數選擇 (0:1-bit 1:2-bit) UCMODE UART 模式選擇, 請設定為 00 UCSYNC 同步模式選擇, 要使用 UART 該 BIT 一定要設定成 0 表 10.3 UCAxCTL1 控制常用暫存器功能說明 名稱 說明 UCSSELx 時脈來源選擇 00 UCLK 01 ACLK 10 SMCLK 11 SMCLK UCSWRST 軟體重置致能 (0: 關閉 1: 開啟 ) 而 UCAxBR0 UCAxBR1 與 UCAxMCTL 是 3 個 8-bit 的暫存器, 用來決定鮑率, 而 UCAxRXBUF UCAxTXBUF 分別是接收與傳送資料的 8-bit 暫存器 在中斷部分, 由 UCAxIE 中的 UCTXIE UCRXIE 來決定是否啟動中斷 (0: 關閉 1: 啟動 ), UCAxIFG 中的 UCTXIFG UCRXIFG, 則是中斷旗標 (0: 沒中斷發生,1: 中斷發生 ) 10.3 初始化流程 要使用 UART 模式, 必須有下列設定 (1) 將 UCSWRST 設定為 1, 讓 USCI_Ax 處在重置狀態 (2) 設定所有的暫存器 甲 如表 10.2 的暫存器都依照預設值不修改的話, 即代表所設定的 UART 是沒有同位檢查, 以 LSB 方式傳送, 自元長度為 8 位元, 停止位元數為 1 的傳輸模式 乙 設定鮑率, 調整 UCSSELx 選擇想要的時脈來源後,UCAxBR0 UCAxBR1 與 UCAxMCTL 三個暫存器, 其關係如下 : 時脈 (8Mhz) / 鮑率 (57600) = 135.642 將 135 填入 BRx,UCAxBR0 為低位元,UCAxBR1 為高位元, 轉為 16 進制後再填入,BR0 = 0x87 BR1 = 0x00

而調變控制暫存器的數值算法, 則是將小數點進行下列運算得之 算出來的值, 並不一定是最佳的, 但基本上都是在這附近, 可以在實際測試後微調 (3) 設定腳位 (4) 將 UCSWRST 設定為 0 (5) 啟動 RX or TX 中斷置能與 GIE 中斷 10.4 UART 傳輸實驗 10.4.1 實驗目的用 UART Mode 串列通訊將資料傳送至另 PC 10.4.2 實驗設備電腦 x1 FETx1 RS232 線 x1 示波器 x1 10.4.3 實驗描述 a. ACLK = 32kHz, MCLK = SMCLK = DCO =~8MHz referenced by XT1. b. UART:8N1 57600. c. 利用超級終端機傳送 0x55 給 MSP430, 然後回傳 0xAA 10.4.4 接線步驟以排線自 P10 連接自 RS232_module, 給予 RS232_Power +3v & GND 圖 10.2 UART 傳輸實驗連接圖

10.4.5 程式流程圖 開始 Init MSP430 USCI A3 ISR 判斷旗標?(IFGA3 是 & UTXIFGA3) 否 傳送 Data RET 圖 10.3 UART 傳輸實驗流程圖 說明 : 上圖一開始先設定頻率, 依照頻率設定先設定 UCS 的暫存器, 將頻率設定成 ACLK = 32kHz, MCLK = SMCLK = DCO =~8MHz referenced by XT1, 之後設定 UART 腳位, 然後依照 10.3 所述, 照題目 B 項要求來設定 UART 暫存器 下圖為中斷函式, 等待 UART 中斷訊號發生, 比對收到的資料是否為 U, 之後判斷是否可以進行傳送, 如果可以的話, 傳送 0XAA

10.4.6 程式碼 Main.c #include <msp430x54x.h> void main() { WDTCTL = WDTPW+WDTHOLD; 註解 停止看門狗 P11DIR = 0x07; P11SEL = 0x07; 設定頻率輸出腳位 P7SEL = 0x03; UCSCTL6 &= ~XT1DRIVE_3; UCSCTL6 = XCAP_3 ; 設定 XT1 腳位設定驅動強度設定內部電容 UCSCTL0 = 0x00; UCSCTL1 = DCORSEL_4; 設定最低的 DCOx, MODx 選擇合適的頻率範圍 UCSCTL2 = 244 ; UCSCTL4 = SELA XT1CLK SELS DCOCLK SELM DCOCLK ; P10SEL = 0x30; P10DIR = BIT4; P10DIR &= ~BIT5; DCO = 244 * 32768Hz ~= 8MHz 設定三個 CLK 的來源 設定 UART 腳位 P10.4,5 = USCI_A1 TXD/RXD UCA3CTL1 = SWRT; UCA3CTL0 = UCMODE_0; 設定軟體重置設定模式 UCA3CTL1 = UCSSEL_2; UCA3BR0 = 0x87; UCA3BR1 = 0x00; UCA3MCTL = 0xB6; UCA3CTL1 &= ~SWRT; UCA3IE = UCRXIE; 選擇時脈來源設定鮑率 Modulation = 10110110 = 0xB6 關閉軟體重置啟動接收中斷致能 bis_sr_register(gie); } GIE 中斷啟動

#pragma vector=usci_a3_vector interrupt void USCI_A3_ISR (void) { if(uca3rxbuf == 0x55){ while (!(UCA3IFG& UCTXIFG)); UCA3TXBUF = 0xAA; } } 是否可以傳送傳送 0xAA

10.4.7 實驗結果 右圖為示波器連接 RX TX 的結果, 左圖為 IAR 除錯模式中斷時, 暫存器視窗的結果 圖 10.4 UART 傳輸實驗結果