1. Trang chủ
  2. » Công Nghệ Thông Tin

BÀI 3. TIMER docx

5 589 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 360 KB

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

Nội dung

Mục đích • Giúp sinh viên hiểu được các khái niệm về timer và các đặc điểm của bộ định thời trên Board thực tập 2.. Sơ đồ khối bộ định thời • Nguyên tắc hoạt động cơ bản: o CPU Nios II t

Trang 1

BÀI 3 TIMER

1 Mục đích

• Giúp sinh viên hiểu được các khái niệm về timer và các đặc điểm của bộ định thời trên Board thực tập

2 Yêu cầu

• Sau khi thực hiện xong bài thực hành này, sinh viên có khả năng viết các ứng dụng liên quan đến định thời: đếm, đồng hồ,…

3 Lý thuyết

• Bộ định thời có những đặc điểm sau:

o Bộ đếm 32 bit hay 64 bit

o Có thể đếm theo 2 kiểu: đếm xuống một lần và đếm xuống liên tục

o Timeout có thể là giá trị cố định hay thay đổi được tùy vào việc thiết lập trên SOPC Builder

• Sơ đồ khối của bộ định thời:

Hình 1 Sơ đồ khối bộ định thời

• Nguyên tắc hoạt động cơ bản:

o CPU Nios II truyền giá trị xuống thanh ghi điều khiển để khởi động hay dừng bộ định thời, cho phép hay không cho phép ngắt và qui định chế độ hoạt động (đếm xuống một lần hay đếm xuống liên tục)

o CPU đọc giá trị thanh ghi trạng thái (status register) để biết hoạt động của

bộ định thời

o CPU có thể qui định thời gian định thời bằng cách truyền giá trị cho thanh ghi chu kỳ (period register)

o Một bộ đếm nội đếm xuống Khi bộ đếm đạt giá trị 0, giá trị trong thanh ghi chu kỳ sẽ được load vào bộ đếm

Trang 2

o CPU có thể đọc giá trị trong bộ đếm tại một thời điểm bằng cách viết một giá trị vào một thanh ghi Snapshot nào đó và đọc tất cả các thanh ghi snapshot để có giá trị đầy đủ

o Một xung báo hiệu hoặc một ngắt được sinh ra khi giá trị bộ đếm đạt giá trị 0

• Các thanh ghi trong bộ định thời (Sinh viên có thể tham khảo thêm theo tài liệu

Altera Embedded Peripherals Handbook của hãng Altera):

Bảng 1 Thanh ghi trong bộ định thời 32 bit

Bảng 2 Thanh ghi trong bộ định thời 64 bit

o Thanh ghi trạng thái (Status register)

Trang 3

o Thanh ghi điều khiển (Control register)

Lưu ý: không được ghi bit 1 vào các bit START và STOP cùng lúc.

o Các thanh ghi chu kỳ (Period_n register): các thanh ghi này lưu giá trị để

load vào bộ đếm khi một trong các sự kiện sau xảy ra:

 Bộ đếm đạt giá trị 0

 CPU ghi giá trị vào các thanh ghi chu kỳ

o Các thanh ghi giá trị tức thời (Snap_n register): các thanh ghi này lưu

giá trị khi CPU muốn đọc giá trị của bộ đếm

Ngắt: bộ định thời sinh ra ngắt mỗi khi bộ đếm đạt giá trị 0 và bit ITO trong

thanh ghi điều khiển được set lên 1 Khi ngắt xảy ra, người lập trình phải xóa bit TO trong thanh ghi trạng thái Người lập trình có thể không cho phép ngắt bằng cách xóa bit ITO trong thanh ghi điều khiển

4 Bài tập

Lưu ý:

Để timer có thể chạy đúng, sinh viên phải thiết lập trong Nios II IDE:

Click chuột phải lên tên project  System Library Properties

Thiết lập System Clock Timer và Timestamp timer là none

Trang 4

Bài 1 Lập trình để hệ thống đếm lên sau mỗi 1s (Sinh viên phải dùng bộ định thời).

Hướng dẫn: sinh viên phải khởi động bộ đếm trước khi xét bit TO và phải xóa bit này

sau khi xét.

Chương trình mẫu

#include<io.h>

#define … // timer base

#define … // địa chỉ base của led đỏ

int main()

{

unsigned char i;

unsigned int j;

j = 0;

IOWR(timer base, 0, 0x2); // khoi dong timer

while(1)

{

i =IORD(timer base,0);

IOWR(địa chỉ base của led đỏ,0,j);

if((i&0x1) != 0)

{

j++;

IOWR(timer base, 0, 0x2); // khoi dong timer + xoa bit TO

}

}

return 0;

}

Bài 2 Sinh viên xây dựng một đồng hồ sử dụng các led 7 đoạn để hiển thị giờ, phút,

giây

Hướng dẫn:

Giới thiệu thành phần SEG7 (led 7 đoạn trên board thực tập):

Offset tương ứng với thứ tự của các led thành phần

không thể ghi trực tiếp số muốn hiển thị vào các led 7 đoạn mà phải

sau

Mã Dữ liệu hiển

thị

Mã Dữ liệu hiển

thị

Trang 5

Ví dụ: muốn hiển thị 7 lên led 7 đoạn thứ 0 (HEX0), sinh viên dùng lệnh sau: IOWR(SEG7 base, 0, 0x07 );

Ngày đăng: 07/07/2014, 05:20

Xem thêm

HÌNH ẢNH LIÊN QUAN

Hình  1. Sơ đồ khối bộ định thời - BÀI 3. TIMER docx
nh 1. Sơ đồ khối bộ định thời (Trang 1)
Bảng  1. Thanh ghi trong bộ định thời 32 bit - BÀI 3. TIMER docx
ng 1. Thanh ghi trong bộ định thời 32 bit (Trang 2)

TỪ KHÓA LIÊN QUAN

w