Danh mục tài liệu

Tutorial n

Số trang: 19      Loại file: pdf      Dung lượng: 191.98 KB      Lượt xem: 5      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Thông qua các ví dụ về hiển thị LED, bộ khung cơ bản của chương trình hợp ngữ cho dspic cùng với một số lệnh và thao tác cơ bản của dspic được phân tích. Khung cơ bản sẽ giới thiệu các phần.
Nội dung trích xuất từ tài liệu:
Tutorial nNgười báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01Ngày: 5/3/2006 Trang: 1/19 Tutorial no 02.01Gửi đến: Đoàn Hiệp, www.picvietnam.comNội dung: Chương trình hợp ngữ hiển thị LED với dsPIC MICROSOFT WORDTóm tắt: Hướng dẫn viết chương trình hợp ngữ hiển thị LED cho dsPIC: Khung cơ bản của một chươngtrình hợp ngữ cho dsPIC, một số lệnh và thao tác cơ bản.1. Giới thiệu Thông qua các ví dụ về hiển thị LED, bộ khung cơ bản của chương trình hợp ngữ cho dsPIC cùng với một số lệnh và thao tác cơ bản của dsPIC được phân tích. Khung cơ bản sẽ giới thiệu các phần như: thông tin cơ bản, lệnh gộp (include), đặt cấu hình cho chip, khai báo hằng số, khai báo điểm bắt đầu chương trình, chương trình con, chương trình xử lý ngắt. Các lệnh được giới thiệu (không đầy đủ) thuộc các nhóm: lệnh sao chép dữ liệu, lệnh số học, lệnh luận lý, lệnh dịch/xoay, lệnh thao tác bit, lệnh so sánh, lệnh chuyển điều khiển. Thao tác truy xuất cổng, cài đặt và kích hoạt bộ định thời (timer), cũng như các thao tác thiết lập ngăn xếp (stack) sẽ được đề cập. Ngoài ra, một số kiểu định vị cũng sẽ được nói đến.2. Các quy ước trong tài liệu Mô tả Biểu thị Ví dụ Font Palatino Linotype: dsPIC30F/33F In nghiêng Tài liệu tham khảo Programmer’s Reference Manual Viết hoa chữ đầu Chọn một menu chọn Project Wizard Một tên trường trong cửa “Save project before Đặt trong dấu nháy kép sổ hay hộp thoại build” Một nút nhấn Nhấn Next In đậm Một nhãn Chọn nhãn Power Văn bản giữa các dấu Một phím trên bàn phím Nhấn , ngoặc nhọn < > Font Courier: Courier thường Mã nguồn mov #0x8010, W0Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01Ngày: 5/3/2006 Trang: 2/19 Từ khóa blcr, bra Tên tập tin, đường dẫn D:\Microchip\ Tùy chọn ở dòng lệnh pic30-as –-version3. Các ví dụ về LED Trước khi bắt đầu theo dõi các ví dụ, bạn hãy chép các tập tin nguồn đã được đính kèm vào một thư mục nào đó mà bạn sẽ dùng để tạo ra project “Vidu2”. 3.1. Ví dụ 2-1 Bạn hãy làm theo các bước như trong tutorial 1 để tạo một project có tên là “Vidu2”, bạn thêm vào project tập tin nguồn “Vidu2-1.s” (được đính kèm) và kịch bản liên kết “p30f4012.gld”. Sau khi hoàn tất việc tạo project, cửa sổ cây quản lý tập tin của project hẳn sẽ trông giống như hình minh họa dưới đây. Hình 3.1: Cây quản lý tập tin của project Vidu2 Vì đây là tutorial thứ hai nên các ví dụ được đặt tên bắt đầu bằng “Vidu2”, nhưng “Vidu2-1.s” thực chất là “Vidu.s” đã được giới thiệu trong tutorial 1. Trong ví dụ này, một chương trình đơn giản sẽ thực hiện việc làm nhấp nháy một LED nối vào chân RD0 của dsPIC. Tôi giả thiết rằng bạn biết cách nối một LED vào chân RD0 của dsPIC trên mạch thử nghiệm của bạn, một khi bạn đọc tài liệu này (tất nhiên các chân nguồn và chân MCLR cần phải được kết nối thích hợp, chương trình ví dụ sẽ sử dụng bộ dao động nội của dsPIC, do đó không cần có mạch tạo dao động để cấp xung clock ở bên ngoài). Để tiện theo dõi, chương trình nguồn “Vidu2-1.s” được liệt kê dưới đây, với một số phần chú thích được cắt bỏ cho thuận tiện. Liệt kê mã nguồn “Vidu2-1.s”: 1 .equ __30F4012, 1 2 .include p30fxxxx.inc 3 config __FOSC, CSW_FSCM_OFF & FRC_PLL4 4 config __FWDT, WDT_OFF 5 config __FBORPOR, MCLR_EN & PBOR_OFFNgười báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01Ngày: 5/3/2006 Trang: 3/19 6 config __FGS, CODE_PROT_OFF ;--------------------------------------------------------------- ;Cac hang so (gia tri tuc thoi) cua chuong trinh 7 .equiv LED, 0 ;LED noi vao RD0 ;--------------------------------------------------------------- ;Cac khai bao toan cuc 8 .global __reset ;Khai bao nhan bat dau chuong trinh (bat buoc) 9 .global __T1Interrupt ;Khai bao toan cuc c/t xu ly ngat Timer 1 ;--------------------------------------------------------------- ;Doan ma trong vung nho chuong trinh 10 .text ;Bat dau doan ma chuong trinh __reset: 11 mov #__SP_init, W15 ;Khoi tao con tro ngan xep (stack) 12 mov #__SPLIM_init, W0 13 mov W0, SPLIM ;Khoi tao thanh ghi gioi han con tro (stack) 14 nop ;Can mot lenh NOP sau khi ghi vao SPLIM 15 clr W0 ;Xoa thanh ghi lam viec W0 16 mov W0, W14 ;Xoa cac thanh ghi W1 den W14 17 repeat #12 18 mov W0,[++W14] ;Dia chi cua cac thanh ghi: 0x0002 - 0x001C 19 clr W14 ;--------------------------------------------------------------- 20 rcall Init_PORTS ;Khoi tao cac cong I/O 21 rcall Init_TMR1 ;Khoi tao cho TMR1 (tran moi 0,5 giay) main_loop: 22 nop 23 nop 24 bra main_loop ;Vong lap chinh, khong lam gi ca, chi cho ngat ;--------------------------------------------------------------- ;Chuong trinh con khoi tao TMR1 ...

Tài liệu được xem nhiều:

Tài liệu có liên quan: