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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 24-04-2008, 11:12 PM   #1
now_nev
Nhập môn đệ tử
 
Tham gia ngày: Apr 2008
Bài gửi: 10
:
Nạp cho 16f877a bằng GTP-USP, chạy không đúng như lập trình

Em mới học pic nên chưa có nh kinh nghiệm, mong các anh giúp em.
Em viết chương trình xuất led đơn giản như thế này
Code:
   	processor 16f877a
	include <p16f877a.inc>
	__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF
		org 00h
		goto main
main 
count1 equ  20h
count2 equ  21h
count3 equ  22h
	bsf STATUS, RP0
	bcf STATUS, RP1
	clrf TRISB
	bcf STATUS, RP0
	clrf PORTB
	bsf PORTB, 7
	call delay
loop
	rrf PORTB, 1
	call delay
	goto loop
delay
	movlw 0
	movwf count1
	movwf count2
	movlw 5
	movwf count3
loop_count1
	decfsz count1, 1
 	goto loop_count1
loop_count2
	decfsz count2, 1
	goto loop_count1
loop_count3
	decfsz count3, 1
	goto loop_count1
	Return
		END
em đã thử chạy bằng MPLAB thì thấy chạy đúng, nhg khi nạp vô Pic thì nó chạy tùm lum hết. Hiện tượng là: khi đag sáng led 7, qua led 6 thì jống như là nó reset bắt đầu lại từ cái dòng " bsf PORTB, 7" vậy. Em MCLR thì lâu lâu hên hên nó qua đc led 5 rồi lại trở lại led 7
Cái này là tại con pic hay tại chương trình nạp vậy? Em đã verify sau khi nạp rồi, ok. Còn mạch thì đơn giản, nên chắc là sẽ không phải tại mạch rồi (em không dùng mạch in mà dùng breadboard)
Mong các anh giúp em.

thay đổi nội dung bởi: namqn, 24-04-2008 lúc 11:30 PM.
now_nev vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 24-04-2008, 11:36 PM   #2
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Cái điều bạn khẳng định chắc chắn có khi lại không chắc chắn đó ("Còn mạch thì đơn giản, nên chắc là sẽ không phải tại mạch rồi"). Bạn dùng thạch anh ngoài tần số bao nhiêu (vì bạn cấu hình dùng XT, nên tôi cho là bạn dùng thạch anh ngoài)?

Breadboard (đặc biệt là breadboard ở VN) được biết là dễ gây rắc rối cho các mạch dao động thạch anh ở dải tần số MHz. Dù mạch thử nghiệm có đơn giản đến đâu thì bạn cũng nên cho biết là bạn đã nối nó như thế nào. Người mới học thường mắc những lỗi cơ bản, mặc dù cái mạch nó chẳng có gì để mắc lỗi.

Bạn đã mô phỏng code thành công, cho thấy chương trình ít nhất phải chạy như thiết kế. Bạn đã chạy thử được một phần chương trình, cho thấy chương trình đã được nạp vào chip thành công. Như vậy, vấn đề còn lại là phần cứng thử nghiệm của bạn thôi.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 24-04-2008, 11:58 PM   #3
now_nev
Nhập môn đệ tử
 
Tham gia ngày: Apr 2008
Bài gửi: 10
:
Em dùng thạch anh 4mhz, 2 tụ 33pf, nối như trong tài liệu của anh Nam đã hd. Cái breadboard nối với các led thì em đã làm từ trc để học mấy cái ic cơ bản. Chân MCRL thì em nối cũng như anh hướng dẫn nhưg em dùng 2 cái điện trở 1k (vì em chỉ có sẵn loại 1k thôi ). Ah em có viết 1 chương trình khác đơn jản hơn là:
Code:
main 
count1 equ  20h
count2 equ  21h
count3 equ  22h
	bsf STATUS, RP0
	bcf STATUS, RP1
	clrf TRISB
	bcf STATUS, RP0
	clrf PORTB
	bsf PORTB, 7
	call delay
	bsf PORTB, 6
	call delay
	bsf PORTB, 5
	call delay
	bsf PORTB, 4
	call delay
	bsf PORTB, 3
	call delay
	bsf PORTB, 2
	call delay
	bsf PORTB, 1
	call delay
	bsf PORTB, 0
             call delay
thì nó chạy đúng. Nhưg cũng có lúc nó chạy sai, seset lại từ đầu khi chưa sáng hết các đèn. Em reset chip 10 lần thì khoảng 3 lần nó chạy sai như vậy, bó tay lun

thay đổi nội dung bởi: falleaf, 25-04-2008 lúc 01:00 PM.
now_nev vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-04-2008, 08:08 PM   #4
now_nev
Nhập môn đệ tử
 
Tham gia ngày: Apr 2008
Bài gửi: 10
:
sao ko ai trả lời giúp em hết vậy?
now_nev vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-04-2008, 08:14 PM   #5
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi now_nev View Post
sao ko ai trả lời giúp em hết vậy?
Mỗi người đều có công việc của mình mà bạn, có phải ai cũng rảnh rỗi suốt ngày ngồi chờ người khác hỏi để trả lời đâu.

Thạch anh có nhiều loại, không phải thạch anh 4 MHz nào cũng giống nhau. Giá trị tụ 33 pF là giá trị khuyến cáo để thử nghiệm, bạn có thể phải tăng hay giảm nó đôi chút. Bạn cũng có thể thử cấu hình HS thay vì XT, vì có một số thạch anh có mức công suất lái cao hơn số khác.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-04-2008, 08:37 PM   #6
now_nev
Nhập môn đệ tử
 
Tham gia ngày: Apr 2008
Bài gửi: 10
:
cám ơn anh, em sẽ thử
now_nev vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


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à 04:07 PM.


Đượ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