View Single Post
Old 26-01-2013, 09:48 AM   #1
qloi
Đệ tử 3 túi
 
Tham gia ngày: Sep 2010
Bài gửi: 55
:
Trích:
Nguyên văn bởi lanhchanh View Post
Chào các bác, em đang gặp phải tình huống lạ này về con PIC12F629. Đó là viết code bằng HTC, mô phỏng trên Protues thì chạy ngon lành. Nhưng khi nạp cho con PIC thực tế, nạp vẫn được. Nhưng khi cấp nguồn, mạch hoạt động lúc được, lúc không (cấp vài lần thì được 1 lần hoạt động).

Em cũng kiểm tra kỹ phần nguồn rồi, 5VDC và không bị chập chờn.

Đây là code của em, em chỉ test trên mạch led chớp tắt thôi:

Code:
 

#include<htc.h>
#include<pic12f629.h>
__CONFIG(FOSC_INTRCIO & WDTE_OFF & PWRTE_OFF & MCLRE_ON & BOREN_OFF & CP_OFF & CPD_OFF);

#define _XTAL_FREQ   4000000    

bit x;
void main()
{	
	x=0;
	CMCON  = 0x07;		 // Shut off the Comparator
	VRCON  = 0x00;	     // Shut off the Voltage Reference
	TRISIO = 0x01;		// GP0 input, rest all output
	WPU    =	1;	 
	GPPU   = 	0;
	GPIO   = 0x00;       // Make all pins 0
	
	
	while(1)
	{

	if(!GP0||x)	 
	{
		x=1;
		GP1=1;	 
		GP2=1;
		__delay_ms(500);
		GP2=0;	
		__delay_ms(500);
	}
	}
}
Em gặp lỗi này lần đầu luôn đấy, không biết có phải là do con PIC bị lỗi không các bác nhỉ?

Cám ơn các bác đã đọc.
Theo t thấy vấn đề nằm ở cái hàm if của bác đó. thứ nhất hàm chỉ thực hiện khi chân GP0=0 , và x thì bạn không cho giá trị cụ thể vì ở đây dấu || là toán tử điều kiện chứ không phải phép OR
__________________
heart.touching.2010@gmail.com!
qloi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn