PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > MPASM

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

MPASM Lập trình bằng hợp ngữ là một việc làm vô cùng vất vả, tuy nhiên, để hiểu và làm việc với vi điều khiển, hợp ngữ trở thành một công cụ khá đắc lực ...

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 02-01-2010, 06:56 PM   #1
motu
Đệ tử 4 túi
 
Tham gia ngày: Oct 2007
Bài gửi: 79
:
to namqn: mình s/dụng con PIC16F877A, sorry vì là dân amatuer nên tưởng 2 con đó giống nhau .
to thanh_nam1977: botay, bài viết của bạn quá là chi tiết, hình minh họa rất sinh động, đến nỗi con EasyPIC cũng y chang của mình luôn , mình làm y chang theo cách bạn và kết quả là .... mạch không chạy, chắc tại mình dốt quá, cuối cùng phải làm theo cách khác, sửa code lại thành

__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC & _LVP_OFF

cũng tương tự như cách bạn hướng dẫn, và kết quả là quá OK, đèn chạy sáng trưng , Thk bạn nhiều lắm, kết bạn nhất là câu PS: Các bạn mới học gặp khó ban đầu dễ nản lắm đề nghị mọi người giúp đỡ tận tình nhé, càng chi tiết càng tốt (Kết quả chụp bằng HTC HD2 nhìn ngon hơn Iphone 3GS kg bà con:X).
Mong rằng năm mới nhà bạn nước chảy dài dài để bạn có thời gian nằm chờ nước chảy cho dân ngoại đạo học đòi chơi PIC như mình đỡ khổ . Nhân tiện cho mình hỏi cái _LVP_OFF có ý nghĩa gì vậy?
Một lần nữa xin cám ơn và chúc cả nhà vui vẻ!!!
motu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 02-01-2010, 07:46 PM   #2
thanh_nam1977
Đệ tử 2 túi
 
thanh_nam1977's Avatar
 
Tham gia ngày: Apr 2007
Nơi Cư Ngụ: Ho Chi Minh
Bài gửi: 27
:
Send a message via Yahoo to thanh_nam1977
Trích:
Nguyên văn bởi motu View Post
to namqn: mình s/dụng con PIC16F877A, sorry vì là dân amatuer nên tưởng 2 con đó giống nhau .
to thanh_nam1977: botay, bài viết của bạn quá là chi tiết, hình minh họa rất sinh động, đến nỗi con EasyPIC cũng y chang của mình luôn , mình làm y chang theo cách bạn và kết quả là .... mạch không chạy, chắc tại mình dốt quá, cuối cùng phải làm theo cách khác, sửa code lại thành

__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC & _LVP_OFF

cũng tương tự như cách bạn hướng dẫn, và kết quả là quá OK, đèn chạy sáng trưng , Thk bạn nhiều lắm, kết bạn nhất là câu PS: Các bạn mới học gặp khó ban đầu dễ nản lắm đề nghị mọi người giúp đỡ tận tình nhé, càng chi tiết càng tốt (Kết quả chụp bằng HTC HD2 nhìn ngon hơn Iphone 3GS kg bà con:X).
Mong rằng năm mới nhà bạn nước chảy dài dài để bạn có thời gian nằm chờ nước chảy cho dân ngoại đạo học đòi chơi PIC như mình đỡ khổ . Nhân tiện cho mình hỏi cái _LVP_OFF có ý nghĩa gì vậy?
Một lần nữa xin cám ơn và chúc cả nhà vui vẻ!!!
Ý nghĩa của LVP là đây:
Code:
2: While in Low Voltage ICSP mode, the
RB3 pin can no longer be used as a general
purpose I/O pin.
3: When using low voltage ICSP programming
(LVP) and the pull-ups on PORTB
are enabled, bit 3 in the TRISB register
must be cleared to disable the pull-up on
RB3 and ensure the proper operation of
the device.
4: RB3 should not be allowed to float if LVP
is enabled. An external pull-down device
should be used to default the device to
normal operating mode. If RB3 floats
high, the PIC16F87XA device will enter
Programming mode.
5: LVP mode is enabled by default on all
devices shipped from Microchip. It can be
disabled by clearing the LVP bit in the
CONFIG register.
6: Disabling LVP will provide maximum compatibility
to other PIC16CXXX devices.
Viết thì nhiều nhưng thực dụng nhất theo mình, khi ở LVP ON ,chỉ cần hiêu nôm na : Khi muốn sử dụng chân RB3 của PortB ở chế độ Digital I/O thì phải dùng một điện trở kéo xuống mass nếu không khi RB3 on thì vi điều khiển sẽ chuyển sang trạng thái Nạp chứ không ở chế độ chạy (Run).Do vậy, để tránh rắc rối thì chuyển sang LVP_OFF

thay đổi nội dung bởi: thanh_nam1977, 02-01-2010 lúc 07:59 PM.
thanh_nam1977 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 02-01-2010, 07:59 PM   #3
thanh_nam1977
Đệ tử 2 túi
 
thanh_nam1977's Avatar
 
Tham gia ngày: Apr 2007
Nơi Cư Ngụ: Ho Chi Minh
Bài gửi: 27
:
Send a message via Yahoo to thanh_nam1977
To: Thầy Nguyển Quang Nam (Học với thầy môn thí nghiệm kỹ thuật điện 1 lâu rồi, nhanh thật!)
Theo tài liệu thì PORT A của 16F877A có thể đực dùng như I/O. Về điểm này, nhiều người làm không chạy, mà những người trả lời thì cũng trả lời chung chung là do chưa đặt ADCON1 và CMCON.Xem lại datasheet thì có điều đó thật nhưng thử lại rồi vẫn không được. Code sau cực đơn giản chỉ để nhằm mục đích test cách đặt cấu hình port A, bật 2 bit RA1,RA2 lên nhưng khi chạy thì chỉ có bit RA6 sáng còn các bit khác tắt. Nhờ thầy xem hộ
Code:
;=======================================================
		TITLE 		"Test Port A"
		PROCESSOR	PIC16F877A
		INCLUDE 	<P16F877A.inc>
		__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC & _LVP_OFF
	;=======================================================
    ;===============================================================================
		ORG	0x0000
		GOTO	MAIN


		ORG	0x0005

MAIN		
		BCF		STATUS,RP0
		BCF		STATUS,RP1
		CLRF	PORTA
	
		BSF		STATUS,RP0
                MOVLW 	b'00000110'
		MOVWF 	ADCON1
	        MOVLW 	b'00000111'
		MOVWF 	CMCON
		MOVLW 	b'00000000'
		MOVWF 	TRISA			
	
		BCF		STATUS,RP0
		BCF		STATUS,RP1
		MOVLW 	b'00000110'
		MOVWF 	PORTA
		END
PS: Bạn nào trên Forum đã viết port A như Digital I/O và quan trọng là đã chạy dùng với 16f877a thì post lên cho tham khảo với nhé
thanh_nam1977 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à 10:02 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