1. Trang chủ
  2. » Giáo Dục - Đào Tạo

3 3 VI điều KHIỂN họ RAM

45 331 0

Đ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 45
Dung lượng 2,11 MB

Nội dung

3.3 Vi điều khiển họ ARM • Kiến trúc tổng quan lõi vi xử lý ARM • Kiến trúc vi điều khiển lõi ARM920T (S3C2440) • Lập trình ứng dụng hệ điều hành Linux nhúng Kiến trúc tổng quan lõi vi xử lý ARM • ARM dòng vi xử lý 32 bit thiết kế theo kiến trúc tập lệnh RISC (Reduced Instruction Set Computer) • ARM viết tắt • Advanced RISC Machine • Acorn RISC Machine • ARM kiến trúc sử dụng rộng rãi hệ thống nhúng: Mobile phones, PDAs, thiết bị điện tử gia dụng… Kiến trúc tổng quan vi xử lý lõi ARM • Kế thừa đặc điểm kiến trúc tập lệnh RISC • Số lượng ghi lớn có kích thước giống • Tập lệnh load/store, không cho phép thao tác xử lý liệu trực tiếp nhớ • Chế độ địa đơn giản (ít chế độ địa kiến trúc CISC) • Phát triển đặc trưng ARM • Các lệnh có kết hợp với lệnh dịch lệnh logic • Chế độ địa tự động tăng-giảm để tối ưu hóa vòng lặp • Nạp lưu (load/store) nhiều lệnh lúc cho phép nâng cao thông lượng Kiến trúc tổng quan lõi vi xử lý ARM Kiến trúc dòng ARM Công nghệ đặc trưng • Thumb Instruction Set: tập lệnh 16 bit cho phép tăng mật độ lệnh • Jazelle: công nghệ cho phép tăng tốc ứng dụng viết Java • SIMD, NEON: công nghệ nâng cao hiệu cho ứng dụng Video/Audio • TrustZone: công nghệ nâng cao tính bảo mật So sánh hiệu dòng ARM Phân nhóm theo hiệu tính hữu dụng Kiến trúc tổng quan vi xử lý lõi ARM • ARM nhiều hãng phát triển sản xuất, Việt Nam phổ biến chip ARM hãng • • • • • ATMEL: AT91SAM7, AT91SAM9… NXP: LPC2138, LPC2148, LPC2300… TI (Texas Instrument): TMS470, TMS570… SAMSUNG: S3C2440 … Kiến trúc vi điều khiển S3C2440 • Đặc điểm chip S3C2440 • Core: • ARM920T core , 16 Kbytes Data Cache, 16 Kbytes Instruction cache • Xung nhịp tối đa: 400 MHz • Memories • Giao diện bus AMBA (Advanced Micro controller Bus Architecture) • KByte SRAM nội Lõi vi xử lý ARM920T Kiến trúc vi điều khiển S3C2440 • Đặc điểm chip S3C2440 (tiếp) • Ngoại vi (Peripherals) • USB Host/Device • 10/100 Mbps Ethernet MAC Controller • SPI, I2C… • 32 bit Timer/Counter • USARTs • Multimedia Card Interface • ADC 10 bit kênh • Giao tiếp cảm biến ảnh (Image Sensor) • Điều khiển LCD • Điều khiển AC97 audio codec 10 Xây dựng chương trình Hello World Bước 1: viết code chương trình Bước 2: dịch chương trình -Cách 1: dùng lệnh make -Cách 2: dùng lệnh tường minh arm-linux-gcc –o OutputFile Source.c Bước 3: dùng tftp download chương trình xuống KIT tftp –l localfile –r remotefile –g ServerIP Bước 4: chạy chương trình KIT 31 Lập trình giao tiếp cổng COM • Khởi tạo: Khai báo thư viện • Bước 1: Mở cổng • Bước 2: Thiết lập tham số • Bước 3: Đọc, ghi cổng • Bước 4: Đóng cổng 32 Khai báo thư viện • #include • #include • #include • #include // UNIX standard function • #include // File control definitions • #include // Error number definitions • #include // POSIX terminal control • #include // time calls 33 Bước 1: Mở cổng • Sử dụng lệnh mở file int fd = open ("/dev/ttyUSB0", O_RDWR); • Fd >0 mở file thành công • Fd[...]... trúc vi điều khiển S3C2440 • Đặc điểm của chip S3C2440(tiếp) • Hệ thống • 4 kênh DMA (Direct Memory Access) • Boot hệ thống từ NOR Flash, NAND Flash, SDCard, Ethernet • Bộ điều khiển ngắt nâng cao AIC(Advanced Interrupt Controller) • Vào ra • 130 chân vào ra lập trình được 11 12 Tập thanh ghi và chế độ hoạt động R0->R12: thanh ghi công dụng chung R 13: Stack Pointer R14: Link Register R15: Program... được ánh xạ vào vùng nhớ chọn bởi nGCS0 • Vùng nhớ cho SDRAM bắt đầu tại địa chỉ 0x30000000 và kết thúc ở địa chỉ 0x34000000 19 Giới thiệu KIT nhúng mini2440 20 Giới thiệu KIT nhúng mini2440 21 Giới thiệu KIT nhúng mini2440 • Thông số kỹ thuật 22 Giới thiệu KIT nhúng mini2440 23 Môi trường phát triển ứng dụng • Phần mềm • • • • 24 Hệ điều hành Linux Cross toolchains (gcc 4 .3. 2) TFTP (client/server)... tiếp cổng COM • Lập trình ứng dụng đồ họa 29 Cài đặt môi trường phát triển • Môi trường phát triển • Hệ điều hành Linux (Ubuntu 9.04) • Trình biên dịch chéo: ARM Linux GCC 4 .3. 2 • Phần mềm hỗ trợ • TFTP Server client/server • GFTP Server • Cấu hình mạng sử dụng • Linux host: 192.168.1 .30 • Linux target: 192.168.1. 230 30 Xây dựng chương trình Hello World Bước 1: vi t code chương trình Bước 2: dịch chương... dụng chung R 13: Stack Pointer R14: Link Register R15: Program Counter CPSR: Current Program Status Register SPSR_SVC: Saved Program Status Register 13 Thanh ghi trạng thái chương trình Các cờ kết quả hoạt động của ALU Điều khiển cho phép/cấm ngắt Thiết lập chế độ hoạt động 14 Mode bits 15 Tập lệnh của S3C2440 • Tập lệnh ARM chia thành các nhóm lệnh • • • • • Lệnh rẽ nhánh (Branch) Lệnh xử lý... chỉ 32 bit • Địa chỉ bắt đầu: 0x00000000 • Địa chỉ kết thúc: 0x40000000 • Chia thành nhiều bank nhớ, mỗi bank 128 MB, tổng không gian bộ nhớ 1GB • 6 bank nhớ cho ROM, SRAM • 2 bank nhớ cho ROM, SRAM, SDRAM, … • Hỗ trợ cả hai kiểu lưu trữ: little endian, big endian 17 18 Bản đồ bộ nhớ Hỗ trợ hai chế độ khởi động chính • Với chế độ khởi động từ Nand Flash, 4 Kbytes BootSram được ánh xạ vào vùng nhớ chọn... tường minh arm-linux-gcc –o OutputFile Source.c Bước 3: dùng tftp download chương trình xuống dưới KIT tftp –l localfile –r remotefile –g ServerIP Bước 4: chạy chương trình trên KIT 31 Lập trình giao tiếp cổng COM • Khởi tạo: Khai báo thư vi n • Bước 1: Mở cổng • Bước 2: Thiết lập tham số • Bước 3: Đọc, ghi cổng • Bước 4: Đóng cổng 32 Khai báo thư vi n • #include • #include • #include... theo nhóm Quy trình phát triển ứng dụng • Chạy ứng dụng ở chế độ Stand-alone • Biên dịch chương trình • Nạp chương trình lên SDRAM và chạy trực tiếp (sử dụng SuperVivi, USB push) • Chạy ứng dụng trên nền hệ điều hành • Biên dịch chương trình • Chạy chương trình trên nền hệ điều hành Linux nhúng • Trên KIT cài TFTP client • Trên máy phát triển, cài TFTP server • Trên KIT dùng lệnh TFTP để download chương... #include // Error number definitions • #include // POSIX terminal control • #include // time calls 33 Bước 1: Mở cổng • Sử dụng lệnh mở file int fd = open ("/dev/ttyUSB0", O_RDWR); • Fd >0 nếu mở file thành công • Fd ... controller Bus Architecture) • KByte SRAM nội Lõi vi xử lý ARM920T Kiến trúc vi điều khiển S3C2440 • Đặc điểm chip S3C2440 (tiếp) • Ngoại vi (Peripherals) • USB Host/Device • 10/100 Mbps Ethernet MAC... Interface • ADC 10 bit kênh • Giao tiếp cảm biến ảnh (Image Sensor) • Điều khiển LCD • Điều khiển AC97 audio codec 10 Kiến trúc vi điều khiển S3C2440 • Đặc điểm chip S3C2440(tiếp) • Hệ thống • kênh DMA... Register R15: Program Counter CPSR: Current Program Status Register SPSR_SVC: Saved Program Status Register 13 Thanh ghi trạng thái chương trình Các cờ kết hoạt động ALU Điều khiển cho phép/cấm

Ngày đăng: 13/11/2015, 18:34

TỪ KHÓA LIÊN QUAN

w