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

Đề tài tìm hiểu vi điều khiển arm7 lpc2214

32 812 8
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Đề Tài Tìm Hiểu Vi Điều Khiển Arm7 Lpc2214
Tác giả Dương Huỳnh Bảo
Trường học Trường Đại Học Khoa Học Tự Nhiên
Chuyên ngành Kỹ thuật điện tử
Thể loại Báo cáo đồ án môn học
Định dạng
Số trang 32
Dung lượng 809,09 KB

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

Nội dung

LPC2214 là vi điều khiển 32bit hỗ trợ thời gian thực và trace nhúng xây dựng trên cấu trúc của ARM7TDMI-S. LPC2214 có 256kB bộ nhớ Flash tốc độ cao, vùng nhớ nội mở rộng tới 128 bit địa chỉ, cấu hình c

Trang 1

BÁO CÁO ĐỒ ÁN MÔN HỌC 1

ĐỀ TÀI TÌM HIỂU VI ĐIỀU KHIỂN

ARM7 LPC2214

a&b

PHẦN 1: GIỚI THIỆU CHUNG

A Giới thiệu chung:

1 Khái quát: (general description trang 15 usermanual)

LPC2214 là vi điều khiển 32bit hỗ trợ thời gian thực và trace nhúng xây dựng trên cấu trúc của ARM7TDMI-S LPC2214 có 256kB bộ nhớ Flash tốc độ cao, vùng nhớ nội

mở rộng tới 128 bit địa chỉ, cấu hình cho phép thực thi các chỉ lệnh 32bit chỉ trong 1 chu

kì xung nhịp Để tiện cho những ứng dụng nhỏ, LPC2214 hỗ trợ tập lệnh 16bit thu gọn (Thumb) Với chế độ thu gọn này, kích thước tập lệnh chỉ còn 70% so với tập lệnh 32bit làm cùng chức năng

Đóng gói 144 chân, sử dụng năng lượng ít, timer 32bit, 8 kênh ADC, 9 nguồn ngắt ngoài, LPC2214 thích hợp cho những ứng dụng công nghiệp, hóa học, nghiên cứu điều khiển, và cả thương mại

Hỗ trợ cấu trúc JTAP, ISP, ICP cho phép mở rộng các ứng dụng nhúng

2 Các tính năng cơ bản:( features trang 15 usermanual)

Vi điều khiển ARM7TDMI-S 32bit, có hỗ trợ tập lệnh 16bit, đóng gói 144chân (pin)

16kB SRAM trong chip

256kB bộ nhớ Flash có thể lập trình (chu kì ghi/xóa ít nhất 10.000 lần)

8 kênh ADC 10bit với thời gian chuyển đổi 2.44ms

2 Timer 32bit <với 4 kênh capture và compare>, 6kênh PWM, đồng hồ thời gian thực và Watchdog

Giao diện nối tiếp gồm 2 kênh UART <16C550>, I2C tốc độ cao <400kbits/s>, 2 kênh SPI

Xung nhịp CPU tối đa 60MHz có sẵn nhờ vòng khóa pha trên chip có thể lập trình được(PLL)

Vector ngắt có địa chỉ truy cập và các mức ưu tiên

Đến 144 chân xuất/nhập đa dụng ở mức 5V Có tới 12 ngắt ngoài độc lập

nhau<chức năng EIN và CAP>

Dao động trên chip với tần số từ 1MHz đến 30MHz

2 chế độ tiết kiệm nguồn: Idle và Power Down

Đưa vi điều khiển vào lại chế độ hoạt động bình thường từ Power Down nhờ ngắt ngoài

Chức năng sử dụng tối ưu nguồn bằng cách cho phép/không cho phép từng ngoại

vi riêng lẻ

Trang 2

+Cổng thông tin, truyền thông đa phương tiện

+Mục đích học thuật, nghiên cứu ứng dụng

+Đa dụng

4 Sơ qua về cấu trúc LPC2214:

LPC2214 là nhân xử lý ARM7TDMI-S hỗ trợ giao tiếp bus AMBA<advanced

microcontroller bus architecture>Ngoại vi AHB cho phép kết nối tới 2GB data Mỗi

vùng nhớ AHB có 16kB, AVB cũng có cấu tạo tương tự

Sự kết nối các mảng địa chỉ của LPC2214 được khối chân kết nối<Pin Connection

block> điều khiển Khối này có thể lập trình bằng phần mềm

5 ARM7TDMI-S processor:

o Kiến trúc tập lệnh RISC 32 bit, chu kì dòng chảy lệnh có 3 tác vụ, hỗ trợ định dạng Thumb

o Hỗ trợ 2 tập lệnh cho 32bit và 16bit<Thumb>

6 Hệ thống bộ nhớ Flash trên chip:

Hỗ trợ 256kB flash trên chip, có thể lập trình ISP, IAP, hỗ trợ giao tiếp JTAG, nâng cao tính linh hoạt cho các chương trình của người dùng

7 Hệ thống bộ nhớ SRAM trên chip:

Hỗ trợ 16kB SRAM, truy xuất theo byte, word, double word

SRAM sử dụng điều khiển phối hợp bộ đệm phản hồi để ngăn CPU vào tình trạng đứng máy khi truy cập dữ liệu ngược Bộ đệm phản hồi luôn giữ giá trị cuối của phần mềm vào SRAM Dữ liệu này chỉ được ghi vào SRAM khi phần mềm yêu cầu quá trình ghi nhận khác Nếu quá trình Reset xảy ra, thanh ghi SRAM sẽ không phản ánh đúng giá trị ghi vào SRAM ngay trước khi Reset hệ thống Muốn truy cập đúng dữ liệu, phần mềm cần đưa ra đúng mã nhận dạng Vì thế, trước khi vào chế độ Idle hay Power-down, giá trị này được ghi vào bộ nhớ đệm<dummy> để sau khi Reset, sẽ truy cập đúng giá trị mong muốn

8 Sơ đồ khối của LPC2214:

Trang 3

Hình 1: Sơ đồ khối của LPC2214

§ Vùng bus ngoại vi AHB/VPB không được định nghĩa

§ Bảng mô tả chức năng các chân của LPC2214

Port 0: port 0 gồm 32-bit I/O , có thể điều

khiển riêng lẻ từng bit Hoạt động của các chân của port 0 phụ thuộc vào chức năng từng chân được chọn thông qua khối kết nối chân

Trang 4

21, 23, 25, 32, 33 (Pin Connect Block) Chân 26 và 31 của port

0 không có hiệu lực

Note: Port 0 có thể sử dụng như là ngõ vào

của khối A/D (P0.27, P0.28, P0.29, P0.30) 5V Nếu như không sử dụng bộ chuyển đổi A/D thì các chân này cũng có thể sử dụng như các chân I/O 5V Xem thêm phần A/D

I EINT0: ngõ vào ngắt ngoài 0

I/O SCL: I2C clock I/O, ngõ ra để hở

I CAP0.0: Ngõ vào Capture của Timer0, kênh

0 I/O SDA: I2C dữ liệu I/O, ngõ ra để hở

O MAT0.0: ngõ ra của Timer 0, kênh 0

I EINT1: Ngõ vào ngắt ngoài thứ 1

I/O SCK0: Serial Clock của SPI0 SPI clock ngõ

ra từ master hay ngõ vào của slave

I CAP0.1: ngõ vào capture của TIMER0, kênh

1 I/O

MISO0:Ngõ vào master ngõ ra slave của

SPI0 Dữ liệu vào của SPI master hay dữ liệu ngõ ra từ SPI slave

O MAT0.1: ngõ ra của TIMER0, kênh 1

I/O

MOSI0:Ngõ ra master ngõ vào slave của

SPI0 Dữ liệu ra của SPI master hay dữ liệu ngõ vào từ SPI slave

I EINT2: ngõ vào ngắt ngoài thứ 2

O TxD1: ngõ ra chuyển đổi của UART1

I EINT3: ngõ vào ngắt ngoài 3

O RST1: yêu cầu gửi dữ liệu ra cho UART1

I CAP1.0: ngõ vào capture timer1 kênh 0

Trang 5

I CTS1: xóa để gửi tín hiệu vào cho UART1

I CAP1.1: ngõ vào capture timer1 kênh 1

I DST1: sẵn sàng nhận dữ liệu vào cho UART1

O MAT1.0: ngõ ra của Timer 1 kênh 0

O DTR1: sẵn sàng tải dữ liệu ra cho UART1

O MAT1.1: ngõ ra của Timer 1 kênh 1

I DCD1: ngõ vào nhận dữ liệu của UART1

I EINT1: ngõ vào ngắt ngoài 1

I RI1: ngõ vào chỉ thị của UART1

I EINT2: Ngõ vào ngắt ngoài 2

I EINT0: Ngõ vào ngắt ngoài 0

O MAT0.2: ngõ ra của Timer 0 kênh 2

ra từ master hay ngõ vào của slave

O MAT1.2: ngõ ra của Timer 1 kênh 2

I CAP1.3: ngõ ra của capture của Timer 1 kênh

3 I/O

MISO1:Ngõ vào master ngõ ra slave của

SPI1 Dữ liệu vào của SPI master hay dữ liệu ngõ ra từ SPI slave

O MAT1.3: ngõ ra của Timer 1 kênh 3

O MAT1.2: ngõ ra của Timer 1 kênh 2

I/O

MOSI1:Ngõ ra master ngõ vào slave của

SPI1 Dữ liệu ra của SPI master hay dữ liệu ngõ vào từ SPI slave

O CAP1.2: ngõ ra của capture của Timer 1 kênh

2

O MAT1.3: ngõ ra của Timer 1 kênh 3

I SSEL1: chọn lựa slave cho SPI1 Chọn lựa cách giao tiếp với SPI như là slave

Trang 6

O MAT0.1: ngõ ra của Timer 0 kênh 1

I AIN1 : bộ chuyển đổi A/D, ngõ vào 1 Được nối nối tiếp với ngõ vào tương tự

I CAP0.2: ngõ vào của capture của Timer 0 kênh 2

O MAT0.2: ngõ ra của Timer 0 kênh 2

I AIN2 : bộ chuyển đổi A/D, ngõ vào 2 Được nối nối tiếp với ngõ vào tương tự

I CAP0.3: ngõ vào của capture của Timer 0 kênh 3

O MAT0.3: ngõ ra của Timer 0 kênh 3

I AIN3 : bộ chuyển đổi A/D, ngõ vào 3 Được nối nối tiếp với ngõ vào tương tự

I CAP0.0: ngõ vào của capture của Timer 0 kênh 0

Port 1: port 1 gồm 32-bit I/O, có thể điều

khiển riêng lẻ từng bit Hoạt động của các chân của port 1 phụ thuộc vào chức năng từng chân được chọn thông qua khối kết nối chân (Pin Connect Block) Chân 2 đến 31 của port

1 không có hiệu lực

P1.0 91 O CS0 : Chip Select 0 tác động mức thấp

vào/ra chuẩn với điện trở kéo lên bên trong

vào/ra chuẩn với điện trở kéo lên bên trong

vào/ra chuẩn với điện trở kéo lên bên trong

vào/ra chuẩn với điện trở kéo lên bên trong P1.20 102 O TRACESYNC đồng bộ Port vào/ra chuẩn

với điện trở kéo lên bên trong

P1.21 95 O PIPESTAT0 Pipeline Status, bit 0 Port

vào/ra chuẩn với điện trở kéo lên bên trong P1.22 86 O PIPESTAT1 Pipeline Status, bit 1 Port

vào/ra chuẩn với điện trở kéo lên bên trong P1.23 82 O PIPESTAT2 Pipeline Status, bit 2 Port

Trang 7

vào/ra chuẩn với điện trở kéo lên bên trong

với điện trở kéo lên bên trong

EXTIN0 ngõ vào kích ngoài (External

Trigger) Port vào/ra chuẩn với điện trở kéo lên bên trong

P1.26 52 I/O RTCK ngõ ra trả về Test Clock

P1.27 144 O TDO Ngõ ra Test Data của giao tiếp JTAG

P1.28 140 I TDI Ngõ vào Test Data của giao tiếp JTAG

P1.30 113 I TMS Test Mode Select của giao tiếp JTAG

Port 2: port 2 gồm 32-bit I/O , có thể điều

khiển riêng lẻ từng bit Hoạt động của các chân của port 2 phụ thuộc vào chức năng từng chân được chọn thông qua khối kết nối chân (Pin Connect Block

Note: Port 2 có thể sử dụng như là ngõ vào

của khối A/D (P2.30 và P2.31) 5V Nếu như không sử dụng bộ chuyển đổi A/D thì các chân này cũng có thể sử dụng như các chân I/O 5V Xem thêm phần A/D

P2.0 98 I/O D0: line 0 dữ liệu bộ nhớ ngoài

P2.1 105 I/O D1: line 1 dữ liệu bộ nhớ ngoài

P2.2 106 I/O D2: line 2 dữ liệu bộ nhớ ngoài

P2.3 108 I/O D3: line 3 dữ liệu bộ nhớ ngoài

P2.4 109 I/O D4: line 4 dữ liệu bộ nhớ ngoài

P2.5 114 I/O D5: line 5 dữ liệu bộ nhớ ngoài

P2.6 115 I/O D6: line 6 dữ liệu bộ nhớ ngoài

P2.7 116 I/O D7: line 7 dữ liệu bộ nhớ ngoài

P2.8 117 I/O D8: line 8 dữ liệu bộ nhớ ngoài

P2.9 118 I/O D9: line 9 dữ liệu bộ nhớ ngoài

P2.10 120 I/O D10: line 10 dữ liệu bộ nhớ ngoài

P2.11 124 I/O D11: line 11 dữ liệu bộ nhớ ngoài

P2.12 125 I/O D12: line 12 dữ liệu bộ nhớ ngoài

P2.13 127 I/O D13: line 13 dữ liệu bộ nhớ ngoài

P2.14 129 I/O D14: line 14 dữ liệu bộ nhớ ngoài

P2.15 130 I/O D15: line 15 dữ liệu bộ nhớ ngoài

P2.16 131 I/O D16: line 16 dữ liệu bộ nhớ ngoài

P2.17 132 I/O D17: line 17 dữ liệu bộ nhớ ngoài

P2.18 133 I/O D18: line 18 dữ liệu bộ nhớ ngoài

P2.19 134 I/O D19: line 19 dữ liệu bộ nhớ ngoài

P2.20 136 I/O D20: line 20 dữ liệu bộ nhớ ngoài

P2.21 137 I/O D21: line 21 dữ liệu bộ nhớ ngoài

P2.22 1 I/O D22: line 22 dữ liệu bộ nhớ ngoài

Trang 8

P2.23 10 I/O D23: line 23 dữ liệu bộ nhớ ngoài

P2.24 11 I/O D24: line 24 dữ liệu bộ nhớ ngoài

P2.25 12 I/O D25: line 25 dữ liệu bộ nhớ ngoài

P2.28 17 I/O D28: line 28 dữ liệu bộ nhớ ngoài

P2.29 18 I/O D29: line 29 dữ liệu bộ nhớ ngoài

71,66-

44,41,40,36,35,30-27,97,96

I/O

Port 2: port 2 gồm 32-bit I/O , có thể điều

khiển riêng lẻ từng bit Hoạt động của các chân của port 2 phụ thuộc vào chức năng từng chân được chọn thông qua khối kết nối chân (Pin Connect Block)

Note: Port 2 có thể sử dụng như là ngõ vào

của khối A/D (P3.28 và P3.29) 5V Nếu như không sử dụng bộ chuyển đổi A/D thì các chân này cũng có thể sử dụng như các chân I/O 5V Xem thêm phần A/D

P3.0 89 I/O A0: line 0 địa chỉ bộ nhớ ngoài

P3.1 88 I/O A1: line 1 địa chỉ bộ nhớ ngoài

P3.2 87 I/O A2: line 2 địa chỉ bộ nhớ ngoài

P3.3 81 I/O A3: line 3 địa chỉ bộ nhớ ngoài

P3.4 80 I/O A4: line 4 địa chỉ bộ nhớ ngoài

P3.5 74 I/O A5: line 5 địa chỉ bộ nhớ ngoài

P3.6 73 I/O A6: line 6 địa chỉ bộ nhớ ngoài

P3.7 72 I/O A7: line 7 địa chỉ bộ nhớ ngoài

P3.8 71 I/O A8: line 8 địa chỉ bộ nhớ ngoài

P3.9 66 I/O A9: line 9 địa chỉ bộ nhớ ngoài

P3.10 65 I/O A10: line 10 địa chỉ bộ nhớ ngoài

P3.11 64 I/O A11: line 11 địa chỉ bộ nhớ ngoài

P3.12 63 I/O A12: line 12 địa chỉ bộ nhớ ngoài

P3.13 62 I/O A13: line 13 địa chỉ bộ nhớ ngoài

P3.14 56 I/O A14: line 14 địa chỉ bộ nhớ ngoài

P3.15 55 I/O A15: line 15 địa chỉ bộ nhớ ngoài

P3.16 53 I/O A16: line 16 địa chỉ bộ nhớ ngoài

P3.17 48 I/O A17: line 17 địa chỉ bộ nhớ ngoài

P3.18 47 I/O A18: line 18 địa chỉ bộ nhớ ngoài

P3.19 46 I/O A19: line 19 địa chỉ bộ nhớ ngoài

Trang 9

P3.20 45 I/O A20: line 20 địa chỉ bộ nhớ ngoài

P3.21 44 I/O A21: line 21 địa chỉ bộ nhớ ngoài

P3.22 41 I/O A22: line 22 địa chỉ bộ nhớ ngoài

P3.23 40 I/O A23: line 23 địa chỉ bộ nhớ ngoài

CS3: Chân Chip Select 3 tác động mức thấp

(Bank 3 địa chỉ trong khoảng 8300 0000 –

83FF FFFF)

CS2: Chân Chip Select 2 tác động mức thấp

(Bank 2 địa chỉ trong khoảng 8200 0000 –

82FF FFFF)

CS1: Chân Chip Select 1 tác động mức thấp

(Bank 1 địa chỉ trong khoảng 8100 0000 –

AIN7: bộ chuyển đổi A/D, ngõ vào 7 Được

nối nối tiếp với ngõ vào tương tự

AIN6: bộ chuyển đổi A/D, ngõ vào 6 Được

nối nối tiếp với ngõ vào tương tự

P3.30 97 O BLS1: chân chọn Byte Lane tác động mức

thấp (Bank1) P3.31 96 O BLS0: chân chọn Byte Lane tác động mức

thấp (Bank0)

139 I Vssa: Analog Ground:0V dùng để giảm nhiễu

138 I Vssa_pll: PLL Analog Ground:0V dùng để

94,104,112,119 I V3: nguồn cung cấp 3.3V cho I/O port

14 I V3A: nguồn analog 3.3V cho I/O port dùng để giảm nhiễu

§

Trang 10

B Khối điều khiển hệ thống<System Control Block>:

1 Khái quát:

Khối điều khiển hệ thống có một số chức năng và thanh ghi có quan hệ với một số

thiết bị ngoại vi:

X1 Input Ngõ vào nguồn dao động

X2 Ra Ngõ ra của tinh thể dao động từ bộ khuyếch đại dao động

EINT0 Vào

-Ngõ vào ngắt ngoài 0 Có thể dùng chức năng này để wake hệ thống từ các chế

độ tiết kiệm nguồn<power down hoặc Idle>

-P0.1 và P0.16 có thể được chọn để thực hiện chức năng này

-Mức thấp trên các chân này ngay sau khi Reset ngoài sẽ cấu hình cho phần cứng ngoài yêu cầu vào ISP

EINT1 Vào Ngắt ngoài 1

Các chân P0.3 và P0.14 thực hiện chức năng này

EINT2 Vào Ngắt ngoài 2

Các chân P0.7 và P0.15 thực hiện chức năng này

EINT3 Vào Ngắt ngoài 3

Các chân P0.9, P0.20 và P0.30 thực hiện chức năng này

RESET Vào Ngõ vào Reset ngoài, mức thấp trên chân này sẽ đưa chip vào chế độ Reset:

các ngoại vi vào trạng thái mặc định, vi xử lý bắt đầu từ địa chỉ 0x0000 0000

Bảng 1: Khái quát các chân chức năng

3 Các thanh ghi chức năng:

Ngắt ngoài

EXTINT Thanh ghi chứa cờ ngắt ngoài Đọc/Ghi 0 0xE01FC140 EXTWAKE Thanh ghi Wakeup ngắt ngoài Đọc/Ghi 0 0xE01FC144 EXTMODE Thanh ghi định chế độ ngắt ngoài Đọc/Ghi 0 0xE01FC148 EXTPOLAR Thanh ghi phân cực (mức/cạnh) ngắt ngoài Đọc/Ghi 0 0xE01FC14C

Điều khiển phân vùng bộ nhớ

MEMMAP Điều khiển phân vùng ngắt ngoài Đọc/Ghi 0 0xE01FC040

Vòng khóa pha

PLLCON Thanh ghi điều khiển PLL Đọc/Ghi 0 0xE01FC080 PLLCFG Cấu hình thanh ghi PLL Đọc/Ghi 0 0xE01FC084 PLLSTAT Thanh ghi trạng thái PLL Chỉ đọc 0 0xE01FC088 PLLFEED Thanh ghi cấp giá trị PLL Chỉ ghi NA 0xE01FC08C

Điều khiển nguồn

PCON Thanh ghi điều khiển nguồn Đọc/Ghi 0 0xE01FC0C0

1 Không bao gồm các bit dự trữ

Trang 11

PCONP Điều khiển nguồn cho ngoại vi Đọc/Ghi 0x3BE 0xE01FC0C4

Bộ chia bus ngoại vi VPB

VPBDIV Điều khiển chia bus ngoại vi VPB Đọc/Ghi 0 0xE01FC100

Bảng 2: Khái quát về thanh ghi điều khiển hệ thống

4 Nguồn dao đông:

Cấu hình trên chip cho phép chọn dao động tần số từ 1MHz-30MHz Thường gặp dạng

nguồn dao động ngoài như hình vẽ dưới:

Hình 2: Chọn dao động từ nguồn ngoài (a) Hình 3: Chọn tần số hoạt động từ nguồn thạch anh ngoài (b)

Hình 4: Thuật toán chọn tần số dao động của MCU

5 Ngõ vào ngắt ngoài:

LPC2214 có 4 ngõ vào ngắt ngoài được chọn trên các chân chức năng Các chân

chức năng này có thể được chọn để wakeup hệ thống khi vi xử lý dang ở chế độ tiết kiệm

nguồn

5.1 Khái quát các thanh ghi:

Chức năng ngắt ngoài dùng 4 thanh ghi đi kèm với nó Thanh ghi EXINT chứa

các cờ ngắt và thanh ghi EXTWAKEUP chứa bit cho phép từng ngắt ngoài có thể

wakeup hệ thống từ chế độ power down Thanh ghi EXTMODE và EXTPOLAR cho biết

các thông số ngắt mức/cạnh

Trang 12

0xE01FC140 EXTINT Thanh ghi cờ ngắt ngoài chứa các cờ ngắt ngoài cho EINT0, EINT1, và

Thanh ghi Wakeup ngắt ngoài chứa 3 bit cho phép điều khiển mỗi nguồn ngắt ngoài có thể là nguồn để wakeup hệ thống khi vi xử lý đang

0xE01FC14C EXTPOLAR Thanh ghi phân cực ngắt ngoài: điều khiển ngắt trên mỗi chân là cạnh

Bảng 3: Các thanh ghi điều khiển quá trình ngắt ngoài từ ngoại vi

5.2 Thanh ghi chứa các cờ ngắt ngoài(EXINT-0xE01FC140):

Khi ngõ vào ngắt ngoài được chọn, sự thay đổi mức (hoặc cạnh) trên chân chức

năng tương ứng sẽ tạo ra cờ ngắt trên thanh ghi ngắt ngoài Cờ ngắt này sẽ được đáp ứng bởi vector ngắt (VIC) tương ứng

Ghi ‘1’ vào các bit EINT0 đến EINT3 trên thanh ghi EXINT sẽ xóa các bit đáp

ứng Nếu ở chế độ ngắt mức, việc ghi các bit này sẽ có tác động chỉ khi các chân ngắt

ngoài tương ứng đang ở trạng thái không tích cực

+Bit này được xóa bằng cách gán cho nó trị =1, trừ trường hợp ngắt mức, khi

mà chân tương ứng đang ở mức tích cực

0

Bảng 4: Thanh ghi chứa cờ ngắt ngoài

5.3 Thanh ghi thiết lập chức năng wakeup dùng ngắt 0xE01FC144):

Reset

Bảng 5: Thanh ghi thiết lập chức năng wakeup hệ thống dùng ngắt ngoài

5.4 Thanh ghi thiết lập các chế độ ngắt ngoài(EXTMODE-0xE01FC148):

Các bit trên thanh ghi này chọn cách ngắt mức hay cạnh, chỉ có những chân được chọn cho chức năng ngẳt ngoài chịu tác động, và chúng được phép sử dụng nhờ thanh ghi VICIntEnable

Chương trình phần mềm chỉ có thể can thiệp vào các bit trên thanh ghi này bằng

cách vô hiệu hóa ngắt ở thanh ghi VICIntEnablevà ghi ‘1’ vào bit EXTINT trước khi xóa bit EXTINT để có thể thay đổi các chế độ hoạt động

Trang 13

0 EXTMODE0 EXTMODE0 =0, ngắt mức được chọn trên EINT0

Bảng 6: Thanh ghi chọn chế độ ngắt ngoài (mức hay cạnh)

5.5 Thanh ghi thiết lập cực tính cho chế độ ngắt ngoài (EXTPOLAR -

0xE01FC14C):

Nếu là ngắt mức, các bit của thanh ghi này xác định ngắt khi chân chức năng

tương ứng sẽ xảy ra ngắt khi ở mức cao hay mức thấp

Nếu là ngắt cạnh, các bit của thanh ghi này xác định là sẽ xảy ra ngắt khi tác động cạnh lên hay cạnh xuống ở các chân chức năng tương ứng

Chương trình phần mềm chỉ có thể can thiệp vào các bit trên thanh ghi này bằng

cách vô hiệu hóa ngắt ở thanh ghi VICIntEnablevà ghi ‘1’ vào bit EXTINT trước khi xóa bit EXTINT để có thể thay đổi cực tính cho chế độ hoạt động

Bảng 7: Thanh ghi thiết lập cực tính cho chế độ ngắt ngoài

5.6 Kết hợp nhiều chân ngắt ngoài cho cùng nguồn ngắt:

Phần mềm có thể chọn nhiều chân phục vụ cho 1 nguồn ngắt từ EINT0:3 trong

khối thanh ghi chọn chân (Pin Select block)

§ Ở chế độ tích cực mức thấp, trạng thái của tất cả các chân chọn trong EINT sẽ sử

dụng logic AND

§ Ở chế độ tích cực mức cao, trạng thái của tất cả các chân chọn trong EINT sẽ sử dụng logic OR

§ Ở chế độ ngắt cạnh, không cần để ý tới cực tính<ngắt cạnh lên hoặc cạnh xuống>,

chân sử dụng sẽ là GPIO<chân xuất nhập đa dụng> thấp nhất (nếu chon nhiều chân

kết hợp ngắt cạnh có thể gây lỗi chương trình)

Trang 14

Hình 5: Chọn logic cho các ngăt ngoài

6 Vòng khóa pha(Phase locked loop-PLL):

PLL hoạt động với tần số dao động từ 1-25MHz Ngõ vào tần số được nhân vào

CCLK trong tầm từ 10MHz đến 60MHz sử dụng máy dao động điều khiển hiện

tại(Current Controlled Oscillator-CCO) Giá trị nhân vào có thể trong phạm vi từ 1 đến 32 (số nguyên) <thật ra, với LPC2214, hệ số này nhỏ hơn 6 vì bị giới hạn ngưỡng trên của

tần số dao động> CCO hoạt động trong tầm tần số từ 156MHz đến 320MHz, bởi vậy, có thêm một bộ chia trong vòng (loop) để giữ giá trị CCO trong tầm giới hạn tần số khi PLL tạo tần số dao động mong muốn Bộ chia ngoài có các số chia là 2,4,8,16 để tạo tín hiệu

xung nhịp ngõ ra

Nếu số chia là 2, nó đảm bảo rằng tín hiệu ngõ ra của PLL có độ gợn 50%

Hoạt động của PLL được điều khiển bởi thanh ghi PLLCFG Có 2 thanh ghi được

bảo vệ để chống lại sự cố xảy ra do thay đổi các thông số của PLL hoặc PLL không hoạt

động.Vì tất cả các thành phần trên chip, kể cả đồng hồ Watchdog, đều phụ thuộc vào PLL khi nó cung cấp xung nhịp cho chip, các sự cố xảy ra với PLL có thể gây ra các hoạt

động không mong muốn trên vi điều khiển Chức năng bảo vệ của PLL được thực hiện

bằng cách cập nhật giá trị liên túc giống như đồng hồ Watchdog PLL không hoạt động

khi chip Reset hoặc vào chế độ Power Down PLL chỉ hoạt động khi người lập trình cho

phép Chương trình lập trình phải định cấu hình cho PLL, cho nó hoạt động, chờ

PLL khóa pha, sau đó xem PLL như là nguồn xung nhịp

6.1 Miêu tả thanh ghi:

PLL được điều khiển bằng các thanh ghi trong bảng dưới đây

Lưu ý rằng việc thiết đặt các giá trị PLL không phù hợp có thể làm thiết bị hoạt

Đọc/Ghi

Thanh ghi cấu hình PLL Thanh ghi này giữ giá trị để cập nhật cấu hình PLL mới Giá trị ghi vào thanh ghi này sẽ có tác dụng khi xảy ra quá trình cập nhật giá trị PLL mới hợp lệ

Đọc/Ghi 0xE01FC088 PLLSTAT Thanh ghi trạng thái PLL Đọc ngược giá trị của thanh ghi này để biết thông

tin điều khiển và cấu hình của PLL Nếu thanh ghi PLLCON hoặc PLLCFG đã Chỉ đọc

Trang 15

được ghi giá trị mới, nhưng quá trình cập nhật PLL liên tục(feed) không xảy

ra, nó sẽ không ảnh hưởng tới trạng thái PLL hiện tại Đọc giá trị của thanh ghi này sẽ cho biết giá trị thật sự điều khiển PLL hoặc trạng thái thật sự của PLL trong thời điểm đó

Thanh ghi cập nhật liên tục (cho ăn-feed) giá trị thanh ghi PLL Feed Register

Thanh ghi này cho phép load các thông tin về điều khiển và cấu hình của thanh ghi PLLCON và PLLCFG vào thanh ghi phụ (shadow) có ảnh hưởng trực tiếp lên hoạt động của PLL

Chỉ ghi

Bảng 8: Các thanh ghi PLL

Hình 6: Giản đồ khối PLL

6.2 Thanh ghi điều khiển PLL(PLLCON - 0xE01FC080)

Thanh ghi điều kiển PLL chứa các bit cho phép và kết nối PLL Cho phép PLL để

nó thử khóa các giá trị thiết lập hiện tại của bộ chia và nhân tần số Kết nối PLL để vi xử

lý hoạt động nhờ xung nhịp ngõ ra của PLL Sự thay đổi của thanh ghi PLL không ảnh

hưởng hệ thống tới khi quá trình cập nhật giá trị tuần tự liên tục diễn ra đúng <Xem thêm

ở thanh ghi cập nhật giá trị PLL liên tục -PLL Feed Register(PLLFEED - 0xE01FC08C)>

Cho phép PLL Enable Khi PLLE=’1’ và sau khi quá trình cập nhật giá trị PLL hợp lệ, bit này sẽ cho phép PLL để nó khóa giá trị tần số yêu cầu Xem thêm ở thanh ghi PLLSTAT

0

Kết nối PLL Khi [PLLC,PLLE]=‘11’, sau khi quá trình cập nhật giá trị PLL diễn ra hợp lệ, ngõ ra xung nhịp của PLL được chọn là xung nhịp của hệ thống Ngược lại, xung nhịp của nguồn dao động là xung nhịp của hệ thống<xem thêm ở thanh ghi PLLSTAT>

0

Bảng 9: Thanh ghi điều khiển PLL(PLLCON - 0xE01FC080)

Trang 16

PLL phải được thiết đặt, cho phép, và thiết lập khóa (tạo được tần số dao động ổn định) trước khi nó có thể thành nguồn xung nhịp hệ thống khi chuyển từ tần số dao động ngoài thành xungnhịp PLL hoặc ngược lại, mạch dao động nội đưlợc vần hành để đảm

bảo rằng không tạo ra các glitches Phần cứng thì không đảm bảo rằng PLL được khóa

(dao động ổn định với tần số mong muốn) trước khi kết nối hay sẽ tự động không kết nối khi tần số dao động không ổn định Nếu xảy ra lỗi trên xung nhịp PLL khi đang hoạt

động, kết quả giống như xung nhịp máy tạo dao động không ổn định và việc không kết

nối PLL sẽ phải bắt buộc trong trường hợp này

6.3 Thanh ghi tạo cấu hình PLL(PLLCFG - 0xE01FC084)

Thanh ghi PLLCFG chứa các giá trị của bộ nhân và chia của PLL Sự thay đổi giá trị của thanh ghi này chỉ có tác dụng khi mà việc cập nhật giá trị PLL mới đã diễn ra hợp lệ<Xem thanh ghi cập nhật giá trị PLL liên tục(PLLFEED - 0xE01FC08C)>

4:0 MSEL4:0 Giá trị bộ nhân của PLL Multiplier value Đưa ra giá trị "M" ở phép tính

6:5 PSEL1:0 Giá trị bộ chia của PLL Multiplier value Đưa ra giá trị "P" ở phép tính

Bảng 10: Thanh ghi cấu hình cho PLL(PLLCFG - 0xE01FC084)

6.4 Thanh ghi trạng thái PLL(PLLSTAT - 0xE01FC088)

Thanh ghi chỉ đọc này cho ta các giá trị thông số của PLL có tác động ngay thời điểm

đọc

PLLSTAT Tên chức

Giá trị reset

Giá trị bit cho phép PLL hiện tại

+PLLE=’1’: PLL đang sử dụng

+PLLE=’0’: PLL không được sử dụng

Bit này sẽ tự động xóa khi vào chế độ Power Down

0

Giá trị bit điều khiển PLL hiện tại

+PLLC-PLLE=’11’: PLL đang sử dụng và được kết nối vào nguồn xung nhịp

+PLLC-PLLE≠’11’: PLL không được sử dụng, nguồn dao động lúc này lấy

từ xung nhịp ngoài

Bit này sẽ tự động xóa khi vào chế độ Power Down

0

Bit cho biết trạng thái khóa của PLL

+PLOCK=’1’: PLL đã hoạt động ổn định tại tần số mong muốn

Bảng 11: Thanh ghi trạng thái PLL(PLLSTAT - 0xE01FC088)

i Ngắt PLL:

Bit PLOCK trên thanh ghi PLLSTAT được nối với bộ điều khiển ngắt nó cho

phép chương trình phần mềm tích cực PLL và tiếp tục thực hiện các chức năng khác mà

không cần đợi PLL xác lập tại tần số mong muốn Khi ngắt xảy ra (PLOCK=’1’), PLL có thể được kết nối, và không cho phép ngắt

6.5 Các chế độ hoạt động của PLL:

nhận

Ngày đăng: 24/10/2012, 14:14

HÌNH ẢNH LIÊN QUAN

Hình  1: Sơ đồ khối của LPC2214 - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
nh 1: Sơ đồ khối của LPC2214 (Trang 3)
Bảng  1: Khái quát các chân chức năng - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 1: Khái quát các chân chức năng (Trang 10)
Bảng  2: Khái quát về thanh ghi điều khiển hệ thống - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 2: Khái quát về thanh ghi điều khiển hệ thống (Trang 11)
Bảng  4: Thanh ghi chứa cờ ngắt ngoài - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 4: Thanh ghi chứa cờ ngắt ngoài (Trang 12)
Bảng  3: Các thanh ghi điều khiển quá trình ngắt ngoài từ ngoại vi - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 3: Các thanh ghi điều khiển quá trình ngắt ngoài từ ngoại vi (Trang 12)
Bảng  7: Thanh ghi thiết lập cực tính cho chế độ ngắt ngoài - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 7: Thanh ghi thiết lập cực tính cho chế độ ngắt ngoài (Trang 13)
Bảng  6: Thanh ghi chọn chế độ ngắt ngoài (mức hay cạnh) - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 6: Thanh ghi chọn chế độ ngắt ngoài (mức hay cạnh) (Trang 13)
Hình  5: Chọn logic cho các ngăt ngoài - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
nh 5: Chọn logic cho các ngăt ngoài (Trang 14)
Bảng  8: Các thanh ghi PLL - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 8: Các thanh ghi PLL (Trang 15)
Bảng  10: Thanh ghi cấu hình cho PLL(PLLCFG - 0xE01FC084) - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 10: Thanh ghi cấu hình cho PLL(PLLCFG - 0xE01FC084) (Trang 16)
Bảng  16: Các thanh ghi điều khiển nguồn - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 16: Các thanh ghi điều khiển nguồn (Trang 18)
Bảng  14: Giá tri các hệ số chia của PLL - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 14: Giá tri các hệ số chia của PLL (Trang 18)
Hình  7: Giản đồ khối reset bao gồm cả đồng hồ Wakeup - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
nh 7: Giản đồ khối reset bao gồm cả đồng hồ Wakeup (Trang 19)
Bảng  18: Thanh ghi điều khiển nguồn cho ngoại vi - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 18: Thanh ghi điều khiển nguồn cho ngoại vi (Trang 19)
Bảng  19: Thanh ghi VPBDIV - Đề tài tìm hiểu vi điều khiển arm7 lpc2214
ng 19: Thanh ghi VPBDIV (Trang 20)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w