dark369_963

New Member

Download miễn phí Đồ án Nghiên cứu hệ thống nhúng và xây dựng ứng dụng giao tiếp webcam





- BootStrap là một chương trình khởi động được nạp xuống trước tiên cho các vi điều khiển dòng ARM 9 của Atmel.
- BootStrap là một module ứng dụng, nó được sử dụng để thực hiện các chức năng sau:
o Khởi tạo phần cứng như tần số xung clock, thiết lập các PIO (programmable Input Output).
o Thiết lập các ngoại vi như PIO, PCM, SDRAMC,.
o Thực hiện các thực toán truy xuất vật lý các ngoại vi như DataFlash, NANDFlash, Paralell Flash.
o Điều khiển các tập tin hệ thống như JFFS2, FAT.
o Thực thi các ứng dụng như ELF, Linux,
- BootStrap có thể được đặt trong vùng bootLoader, cụ thể là được đặt trong vùng DataFlash. BootStrap được chép lên RAM nội bởi trình SAM-BA Boot. BootLoader thực hiện khởi tạo vi xử lý (PLL, PIO, SDRAMC, SPI).
- BootStrap thực hiện load U-boot từ DataFlash lên SRAM và trỏ đến thực hiện chương trình U-Boot.
- Cài đặt BootStrap và u-boot thực hiện theo hướng dẫn trong tài liệu kèm theo board.
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HCM
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ VIỄN THÔNG
------------------------
ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI:
NGHIÊN CỨU HỆ THỐNG NHÚNG VÀ XÂY DỰNG ỨNG DỤNG GIAO TIẾP WEBCAM
GVHH: THẦY TRƯƠNG NGỌC SƠN
SVTH: ĐÀO THANH MAI MSSV: 06119058
TRƯƠNG XUÂN KIM MSSV: 06119023
Tp. Hồ Chí Minh - Tháng 7/2010
TÓM TẮT NỘI DUNG ĐỀ TÀI VÀ BÁO CÁO
TÓM TẮT NỘI DUNG ĐỀ TÀI
Đồ án tốt nghiệp “nghiên cứu hệ thống nhúng và xây dựng ứng dụng giao tiếp webcam” là đề tài nghiên cứu về một lĩnh vực mới của Việt Nam. Đó là lập trình nhúng
Qua thực tế và khoa học ngày càng phát triển thì nhóm đề tài tốt nghiệp đả quyết định chọn đề tài hướng về lập trình nhúng này để tìm hiểu về các kiến thức nền, kiến thức cơ bản về lập trình nhúng, hệ thống nhúng, vi điều khiển nhúng và hệ điều hành mã nguồn mở là linux.
Nội dung đề tài có hai phần:
Phần I là nghiên cứu về lý thuyết
phần lý thuyết có những nội dung sau :
Nghiên cứu về thống nhúng bao gồm nghiên cứu những đặt trưng, đặt điểm kiến truc phần mềm hệ thống nhúng,
Nghiên cứu về hệ điều hành thời gian thực , phân tích quy trình xử lý của hệ điều hành
Phân tích một hệ thống nhúng chạy hệ điều hành thời gian thực
Giới thiệu kiến thức cơ bản về hệ điều hành linux
Nghiên cứu về vi điều khiển arm là vi điều khiển ứng dụng nhiều nhất trong hệ thống nhúng.
Nghiên cứu các tính năng , cấu trúc, kiến trúc và ưu nhược điểm của vi điều khiển arm so với các dóng vi điều khiển khác
Và nhóm tiến hành nghiên cứu và biên dịch lại nhân linux để chạy trên board phát triển hệ thống nhúng, chạy vi điều khiển arm AT91SAM9260.
Phần 2 là phần xây dựng các ứng dụng chạy trên board phát triển hệ thống nhúng
Trươc tiên là nghiên cứu cài đặt cho board phát triển hệ thống nhúng KM9260. Từ việc nghiên cứu quá trình hoặt động chạy hệ điều hành nhúng mà nhóm tiến hành cài đặt hệ điều hành cho board.
Sau đó phát triển các ứng dụng mô phỏng về giao tiếp , lập trình C/C++ . lập trình I/O , lập trình driver
Ứng dụng nhóm đồ án làm gồm có xây dựng board phát triển nhúng chạy tập tin multimedia
Trong đó gồm chạy file audio phát nhạc
Giao tiếp với Webcam USB truyền và nhận ảnh để ứng dụng vào xử lý ảnh
Giao tiếp với các thiết bị khác như MOUSE, nút nhấn , led đơn.
Đó là những nội dung cơ bản mà nhóm làm đồ án tốt nghiệp đả hoàn thành . mặt dù còn hạn chế về kiến thức và khả năng nhiên cứu nhưng nhóm đả cố gắn hoàn thành và xây dựng nhiều ứng dụng mô phỏng để có thể hiểu sâu về lập trình nhúng và vi điều khiển nhúng.
TÓM TẮT NỘI DUNG BÁO CÁO
Lý thuyết về các vấn đề nghiên cứu trong đồ án
Mô phỏng chạy tập tin mp3
Mô phỏng chạy ứng dụng giao tiếp webcam
PHỤ LỤC XÂY DỰNG CÁC HƯỚNG DẪN THỰC HIỆN TRÊN BOARD PHÁT TRIỂN HỆ THỐNG NHÚNG
1 .BOOT LOADER CHO KM9260
Boot loader có vai trò quan trọng trong hệ thống nhúng. Tùy theo loại MPU khác nhau mà ta có cơ chế, trình tự boot khách nhau. Đối với AT91SAM9260, Khi cấp nguồn, AT9260 chạy chương trình boot bên trong ROM (được xây dựng sẵn trong quá trình sản xuất chíp). Hình sau thể hiện lưu đồ ROM boot của AT91SAM9260:
Hình: Trình tự boot của MPU AT91SAM9260.
B1> Chương trình chạy với bộ dao động nội, hay với bộ dao động thạch anh.
B2> Kiểm tra sự tồn tại của chương trình AT91BootStrap trong SPI serial dataflash device (NPCS0) hay không, nếu tồn tại, MPU thực hiện chép mã thực thi của AT91BootStrap từ SPI serial dataflash device vào SRAM nội của MPU, sau đó thực thi lệnh nhảy đến địa chỉ đầu tiên của SRAM để thực thi chương trình AT91BootStrap. Nếu không tồn tại chương trình boostrap trong SPI serial dataflash device, MPU thực hiện bước B3 sau đây.
B3> Kiểm tra sự tồn tại của chương trình AT91BootStrap trong SPI serial dataflash device (NPCS1) hay không, nếu tồn tại, MPU thực hiện chép mã thực thi của AT91BootStrap từ SPI serial dataflash device vào SRAM nội của MPU, sau đó thực thi lệnh nhảy đến địa chỉ đầu tiên của SRAM để thực thi chương trình AT91BootStrap. Nếu không tồn tại chương trình boostrap trong SPI serial dataflash device, MPU thực hiện bước B4 sau đây.
B4> Kiểm tra sự tồn tại của chương trình AT91BootStrap trong NAND FLASH device hay không, nếu tồn tại, MPU thực hiện chép mã thực thi của AT91BootStrap từ NAND FLASH vào SRAM nội của MPU, sau đó thực thi lệnh nhảy đến địa chỉ đầu tiên của SRAM để thực thi chương trình AT91BootStrap. Nếu không tồn tại chương trình boostrap trong SPI serial dataflash device, MPU thực hiện bước B5 sau đây.
B5> Nếu MPU nhận được ký tự bất kỳ từ bàn phím máy tính (qua cổng DBGU). hay khi cắm cable USB vào máy tính chương trình sẽ nhảy sang SAM-BA boot.
Từ lưu đồ trên, ta có thể lưu trữ AT91BootStrap.bin theo 3 cách: SPI serial dataflash (NPCS0 or NPCS2) hay lưu trữ trên NAND Flash. KM9260 sử dụng SPI serial dataflash (NPCS1) và NAND FLASH.
TRÌNH TỰ BOOT LINUX CỦA KM9260:
Quá trình boot kernel Linux trên KM9260 được thực thi qua 3 tầng, hình sau biểu thị
cách hoạt động của board:
Hình : Trình tự boot kernel của KM9260.
(1) KM9260 thực thi ROM boot, load AT91AT91BootStrap.bin từ AT45DB041D-SU (SPI NPCS1) vào SRAM, thực hiện lệnh nhảy và thự thi chương trình AT91BootStrap.
(2) KM9260 thực hiện khởi động PLL cho system clock, khởi động SDRAM controller, load u-boot.bin từ AT45DB041D-SU tại offset 0x8400 vào địa chỉ 0x21F00000 của SDRAM. Sau đó thực hiện lệnh nhảy vào vùng SDRAM để chạy chương trình U-Boot.
(3) U-Boot load kernel uImage từ nhiều nguồn khác nhau (TFTP, NAND FLASH...) chép vào địa chỉ 0x20000000 trên SDRAM, sau đó thực hiện lệnh boot hệ điều hành Linux.
2. CÀI ĐặT CHO BOARD PHÁT TRIỂN NHÚNG
Tổ chức phần mềm trong hệ thống nhúng KM9260
Kernel
File System
BootStrap
U-boot
Cài đặt chương trình cho hệ thống
Cài đặt BootStrap và U- boot .
BootStrap là một chương trình khởi động được nạp xuống trước tiên cho các vi điều khiển dòng ARM 9 của Atmel.
BootStrap là một module ứng dụng, nó được sử dụng để thực hiện các chức năng sau:
Khởi tạo phần cứng như tần số xung clock, thiết lập các PIO (programmable Input Output).
Thiết lập các ngoại vi như PIO, PCM, SDRAMC,..
Thực hiện các thực toán truy xuất vật lý các ngoại vi như DataFlash, NANDFlash, Paralell Flash..
Điều khiển các tập tin hệ thống như JFFS2, FAT..
Thực thi các ứng dụng như ELF, Linux,
BootStrap có thể được đặt trong vùng bootLoader, cụ thể là được đặt trong vùng DataFlash. BootStrap được chép lên RAM nội bởi trình SAM-BA Boot. BootLoader thực hiện khởi tạo vi xử lý (PLL, PIO, SDRAMC, SPI).
BootStrap thực hiện load U-boot từ DataFlash lên SRAM và trỏ đến thực hiện chương trình U-Boot.
Cài đặt BootStrap và u-boot thực hiện theo hướng dẫn trong tài liệu kèm theo board.
U-boot (universal bootLoader) là một tập mã nguồn mở, hổ trợ bootLoader cho nhiều kiến trúc nền khác nhau. U-boot hổ trợ các lệnh tương tác, các biến môi trường, các lệnh thực thi và boot hệ thống từ cá...
 

Các chủ đề có liên quan khác

Top