tổng quan vi xử lý lpc2378 hướng dẫn sử dụng board mcb2300

86 528 3
tổng quan vi xử lý lpc2378 hướng dẫn sử dụng board mcb2300

Đ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

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN o0o BÁO CÁO ĐỒ ÁN TIN HỌC TỔNG QUAN VI XỬ LPC2378 HƯỚNG DẪN SỬ DỤNG BOARD MCB2300 GVHD: TS. Đinh Đức Anh Vũ SVTH: Đặng Việt Hùng - 50401023 Trần Trung Tín - 50402645 1 Tp HCM, Thaùng 12/2007 2 3 MỤC LỤC Đề mục Trang 1. Tổng quan về đồ án 1 2. Cách sử dụng board MCB2300 2 2.1. Giới thiệu board thực tập MCB2300 2 2.2. Cài đặt board MCB2300 4 2.3. Thiết lập jumper trên board MCB2300 8 3. Cách đánh địa chỉ trong LPC2300 9 3.1. Tổ chức bộ nhớ và địa chỉ của các thiết bị ngoại vi 9 3.2. Phân vùng bộ nhớ 10 3.3. Địa chỉ thiết bị APB 12 3.4. Phần vùng lại bộ nhớ và boot ROM 13 3.5. Điều khiển phân vùng bộ nhớ 14 4. Khối điều khiển hệ thống 16 4.1. Giới thiệu 16 4.2. Chân kết ngối ngoài 17 4.3. Các thanh ghi liên quan 17 4.4 Reset 18 5. Cách thiết lập PIN cho LPC2300 19 6. Interrupt 21 6.1. Giới thiệu 21 6.2. Các loại thanh ghi 21 6.3. Kiến trúc Interrupt 23 4 7. Timer 26 7.1. Giới thiệu 26 7.2. Timer hoạt động như thê nào 26 7.3. Thiết lập timer 28 8. UART 30 8.1. Giới thiệu 30 8.2. Các loại thanh ghi trong UART 32 8.3. Khởi động UART 33 9. I2C 39 9.1.Giới thiệu 39 9.2. Nguyên hoạt động 39 9.3. Kết nối vật 40 9.4. Sơ đồ khối của I2C 41 9.5. Những thanh ghi quan trọng 44 9.6. Các chế độ hoạt động của I2C 45 9.7. Một số dụ 49 Phần phụ lục 52 Điều khiển LED 52 Điều khiển màn hình LCD 52 Tập lệnh ARM 7 53 10. Kết luận 80 Tài liệu tham khảo Kết luận.  5 CHƯƠNG 1. TỔNG QUAN VỀ ĐỒ ÁN. LPC2378 là một vi xử dựa trên nền tảng ARM và được dùng cho các ứng dụng yêu cầu truyền nhận dữ liệu tuần tự. Vi xử này tính hợp một giao tiếp 10/100 Ethernet MAC, giao tiếp USB 2.0 Full Speed, 4 giao tiếp UART, 2 kênh CAN, 1 cổng SPI, 2 cổng SSP (Synchronous Serial Ports), 3 giao tiếp I2C, 1 giao tiếp I2S và 1 MiniBus. Thuật ngữ LPC2300 được áp dụng cho toàn bộ họ vi xử gồm LPC2364, 2366, 2368 và 2378. Trong khuôn khổ báo cáo này, chúng ta chỉ quan tâm đến LPC2378. Đồ án tin học này sẽ giới thiệu một số đặc điểm chính của kiến trúc LPC2378 cũng như tính năng, ứng dụng và các dụ dựa trên thí nghiệm với board MCB2300. 6 CHƯƠNG 2 CÁCH SỬ DỤNG BOARD MCB2300 2.1 Giới thiệu board thực tập MCB 2300 Board thí nghiệm MCB2300 cho phép tạo ra và chạy những chương trình trên họ thiết bị LPC23xx của NXP. Board thí nghiệm có 2 phiên bản khác nhau là MCB2360 và MCB2370.  Board MCB 2360 thông dụng với vi điều khiển NXP LPC2368.  Board MCB 2370 thông dụng với vi điều khiển NXP LPC2378. Trong phạm vi báo cáo này, chúng ta chỉ đề cập đến board MCB 2370. Khi nói đến board MCB 2300 tức là bao gồm cả MCD 2368 và MCB 2378. 2.1.1 Kit thí nghiệm MCB2300 Bên trong một bộ kit thí nghiệm MCB 2300 bao gồm _ Board thí nghiệm MCB 2300. _ Hướng dẫn nhanh Vision µIDE. _ Bản giới thiệu tổng quan về công cụ phát triển của ARM. _ Một CD-ROM chứa: 7 + Bản dùng thử chương trình “RealView MDK-ARM Microcontroller Development Kit”. + Một số chương trình dụ chạy trên board MCB2300. + File hướng dẫn sử dụng của board MCB2300. _ Chương trình dụ chạy trên board MCB2300 có thể tìm thấy ở KEIL\ARM\RV30\BOARDS\KEIL\MCB2300 trên CD-ROM. Tất cả các dụ này đều có thể dịch và chạy trên bản dùng thử. 2.1.2. Đặc điểm chính của board MCB2300.  Giao diện USB 2.0 Full Speed.  Có hai cổng giao tiếp serial.  Có hai cổng giao tiếp CAN.  LF Amplifier.  Điều khiển điện áp tương tự cho cổng vào ADC.  Giao diện JTAG để nạp và chạy debug. 2.1.3 Chuẩn bị về phần cứng. Để sử dụng board MCB2300, chúng ta cần chuẩn bị:  Board thí nghiệm MCB2300.  Máy tính chuẩn IBM còn trống: _ 2 cổng USB : 1 cổng cung cấp nguồn điện và một cổng dùng để download/debug. _ 1 cổng COM RS-232 nếu sử dụng cách nạp bằng ISP thông qua cổng giao tiếp serial.  Bộ giao tiếp JTAG : bao gồm Adapter JTAG và 2 dây cáp nối USB.  Trong TH cần sử dụng tiện ích “Flash Magic Utility” một dây cáp serial, 1 đầu đực/1 đầu cái, ngắn hơn 3m. 8 2.1.4 Chuẩn bị về phần mềm.  Hệ điều hành Microsoft Windows 2000/XP.  Phần mềm “Keil µVision”  Phần mềm “RealView MDK-ARM Evaluation Tools”.  Các dụ viết cho MCB2300 được kèm theo các bộ MDK-ARM, DB-ARM và Keil ARM Evalution Toolkits. 2.2 Cài đặt board thí nghiệm MCB2300. Sau khi đã chuẩn bị đầy đủ các yêu cầu về phần cứng và phần mềm, chúng ta có thể tiến hành các bước sau đây để cài đặt và sẵn sàng thí nghiệm trên board MCB2300. 2.2.1 Cài đặt board. Board MCB2300 dùng nguồn điện từ cổng USB. Board MCB2300 kết nối trực tiếp đến phần mềm “Keil µVision Debugger” bằng adapter “Keil ULINK USB-JTAG”, không cần cài đặt thêm bất cứ phần mềm nào trên board. 9 2.2.2. Các thành phần quan trọng trên board MCB2300. 2.2.3 Kết nối với U-LINK.  Bước 1, kết nối U-LINK với PC thông qua cable USB.  Bước 2, kết nối U-LINK đến cổng JTAG nằm trên board MCB2300.  Bước 3, cấp nguồn cho board MCB2300 bằng cabke USB.  Bước 4, thiết lập mức xung JTAG cho adapter U-LINK. _ Cho hoạt động board MCB2300. _ Trong phần mềm µVision, thiết lập bộ Debug trong hộp thoại Project\Options for Target\Debug. 10 [...]... dùng để giao tiếp với board thí nghiệm Nên chọn giá trị 200 kHz để board MCB2300 hoạt động tốt nhất *_ ULINK2 JTAG có thêm chân RTCK (Return Clock) Nếu sử dụng adapter ULINK2, chúng ta có thể thiết lập Max JTAG Clock là 200 kHz hoặc RTCK 2.2.4 Kết nối thông qua giao tiếp Serial  Bước 1, thiết lập jumper trên board MCB2300 _ J9 và J10 : ON _ J13 : OFF  Bước 2, cấp nguồn cho board MCB2300 bằng cabke USB... nối board MCB2300 vào máy tính qua cổng COM từ cổng COM0 trên board  Bước 4, Xác nhận kết nối bằng tiện ích “Flash Magic” _ Chạy “Flash Magic” và thiết lập thông số như sau: 11 _ Xác nhận cổng COM bằng lệnh ISP – Read Device Signature _ Cừa sổ sau đây sẽ hiển thị thông số kết nối 12 2.3 Thiết lập jumper trên board MCB2300 Các jumper trên board MCB2300, đây cũng là thông số mặc định trong TH kết nối board. .. chức bộ nhớ và địa chỉ của các thiết bị ngoại vi Bộ xử ARM có thể quản một không gian địa chỉ bộ nhớ 4 GB Bảng sau đây thể hiện sự phân bố địa chỉ của vùng bộ nhớ trong các thiết bị ARM: 14 3.2 Phân vùng bộ nhớ LPC2300 quản chặt chẽ từng vùng nhớ riêng biệt Bảng sau thể hiện toàn bộ không gian địa chỉ Vùng nhớ chứa địa chỉ vector ngắt phục vụ cho vi c đánh lại địa chỉ nhớ, vấn đề này sẽ được... connector J3 - AOUT ON Connects AOUT via LF amplifier to the loudspeaker J4 - Not used J5 - UMODE ON Allows soft-connect of the USB device by issuing a software restart via P0.14 J6 - AD0.0 ON Connects POT1 potentiometer to AIN0 for analog input demonstration J8 - INT0 ON Enable INT0 Push Button J9 - RST ON Enables Reset via COM0 J10 - ISP OFF Disables In-System Programming via COM0 J11 - LED ON Enables... ngoại lệ cần thiết, vi xử sẽ nạp câu lệnh điền khiển địa chỉ của ngoại lệ căn cứ vào bảng 2.5 Thanh ghi MEMMAP xác định địa chỉ nguồn của dữ liệu sẽ nạp vào bảng này 19 20 CHƯƠNG 4 KHỐI ĐIỀU KHIỂN HỆ THÔNG 4.1 Giới thiệu Khối điều khiển hệ thống bao gồm nhiều đặc tính hệ thống và nó điều khiển những thanh ghi cho một số chức năng riêng biệt, không liên quan đến bất cứ thiết bị ngoại vi nào Những chức... làm, và địa chỉ nào sẽ nhảy tới LPC2378 hỗ trợ nhiều ngoại vi và 1 số chức năng khác : mỗi 1 chức năng như vậy sẽ được gắn với 1 thanh ghi trong vector interrupt Ta muốn sử dụng chức năng interrupt nào thì phải set thanh ghi đó Muốn biết chức năng mình dùng nằm trong thanh ghi nào thì tham khảo table 79 trang 87 (user manual)  dụ bây giờ ta muốn set interrupt cho timer0 VICVectAdd4 = (unsigned long)... long *vect_prio; VICIntEnClr = 1 = 32 ) return ( FALSE ); else { /* find first un-assigned VIC address for the handler */ //xác định địa chỉ của thanh ghi Vic address cần thiết lập vect_addr = (unsigned long *)(VIC_BASE_ADDR+ 0x100 +IntNumber*4); // xác định địa chỉ của thanh ghi priority cần thiết lập vect_prio = (unsigned long *)(VIC_BASE_ADDR+... 471 user manual) Bit 1 :0 là để thiết lập conter/timer mode Bit 3 :2 Thiết lập chân input cho timer (chỉ được sử dung trong counter mode) Lưu ý: Nếu thiết lập mode này cho timer nào thì 3 bit của nó trong thanh ghi TnCCR phải được lập trình là 0 Bit 7:4 Không sử dụng (Lưu ý: cái nào không sử dụng cho nó bằng 0 hết) b Thiết lập thời gian hay số sự kiện để xảy ra 1 lần interrupt Thiết lập thời gian sinh... giữ lại cho những mở rộng về sau Những chức năng không liên quan với nhau không chia sẽ chung bất cứ thanh ghi nào 21 4.2 Chân kết nối ngoài của khối điều khiển hệ thống Bảng sau đây thể hiện những chân kết nối ngoài liên quan đến những chức năng của khối điều khiển hệ thống 4.3 Các thanh ghi liên quan Bảng sau đây thể hiện những thanh ghi liên quan đến những chức năng của khối điều khiển hệ thống 22... động và loại interrupt là FIQ  VD: VICIRQStatus = 0x00001003H có nghĩa là Vector interrupt số 0,1,15 đang hoạt động và loại interrupt của 3 vector này là FIQ  VICRawIntr(Read only) (32 bit) từ 0-> 31 : o Bit nào bằng 0 : không có interrupt cả hardware lẫn software cho vector interrupt đó o Bit nào bằng 1 : có interrupt hardware hay software cho vector interrupt đó  VICIntSelect (Read/Write) (32 bit) . CÔNG NGHỆ THÔNG TIN o0o BÁO CÁO ĐỒ ÁN TIN HỌC TỔNG QUAN VI XỬ LÝ LPC2378 HƯỚNG DẪN SỬ DỤNG BOARD MCB2300 GVHD: TS. Đinh Đức Anh Vũ SVTH: Đặng Vi t Hùng - 50401023 Trần Trung Tín - 50402645 1 Tp. LỤC Đề mục Trang 1. Tổng quan về đồ án 1 2. Cách sử dụng board MCB2300 2 2.1. Giới thiệu board thực tập MCB2300 2 2.2. Cài đặt board MCB2300 4 2.3. Thiết lập jumper trên board MCB2300 8 3. Cách. trình ví dụ chạy trên board MCB2300. + File hướng dẫn sử dụng của board MCB2300. _ Chương trình ví dụ chạy trên board MCB2300 có thể tìm thấy ở KEILARMRV30BOARDSKEIL MCB2300 trên CD-ROM. Tất

Ngày đăng: 02/05/2014, 14:41

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan