1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Bai bao cao word 03

41 177 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 41
Dung lượng 792,39 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

device-specific device-specific device-specific device-specific device-specific device-specific 0FFCAh 0FFC8h 0FFC6h 0FFC4h 0FFC2h 0FFC0h 2.1.5 CÁC CHẾ ĐỘ HOẠT ĐỘNG Họ MSP430 được thiết

Trang 1

LỜI CAM ĐOAN

Đề tài “Mạch ổn định nhiệt độ” là một đề tài gần gũi với sinh viên ngành điện tử Và với việc đưa vào giảng dạy vi xử lý MSP430 thì việc tìm hiểu loại vi xử lý mới này thì cần thiết Vì vậy em chọn đề tài “Mạch ổn định nhiệt độ dùng MSP430” để làm đồ án vi xử lý cho mình

Trong quá trình thực hiện đề tài, có thể còn nhiều thiếu sót do kiến thức hạn chế nhưng những nội dung trình bày trong quyển báo cáo này là những hiểu biết và thành quả của em đạt được dưới sự giúp đỡ của giảng viên hướng dẫn là thầy Trần Hữu Danh

Em xin cam đoan rằng: những nội dung trình bày trong quyển báo cáo

đồ án này không phải là bản sao chép từ bất kỳ công trình đã có trước nào Nếu không đúng sự thật, em xin chịu mọi trách nhiệm trước nhà trường

Cần Thơ, ngày 30 tháng 11 năm 2011

Sinh viên thực hiện

Nguyễn Trần Hồng Điệp

Trang 2

LỜI CAM ĐOAN

Đề tài “Mạch ổn định nhiệt độ dùng MSP430” Đề tài giúp em hiểu về MSP430 và cảm biến nhiệt độ DS18B20 Vì vậy em chọn đề tài này để làm đồ án

Vi xử lý cho mình

Trong quá trình thực hiện đề tài, có thể còn nhiều thiếu sót do kiến thức hạn chế nhưng những nội dung trình bày trong quyển báo cáo này là những hiểu biết và thành quả của em đạt được dưới sự giúp đỡ của giảng viên hướng dẫn là cô thầy Trần Hữu Danh

Em xin cam đoan rằng: những nội dung trình bày trong quyển báo cáo Niên luận 1 này không phải là bản sao chép từ bất kỳ công trình đã có trước nào Nếu không đúng sự thật, em xin chịu mọi trách nhiệm trước nhà trường

Cần Thơ, ngày 30 tháng 11 năm 2011

Sinh viên thực hiện

Nguyễn Trần Hồng Điệp

Trang 3

LỜI CẢM ƠN

Hoàn thành được niên luận này em xin gửi lời cám ơn sâu sắc tới thầy Trần Hữu Danh, thầy đã trực tiếp hướng dẫn, theo sát, ân cần chỉ bảo em từng bước từ khi bắt đầu đồ án tới khi hoàn thành Em cũng không quên cám ơn các thầy cô trong Bộ môn Điện tử Viễn thông, các anh chị khóa trước và một số bạn sinh viên trong ngành Điện tử đã hỗ trợ kiến thức, cũng như những kinh nghiệm để em có thể thực hiện đề tài này

Dù đã cố gắng rất nhiều nhưng bài báo cáo không tránh khỏi những sai lầm, thiếu sót rất mong sự thông cảm và góp ý của thầy và các bạn

Xin chân thành cảm ơn!

Trân trọng!

Trang 4

MỤC LỤC

CHƯƠNG 1: TỔNG QUAN 6

1.1 ĐẶT VẤN ĐỀ 6

1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ 6

1.3 PHẠM VI ĐỀ TÀI 6

1.4 PHƯƠNG PHÁP NGHIÊN CỨU-HƯỚNG GIẢI QUYẾT 6

1.4.1 Phương pháp nghiên cứu 6

1.4.2 Hướng giải quyết 6

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 8

1 TÌM HIỂU MSP430 8

2.1.1 TỔNG QUAN VỀ CẤU TRÚC VÀ CHỨC NĂNG HỌ MSP430 8

Giới thiệu 8

2.1.2 CÁC VÙNG ĐỊA CHỈ 9

2.1.2.1 Flash/ROM 10

2.1.2.2 RAM 10

2.1.2.3 Các module ngoại vi 10

2.1.2.4 Thanh ghi chức năng đặc biệt 10

2.1.3 TỔ CHỨC BỘ NHỚ 10

2.1.4 XỬ LÝ NGẮT 11

2.1.5 CÁC CHẾ ĐỘ HOẠT ĐỘNG 12

RISC 16 BIT CPU 13

2.1.6 GIỚI THIỆU BỘ XỬ LÝ TRUNG TÂM 13

2.1.6.1 Các thanh ghi CPU 14

2.1.6.2 Thanh ghi bộ đếm chương trình ( R0/PC) 15

2.1.6.3 Con trỏ ngăn xếp ( SP) 15

Thanh ghi trạng thái ( SR) 15

2.1.6.4 Thanh ghi sử dụng chung R4-R15 16

2.1.7 CÁC BỘ DAO ĐỘNG CƠ BẢN 16

2.1.7.1 Giới thiệu 16

2.1.7.2 Bộ dao động XT2 17

2.1.7.3 Bộ dao động số ( DCO) 18

Điều chỉnh tần số DCO: 18

Bộ điều khiển DCO 19

BCSCTL2, Basic Clock System Control Register 2 20

BCSCTL3, Basic Clock System Control Register 3 21

2.1.8 Các hoạt động vào/ra số 22

2.1.8.1 Thanh ghi dữ liệu vào PxIN 22

2.1.8.2 Thanh ghi dữ liệu ra PxOUT 22

2.1.8.3 Các thanh ghi định hướng PxDIR 22

2.1.8.4 Thanh ghi cho phép tăng/giảm điện trở PxREN 22

Thanh ghi chức năng lựa chọn PxSEL và PxSEL2 23

2.1.8.5 Những ngắt P1 và P2 23

2.1.8.6 Các thanh ghi I/O 24

2.1.9 TIMER A 25

2.1.9.1 Giới thiệu tổng quát Timer_A 25

2.1.9.2 Chế độ hoạt động của Timer_A 26

Up mode 27

Continuous mode 27

Up/Down mode 27

Trang 5

2.1.9.3 Các phương pháp Reset Timer_A 28

TAR, Timer_A Counter 28

TACCTLx, Capture/compare control 29

TACCRx, Timer_A capture/compare 30

TAIV, Timer_A Interrupt vector 31

2.1.10 BỘ BIẾN ĐỔI ADC10 31

2 TÌM HIỂU CẢM BIẾN DS18B20 32

2.2.1 Mô tả tính năng của DS1820: 32

2.2.2 Nguyên tắc hoạt động: 32

2.2.3 Tổ chức bộ nhớ: 33

2.2.4 Tổ chức bộ nhớ Scratchpad: 33

2.2.5 Trao đổi dữ liệu giữa vi điều khiển và DS1820 thông qua ba bước sau 33

CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU 35

3.1 SƠ ĐỒ KHỐI CỦA MẠCH 35

3.2 SƠ ĐỒ CHI TIẾT CỦA MẠCH 35

3.3 LƯU ĐỒ GIẢI THUẬT 36

3.4 CODE CHƯƠNG TRÌNH 36

3.5 KẾT QUẢ THỰC HIỆN ĐỀ TÀI 40

3.3.1 Ưu điểm 40

3.3.2 Khuyết điểm 40

TÀI LIỆU THAM KHẢO 41

Trang 6

CHƯƠNG 1: TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ

Khi khoa học công nghệ ngày càng phát triển thì con người ngày càng muốn

tự động hóa tất cả các máy móc trong cuộc sống Ví dụ, con người chế tạo ra các loại cảm biến, các loại vi xử lý để thu thập thông tin từ môi trường (nhiệt độ, độ ẩm,

áp suất, ) để cho vi xử lý (vi điều khiển) có thể điều khiển các máy móc từ các số liệu thu thập được Và để làm được điều này, chúng ta cần tìm hiểu các loại cảm biến và vi xử lý, đặc biệt là các loại cảm biến và vi xử lý mới trên thị trường để theo kịp công nghệ hiện đại Do đó, để hoàn thành môn học Kỹ thuật vi xử lý, em chọn

đề tài “Mạch đo nhiệt độ dùng MSP430” để làm đồ án tốt nghiệp Mạch sử dụng loại vi xử lý MSP430 mới xuất hiện trên thị trường và càm biến nhiệt độ DS18B20 cũng khá mới mẻ với sinh viên ngành điện tử

có thể sử dụng nó Hơn nữa, đề tài này sẽ sử dụng cảm biến DS18B20 cũng là một loại cảm biến nhiệt độ mới Do đó, nội dung đề tài thì đã cũ nhưng phương pháp thực hiện là mới hoàn toàn

1.4 PHƯƠNG PHÁP NGHIÊN CỨU-HƯỚNG GIẢI QUYẾT

Tìm hiểu vi xử lý MSP430 (cấu tạo, tập lệnh, cách lập trình, các ngôn ngữ để lập trình, ), tìm hiểu cảm biến DS18B20 (cấu tạo, cách thu dữ liệu, )

Sử dụng cảm biến DS18B20 để thu nhiệt độ, sử dụng MSP430G2553 để xử

lý dữ liệu, dùng ngôn ngữ lập trình C để lập trình, hiển thị nhiệt độ bằng LED 7

Trang 7

đoạn và mô phỏng các thiết bị bằng led đơn.

Trang 8

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

1 TÌM HIỂU MSP430 2.1.1 TỔNG QUAN VỀ CẤU TRÚC VÀ CHỨC NĂNG HỌ MSP430

Giới thiệu

MSP430 chứa 16 bit RISC CPU, các ngoại vi và hệ thống bộ định thời linh hoạt được kết nối với nhau theo cấu trúc VON-NEUMANN, có các Bus liên kết như: Bus địa chỉ bộ nhớ ( MAB), Bus dữ liệu bộ nhớ ( MDB) Đây là một bộ xử lý hiện đại với các mô đun bộ nhớ tương tự và những kết nối ngoại vi tín hiệu số, MSP430

đã đưa ra được những giải pháp tốt cho những nhu cầu ứng dụng với tín hiệu hỗn tạp

MSP430 có một số phiên bản như: MSP430x1xx, MSP430x2xx, MSP430x3xx, MSP430x4xx, MSP430x5xx Dưới đây là những đặc điểm tổng quát của họ vi điều khiển MSP430:

+ Cấu trúc sử dụng nguồn thấp giúp kéo dài tuổi thọ của Pin

- Duy trì 0.1µA dòng nuôi RAM

- Chỉ 0.8µA real- time clock

- 250 µA/ MIPS

+ Bộ tương tự hiệu suất cao cho các phép đo chính xác

- 12 bit hoặc 10 bit ADC-200 kskp, cảm biến nhiệt độ, Vref

- 12 bit DAC

- Bộ giám sát điện áp nguồn

+ 16 bit RISC CPU cho phép được nhiều ứng dụng, thể hiện một phần ở kích thước Code lập trình

- Thanh ghi lớn nên loại trừ được trường hợp tắt nghẽn tập tin khi đang làm việc

- Thiết kế nhỏ gọn làm giảm lượng tiêu thụ điện và giảm giá thành

- Tối ưu hóa cho những chương trình ngôn ngữ bậc cao như C, C++

- Có 7 chế độ định địa chỉ

- Khả năng ngắt theo véc tơ lớn

+ Trong lập trình cho bộ nhớ Flash cho phép thay đổi Code một cách linh hoạt, phạm vi rộng, bộ nhớ Flash còn có thể lưu lại như nhật ký của dữ liệu

+ Bộ định thời phụ tần số thấp: Hoạt động ở chế độ sẵn sàng sử dụng nguồn cực thấp

+ Bộ định thời chính ( Master Clock) tốc độ cao: Hoạt động xử lý tín hiệu hiệu suất cao

Trang 9

Hình I.2: Sơ đồ bộ nhớ của MSP430

Trang 10

2.1.2.1 Flash/ROM

Địa chỉ bắt đầu của Flash/ROM phụ thuộc vào độ lớn của Flash/ROM và còn tùy thuộc vào từng họ vi điều khiển Địa chỉ kết thúc của Flash/ROM là 0x1FFFFh Flash/ROM có thể sử dụng cho cả mã chương trình và dữ liệu Những bảng Byte hoặc Word có thể được tồn trử và sử dụng ngay trong Flash/ROM mà không cần copy vào RAM trước khi sử dụng chúng

Những bảng véc tơ được ánh xạ đến 16 Word phía trên của vùng địa chỉ Flash/ROM với ưu tiên ngắt cao nhất ở vùng địa chỉ cao nhất của Flash/ROM

mô đun ngoại vi 8 Bít

2.1.2.4 Thanh ghi chức năng đặc biệt

SFRs liên quan nhiều đến sự cho phép những tính năng của một số mô đun ngoại vi

và dùng để truyền những tín hiệu ngắt từ ngoại vi SFRs nằm ở 16 Byte thấp của vùng địa chỉ và được tổ chức bằng Byte SFRs chỉ có thể được truy cập bởi chỉ thị Byte

2.1.3 TỔ CHỨC BỘ NHỚ

Byte thì dùng để định vị trí của địa chỉ lẽ hoặc chẳn, còn Word thì chỉ sử dụng cho địa chỉ chẵn Vì vậy khi sử dụng những chỉ lệnh Word thì chỉ có địa chỉ chẵn thì được sử dụng Byte thấp của một Word luôn là số chẵn, Byte cao thì ở một số lẽ kế tiếp

Trang 11

INTERRUPT SOURCE

INTERRUPT FLAG

SYSTEM INTERRUPT

WORD

Power-up, external reset, watchdog, flash password, illegal instruction fetch

NMI, oscillator fault, flash memory access violation

device-specific device-specific device-specific Watchdog timer device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific device-specific

PORIFG RSTIFG WDTIFG KEYV

NMIIFG ACCVIFG OFIFG

WDTIFG

RESET

(non)-maskable (non)-maskable (non)-maskable

maskable

0FFFEh

0FFFCh

0FFFAh 0FFF8h 0FFF6h 0FFF4h 0FFF2h 0FFF0h 0FFEEh 0FFECh 0FFEAh 0FFE8h 0FFE6h 0FFE4h 0FFE2h 0FFE0h 0FFDEh 0FFDCh 0FFDAh 0FFD8h 0FFD6h 0FFD4h 0FFD2h 0FFD0h 0FFCEh 0FFCCh

Trang 12

device-specific device-specific device-specific device-specific device-specific device-specific

0FFCAh 0FFC8h 0FFC6h 0FFC4h 0FFC2h 0FFC0h

2.1.5 CÁC CHẾ ĐỘ HOẠT ĐỘNG

Họ MSP430 được thiết kế cho những ứng dụng sử dụng nguồn thấp và sử dụng ở nhiều chế độ hoạt động khác nhau Các chế độ hoạt động khác nhau ở 3 đặc điểm chính:

+ Mức độ sử dụng nguồn thấp

+ Tốc độ và lưu lượng dữ liệu

+ Mức độ làm nhỏ đi lượng tiêu thụ điện của các thiết bị ngoại vi

Hình II.7: Dòng tiêu thụ của MSP430x1xx ở các chế độ hoạt động

Ở chế độ nguồn thấp LPM0 đến LPM4 được thiết lập với các Bit SCG0, SCG1, OSCOFF, CPUOFF trong thanh ghi trạng thái Ưu điểm của các Bit điều khiển SCG0, SCG1, OSCOFF và CPUOFF trong thanh ghi trạng thái là chế độ hoạt động hiện tại sẽ được lưu trong Stack trong suốt quá trình ngắt diễn ra Chương trình sẽ quay về chế độ hoạt động trước đó nếu giá trị được lưu trong thanh ghi trạng thái không bị thay đổi trong suốt quá trình ngắt Chương trình có thể quay về một chế độ hoạt động khác nếu có sự thay đổi giá trị được lưu bên trong Stack trong suốt quá trình ngắt diễn ra Các Bít điều khiển và Stack có thể được truy cập bởi bất kì lệnh nào Các chế độ hoạt động của họ MSP430 được trình bày ở Bảng II.2

Mode SCG1 SCG0 OSCOFF CPUOFF CPU and Clocks Status

Trang 13

Active LPM0 LPM1 LPM2 LPM3 LPM4

CPU off, MCLK off, SMCLK

on, ACKL on

CPU off, MCLK off, SMCLK

on, ACKL on

CPU off, MCLK off, SMCLK off, DCO off, ACKL on

CPU off, MCLK off, SMCLK

on, DCO off, ACKL on

CPU off, MCLK off, SMCLK off, DCO off, ACLK off

Bảng II.2: Các chế độ hoạt động cơ bản của MSP430

RISC 16 BIT CPU 2.1.6 GIỚI THIỆU BỘ XỬ LÝ TRUNG TÂM

CPU của họ vi điều khiển MSP430 mang những đặc điểm thiết kế đặc biệt như kĩ thuật tính toán rẽ nhánh, sử dụng ngôn ngữ lập trình cấp cao như C, C++ CPU còn

có thể định địa chỉ của một vùng địa chỉ bằng cách đánh dấu vùng nhớ

CPU mang những đặc điểm sau:

+ Cấu trúc RISC với 27 lệnh chỉ thị và 7 chế độ định địa chỉ

+ Đầy đủ thanh ghi dữ liệu bao gồm thanh ghi bộ đếm chương trình, thanh ghi trạng thái, thanh ghi con trỏ ngăn xếp

Trang 14

Hình III.1: Sơ đồ các khối chức năng của CPU + Hơn 16 bit thanh ghi tập tin giúp giảm bớt sự truy cập bộ nhớ

+ 16 bit Bus địa chỉ cấp phát dữ liệu trực tiếp

+ 16 bit Bus dữ liệu cấp phát trực tiếp những thao tác trên khối thông tin

+ Bộ sinh hằng ( Constant Generator ) cung cấp 6 giá trị tức thời thường sử dụng nhất và làm giảm được kích thước của Code lập trình

2.1.6.1 Các thanh ghi CPU

CPU có 16 thanh ghi 16 bit, 4 thanh ghi đầu là R0, R1,R2 và R3 là các thanh ghi có chức năng đặc biệt, trong khi 12 thanh ghi còn lại ( Từ R4 đến R15) dùng với mục đích sử dụng chung Nói chung 16 thanh ghi này là đặc trưng cho một bộ xử lý dùng tập lệnh rút gọn RISC CPU Sau đây là tóm tắt về các tính năng của các thanh ghi trong CPU:

Trang 15

2.1.6.2 Thanh ghi bộ đếm chương trình ( R0/PC)

Thanh ghi này chứa các lệnh kế tiếp được thực thi Mỗi lệnh này sử dụng một số chẵn của những Byte ( hai, bốn hoặc sáu) và PC được gia tăng một cách phù hợp Các lệnh này chứa dung lượng trong khoảng 64 KB và PC sắp xếp chúng theo địa chỉ

Hình III.2: Bộ đếm chương trình

2.1.6.3 Con trỏ ngăn xếp ( SP)

Khi một chương trình con được gọi, CPU nhảy đến chương trình con đó và thực thi

nó, sau đó quay trở về chương trình chính Do đó phải có một bộ nhớ tạm để lưu giữ địa chỉ của chương trình con đó trước khi CPU nhảy đến Đó là mục đích cơ sở của con trỏ ngăn xếp Có nhiều bộ xử lý sử dụng một bộ nhớ dành riêng cho con trỏ ngăn xếp nhưng với họ MSP430 thì sử dụng những địa chỉ cao của RAM Khi nhập địa chỉ vào hay lấy ra thì con trỏ ngăn xếp tự động điều chỉnh tăng lên hay giảm xuống

Thanh ghi trạng thái ( SR)

Thanh ghi trạng thái ( SR/R2) được sử dụng như là một thanh ghi nguồn hoặc thanh ghi đích gồm hệ thống các cờ ( là những Bit đơn) Một số cờ thường sử dụng là C,

Z, N và V Chúng được sử dụng trong các thuật toán hoặc các thao tác logic

Hình III.6: Mô tả về các Bit của thanh ghi trạng thái

+ Cờ V: Cờ tràn Cờ này được thiết lập mỗi khi kết quả của một phép tính số có dấu

quá lớn tạo ra Bit bậc cao làm tràn Bit dấu Cờ tràn chỉ được dùng để phát hiện lỗi trong các phép toán số học có dấu

+ SCG1: Bộ định thời hệ thống 1 Khi Bit này được thiết lập sẽ làm tắt SMCLK

+ SCG0: Bộ định thời hệ thống 0 Khi Bít này được thiết lập sẽ làm tắt DCO nếu

DCOCLK không được sử dụng cho MCLK và SMCLK

+ OSCOFF: Tắt bộ dao động Khi Bít này được thiết lập sẽ làm tắt bộ dao động

thạch anh LFXT1 khi LFXT1CLK không sử dụng cho MCLK hoặc SMCLK

+ CPUOFF: Khi Bít này được thiết lập sẽ làm tắt CPU

Trang 16

+ GIE: Ngắt cho phép Khi Bít này được Set thì cho phép ngắt có che Khi ta Reset

thì ngắt có che này mất tác dụng

+ Cờ Z: Zero Bít Cờ Z được thiết lập khi kết quả của một Byte hoặc Từ là 0 và

được Clear khi kết quả khác 0

+ Cờ C: Cờ carry Cờ này thông thường dùng cho các lệnh toán học, được thiết lập

khi có một số nhớ sinh ra bởi phép cộng hoặc số mượn bởi phép trừ và được Clear nếu không có số nhớ

+ Cờ N: Phủ định Bít Cờ này được thiết lập khi kết quả của một Byte hoặc Word bị

phủ định và được Clear khi kết quả ngược lại

2.1.6.4 Thanh ghi sử dụng chung R4-R15

12 thanh ghi từ R4 đến R15 không có mục đích chuyên dụng, các thanh ghi này có thể sử dụng làm thanh ghi dữ liệu hoặc địa chỉ đều được vì đều là các giá trị 16 Bit,

từ đó giúp đơn giản hóa các hoạt động Một số qui ước nên được làm theo nếu chương trình được viết bằng hợp ngữ Những thanh ghi đặc biệt này nên được sử dụng để di chuyển các tham số và trả về các kết quả Tất cả các vấn đề này đều được giải quyết nếu chương trình được viết bằng C

2.1.7 CÁC BỘ DAO ĐỘNG CƠ BẢN 2.1.7.1 Giới thiệu

MSP430 sử dụng bộ định thời mà hệ thống có giá rẻ và sử dụng nguồn cực thấp Có

3 xung Clock bên trong nên người sử dụng có thể lựa chọn sao cho cân bằng giữa hiệu suất làm việc với nguồn điện thế tiêu thụ Một mô đun bộ định thời có 2 hoặc 3 nguồn xung Clock:

+ LFXT1CLK: Bộ dao động tần số thấp/ tần số cao, nó có thể được sử dụng với

tần số thạch anh 32768 Hz hoặc tần số thạch anh chuẩn, hoặc bộ cộng hưởng từ

450 KHz đến 8 MHz

+ XT2CLK: Bộ dao động tần số cao Bộ dao động này có thể được sử dụng với

thạch anh chuẩn, bộ cộng hưởng, hoặc nguồn xung Clock bên ngoài có tần số từ

450 KHz đến 8 MHz

+ DCOCLK: Bộ dao động được điều khiển bằng kĩ thuật số ( DCO)

Ba tín hiệu xung Clock ở trên có được là từ những mô đun Clock cơ bản như:

+ ACLK: Nguồn xung Clock bổ trợ ACLK được lưu trong bộ đệm LFXT1CLK và

được chia 1, 2, 4 hoặc 8 ACLK ở chương trình có thể được chọn cho những mô đun ngoại vi riêng rẽ

Trang 17

Hình IV.1: Sơ đồ khối chức năng của bộ dao động MSP430

+ MCLK: Bộ định thời chủ MCLK có thể được chọn như là LFXT1CLK,

XT2CLK ( nếu sẵn có), hoặc DCOCLK MCLK được chia 1, 2, 4 hoặc 8 MCLK thì được sử dụng bởi CPU và hệ thống

+ SMCLK: Bộ định thời con SMCLK có thể được chọn như là LFXT1CLK,

XT2CLK ( nếu sẵn có), hoặc DCOCLK SMCLK được chia 1, 2, 4 hoặc 8 và được chọn cho những mô đun ngoại vi riêng rẽ

