THỰC HÀNH VI XỬ LÝ - Khoa Khoa học và Kỹ thuật Máy tính
THỰC HÀNH VI XỬ LÝ - Khoa Khoa học và Kỹ thuật Máy tính
THỰC HÀNH VI XỬ LÝ - Khoa Khoa học và Kỹ thuật Máy tính
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Trường ĐH. Bách <strong>Khoa</strong> TP.HCM <strong>Khoa</strong> KH & KTMT<br />
MOVLW .3<br />
MOVWF COL<br />
CALL GET_KEY<br />
MOVFF KeyReg1,W<br />
CPFSEQ KeyReg2<br />
GOTO EXIT_SCAN_BUTTON<br />
CPFSEQ KeyReg3<br />
GOTO EXIT_SCAN_BUTTON<br />
MOVFF KeyReg,W<br />
CPFSEQ KeyReg1<br />
GOTO Scan_button1<br />
GOTO EXIT_SCAN_BUTTON<br />
Scan_button1<br />
MOVFF KeyReg1,KeyReg<br />
CALL Button_process<br />
EXIT_SCAN_BUTTON<br />
RETURN<br />
Bước 8: Như giải <strong>thuật</strong> trên nói là cứ mỗi 10ms thì ta đọc dữ liệu một lần,<br />
để cho điều này được thực hiện dễ dàng thì ta phải dùng đến interrupt timer. Ta<br />
khởi tạo một interrupt timer cứ sau 10ms thì interrupt một lần. Để làm được điều<br />
này các bạn có thể xem lại chương timer để có thể làm việc một cách dễ dàng.<br />
Ở đây chỉ giới thiệu cho các bạn là hàm Timer0_routine, hàm này được gọi<br />
trong interrupt timer <strong>và</strong> trong hàm này ta gọi hàm Scan_button ở trên.<br />
TIMER0_ROUTINE<br />
BCF INTCON,TMR0IF<br />
BCF T0CON,TMR0ON<br />
MOVLW 0x3c<br />
MOVWF TMR0H<br />
MOVLW 0xaf<br />
MOVWF TMR0L<br />
BSF T0CON,TMR0ON<br />
CALL SCAN_BUTTON<br />
RETURN<br />
5.3 Bài tập<br />
Cải tiến hàm chống rung phím, khi nhấn đè 1 phím thì phải sau 1 thời gian<br />
TimeOutForKey thì mới tích cực phím nhấn đó.<br />
Viết ứng dụng đồng hồ casio đơn giản (hiển thị giờ, ngày, cho phép chỉnh sửa<br />
Bộ môn <strong>Kỹ</strong> Thuật <strong>Máy</strong> Tính 54 Thực hành Vi xử lý