PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và PIC

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 26-11-2009, 10:36 PM   #16
bien_van_khat
...Damned...
 
bien_van_khat's Avatar
 
Tham gia ngày: Apr 2006
Nơi Cư Ngụ: Hồ Chí Minh
Bài gửi: 522
:
Trích:
Nguyên văn bởi halfblood88 View Post
Code:
  MOVLW  d’20’                       ; đưa giá trị  20 vào thanh ghi W 
  MOVWF            delay‐reg       ; delay‐reg <‐ 20 
loop  
  DECFSZ             delay‐reg,0   ; giảm giá trị trong thanh ghi delay‐reg 
                                            ; và so sánh với 0, kết quả chứa trong W
 GOTO                loop             ; nếu giá tri thanh ghi “delay_reg” khác 0 
                                            ; thì nhảy tới label “loop”
Trong bài hướng dẫn này thì tác giả có nói là thanh ghi delay_reg sẽ giảm 20+1 lần.Ứng với giá trị ban đầu của delay_reg bằng N thì sẽ giảm N+1 lần.Nhưng mình thử phân tích thì thấy thế này:
-Giả sử ban đầu nạp vào thanh ghi delay_reg giá trị là 2.Loop lần 1 sẽ giảm thanh ghi delay_reg xuống còn 1 so sánh rồi thực hiện lệnh goto.Loop lần 2 sẽ giảm thanh ghi delay_reg xuống còn 0 so sánh thì nhảy cách.Như vậy chẳng phải chỉ có 2 lần giảm thanh ghi.Trong khi trong bài hướng dẫn tác giả lại nói là N+1 tức ở đây là 3 lần
Bạn phân tích đúng, ko rõ đoạn code ví dụ bạn lấy từ đâu
Trích:
-Và như mình thấy ở trên lần giảm thanh ghi cuối cùng tức từ 1->0 thì lệnh goto loop ko được thực hiện vậy sao khi tính thời gian thực hiện lại là 3x(N+1).Có phải lúc đó lệnh Goto loop được thay bởi lệnh nop (1 chu kỳ) + decfsz lần cuối ( 2 chu kỳ) nên được gộp chung vào ko
Lệnh decfsz ở lần cuối cùng sẽ mất 2 chu kỳ máy, 1 chu kỳ để thực hiện thao tác trừ 1, 1 chu kỳ trễ do thay đổi thanh ghi PC (bỏ qua lệnh goto). Do đó công thức tính chính xác là 3N + 2
__________________
- Xin đọc trước khi post bài

Xin đặt code trong thẻ [ code ] [ /code ]
bien_van_khat vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 02:50 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam