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 29-04-2006, 10:35 PM   #26
ahchu
Đệ tử 1 túi
 
Tham gia ngày: Mar 2006
Bài gửi: 23
:
ừm....Em nghĩ ra một cách để khắc phục việc quẹo góc nhọn là như sau: em sẽ tạo ra 2 function định nghĩa về góc nhọn cho robot. 1 function định nghĩa về góc nhọn quẹo trái: 101 -> 100 -> 000 -> 001 -> 011 (giữa line -> đèn bên trái nằm trong line -> cả 3 đèn cùng trên line -> đèn bên trái ra khỏi line trước -> đèn trái và đèn giữa ra khỏi line). Robot đang đi giữa line sẽ check điều kiện đặc biệt này, nếu như kô đúng thì sẽ nhảy về những trường hợp bình thường. (Đèn trái là bit 0, đèn giữa là bit 1 và đèn phải là bit 2).
Tuy nhiên lúc em đặt đoạn code trên như sau:
Code:
loop
	movf	PORTA,0
	movwf	PORTB
	goto	case1

STL
	movlw	b'00000100'
	cpfseq	PORTA	
	return
	movlw	b'00000000'
	cpfseq	PORTA								
	return
	movlw	b'00000001'
	cpfseq	PORTA				
	return
	movlw	b'00000011'
	cpfseq	PORTA	
	return
s1	
	call	RIGHT_WHEEL_FAST
	call	LEFT_WHEEL_SLOW	
	
	movlw	b'00000101'
	cpfseq	PORTA	
	return
	goto	s1

STR
	movlw	b'00000001'
	cpfseq	PORTA	
	return
	movlw	b'00000000'
	cpfseq	PORTA								
	return
	movlw	b'00000100'
	cpfseq	PORTA				
	return
	movlw	b'00000110'
	cpfseq	PORTA	
	return
s2
	call	RIGHT_WHEEL_SLOW
	call	LEFT_WHEEL_FAST
	
	movlw	b'00000101'
	cpfseq	PORTA	
	return
	goto	s2

special
	call	STL
	call	STR
	goto	case2
	
case1							;center
	movlw	b'00000101'
	cpfseq	PORTA				;if equal skip
	goto	special
	
	call	LEFT_WHEEL_NORM
	call	RIGHT_WHEEL_NORM

	goto	loop

case2							;on left hand side
	movlw	b'00000001'
	cpfseq	PORTA
	goto	case3
	
	call	LEFT_WHEEL_FAST
	call	RIGHT_WHEEL_NORM
	goto	loop

.... như đoạn code ở bài trên
thì dường như là nó kô check được điều kiện đăc biệt

STL: Sharp Turn Left (góc nhọn bên trái)
STR: Sharp Turn Right (góc nhọn bên phải)

Em nghĩ là phải cần có interupt để can thiệp vào nhưng kô biết phải làm sao cả. Mong mọi người giúp em.
Hay em nghĩ là 3 sensor đặt ngang hàng thì kô thể nào quẹo góc nhọn được....em cũng chẳng biết nữa....em bó tay rồi. hic. Em đọc tài liệu trên mạng thì thấy sensor toàn đặt theo kiểu mũi tên chứ kô đặt thẳng hàng....
ahchu 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à 10:53 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