sẽ được thiết lập cản trở CPU bằng cách khóa XT2CLK

Trang 18

Điều chỉnh tần số DCO:

Sau một PUC, RSELx = 7 và DCOx = 3, DCO bắt đầu với một tần số trung bình SMCLK và MCLK có nguồn từ DCOCLK Bởi vì CPU thực thi mã chương trình từ MCLK, mà MCLK thì lại bắt nguồn từ DCO Code chương trình được thực thi bắt đầu từ PUC và chậm hơn 2µs

Tần số của DCOCLK được thiết lập bởi các tính năng sau:

+ Bốn Bit RSELx cho phép lựa chọn 16 dãy tần số cho DCO Những dãy tần số này thì được mặc định cho từng họ MSP430 và được trình bày trong Datasheet của từng loại

+ Ba Bit DCOx của dãy DCO được lựa chọn bởi các bit RSELx đến 8 bước tần số được cách biệt xấp xỉ 10%

Trang 19

+ Năm Bit MODx , chuyển đổi tần số được chọn bởi các bit DCOx và tần số kế tiếp cao hơn được thiết lập bởi DCOx + 1 Khi DCOx = 07h thì những bit MODx không chịu ảnh hưởng bởi vì DCO đã được thiết lập cao nhất cho việc lựa chọn dãy RSELx

Hình IV.5: Dãy DCOx và bước RSELx Đối với MSP430F2xx được hiệu chỉnh thanh ghi DCOCTL và BCSCTL1 cho việc tồn trữ những tần số đặc biệt trong bộ nhớ thanh ghi A Sử dụng những hiệu chỉnh thiết lập, thông tin được sao chép vào thanh ghi DCOCTL và BCSCTL1 Việc hiệu chỉnh này ảnh hưởng đến các Bit DCOx, MODx, RSELx và xóa các Bit đó, ngoại trừ XT2OFF thì được thiết lập trở lại Những Bit của BCSCTL1 có thể được đặt hoặc xóa bởi lệnh BIS.B hoặc BIC.B

; Set DCO to 1 MHz:

MOV.B &CALBC1_1MHZ,&BCSCTL1 ; Set range MOV.B &CALDCO_1MHZ,&DCOCTL ; Set DCO step + modulation

Bộ điều khiển DCO

Bộ điều khiển là sự trộn của 2 tần số DCO là fDCO và fDCO+ cung cấp một tần số phụ

có ích giữa fDCO và fDCO+ và mở rộng năng lượng Clock, giảm sự nhiễu điện từ ( EMI) Bộ điều khiển pha trộn fDCO và fDCO+ cho 32 chu kỳ DCOCLK và được thiết lập với Bit MODx Khi MODx = 0 thì bộ điều khiển tắt

Phương trình của bộ điều khiển :

t =(32− MODx) × tDCO + MODx × tDCO +1

Bởi vì fDCO thấp hơn tần số hiệu dụng và fDCO+1 thì cao hơn tần số hiệu dụng, độ sai lệch tần số gần bằng 0 Sự sai lệch tần số hiệu dụng bằng 0 mỗi 32 chu kỳ DCOCLK

Bộ điều khiển DCO được thiết lập bởi chương trình DCOCLK có thể được so sánh với tần số ổn định của giá trị đã biết và được hiểu chỉnh với các Bit DCOx, RSELx, MODx

Trang 20

Hình IV.6: Biểu đồ điều khiển DCO

BCSCTL2, Basic Clock System Control Register 2

+ SELMx: Bit 6-7, lựa chọn nguồn của MCLK

00: DCOCLK 01: DCOCLK 10: XT2CLK khi XT2 đang có sẵn trên Chip LFXT1CLK hoặc VCLOCK nếu XT2 không có sẵn trên Chip

11: LFXT1CLK hoặc VCLOCK

+ DIVMx: Bit 4-5, bộ chia MCLK

00: chia 1 01: chia 2 10: chia 3 11: chia 4

+ SELS: Bit 3, lựa chọn nguồn SMCLK

0: DCOCLK

Ngày đăng: 26/12/2017, 13:37

TỪ KHÓA LIÊN QUAN

w