Bài tập vi điều khiển có lời giải 16f887 năm 2024

Công thức tính tDELAY trên vận dụng cho trường hợp sử dụng nguồn xung clock bên trong Trong trường hợp sử dụng nguồn xung clock bên ngoài lấy từ bộ giao động Timer 1 [ T1OSI và T1OSO ] thì công thức tính tDELAY như sau 🙁   ] OS 165536 1 4 1 Pr tDELAY = − TMR   fTC [ ]  e

  • BƯỚC 2: Xóa cờ báo tràn [cờ ngắt] TMR1IF.
  • BƯỚC 3: Chọn chế độ hoạt động của Timer 1
    • Chế độ định thời gian [Timer]
    • Kích hoạt hoặc vô hiệu hóa ngắt [tùy chọn]
    • Chọn giá trị tỉ lệ của Prescaler
  • BƯỚC 4: Cho phép Timer 1 bắt đầu hoạt động
  • BƯỚC 5: Xác định thời điểm Timer 1 bị tràn [đủ thời gian cần định thời của Timer] bằng cách – Kiểm tra cờ TMR1IF [nếu dùng thăm dò] – Xử lý ISR của Timer 1 [nếu dùng ngắt] Để đếm các sự kiện [Counter]:
  • BƯỚC 1: Xóa giá trị trong thanh ghi TMR1 [hoặc đặt giá trị ban đầu của bộ đếm]
  • BƯỚC 2: Xóa cờ báo tràn [cờ ngắt] TMR1IF
  • BƯỚC 3: Chọn chế độ hoạt động của Counter 1
  • Chế độ đếm sự kiện [Counter]
  • Kích hoạt hoặc vô hiệu hóa ngắt [tùy chọn]
  • Chọn giá trị tỉ lệ của Prescaler
  • Chọn tính năng đồng bộ hoặc không đồng bộ xung
  • BƯỚC 4: Cho phép Counter 1 bắt đầu
  • BƯỚC 5: Đọc về và xử lý số xung đếm được trong thanh ghi TMR [TMR1H:TMR1L]; Dựa vào cờ báo tràn TMR1IF để xử lý các trường hợp số xung đếm vượt quá 65535

Câu 2: Lập trình PIC16F887, sử dụng ngắt PORTB điều khiển led bảy đoạn theo yêu cầu sau: _Yêu cầu:

  • Nhấn SW0: led đếm lên từ 00 đến 24 một lần. thời gian tồn tại mỗi trạng thái là 300ms
  • Nhấn SW1: led đếm xuống từ 60 đến 00 và lặp lại hai lần. thời gian tồn tại mỗi trạng thái là 300ms
  • Nhấn SW2: led hiển thị số FP chớp tắt ba lần với f = 1 Hz_

a. Trình bày lý thuyết hoặc tính toán các công thức liên quan đến bài làm :

  • Ngắt PORTB [sử dụng RB0 : RB7] GIE=1 : cho phép ngắt toàn cục RBIF=0 : xoá cờ ngắt PORTB RBIE=1 : cho phép ngắt PORT B IOCBX=1 [X=0 :7] : cho phép ngắt chân RBX của PORTB
  • Cách biến đổi tách các chữ số thuộc hàng chục hàng, đơn vị : Hàng chục = Y/ Hàng đơn vị = Y%

b. Lưu đồ giải thuật

dem24[]

Hàng chục : i / Hàng đơn vị chức năng : i %

For[i=0;i ON

Chủ Đề