PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) (http://www.picvietnam.com/forum/forumdisplay.php?f=12)
-   -   Ghi đọc eeprom PIC6F887a! (http://www.picvietnam.com/forum/showthread.php?t=34792)

phtuan 24-03-2016 08:13 AM

Ghi đọc eeprom PIC6F887a!
 
Chào mọi người. Mình viết chương trình đọc và ghi vào eeprom của 1 chuỗi data gồm 1 biến num_point và 1 mảng biến point kiểu cấu trúc. Mô phỏng chương trình trên proteus thì chạy OK nhưng chạy mạch ngoài thực tế thì kg đúng. Chương trình của mình:

//Khai báo:
struct alarm_time
{
int8 day:3;
int8 hour:5;//kieu thap phan
int8 min:6; //kieu thap phan
int8 style:2;
};
struct alarm_time point[45];

int8 num_point;
//Chương trình con ghi vào eeprom
void write_point()
{
int8 i;
write_eeprom(0,num_point);
delay_ms(10);
for (i=0;i<num_point;i++)
{
write_eeprom(4*i+1,point[i].day);
delay_ms(10);
write_eeprom(4*i+2,point[i].hour);
delay_ms(10);
write_eeprom(4*i+3,point[i].min);
delay_ms(10);
write_eeprom(4*i+4,point[i].style);
delay_ms(10);
}

}

//Chương trình con đọc từ eeprom
void read_point()
{
int8 i,temp_receive;
temp_receive=read_eeprom(0);
num_point=temp_receive;
for (i=0;i<num_point;i++)
{
point[i].day =read_eeprom(4*i+1);
point[i].hour =read_eeprom(4*i+2);
point[i].min =read_eeprom(4*i+3);
point[i].style =read_eeprom(4*i+4);
}
}

Trong chuơng trình mình khởi tạo chuỗi data sau đó dùng hàm:
write_point();
read_point();
Biên dịch và nạp chương trình để cho pic lưu giá trị vào eeprom
Sau đó xóa hàm write_point() chỉ dùng hàm read_point() biên dịch và nạp lại cho pic thì chương trình chạy khg đúng.
Bạn nào có kinh nghiệm về vấn đề này giúp mình. Thanks all!

1041002 29-03-2016 03:30 PM

Chào bạn, có một số chương trình mình viết và mô phỏng trên proteus thì chạy nhưng trên thực tế lại không chạy. Mình nghĩ proteus chỉ mô phỏng dạng nguyên lý, giải thuật, trên board thực tế còn nhiều yếu tố khác đi như các linh kiện thụ động và thạch anh...
Chúc bạn thành công!


Múi giờ GMT. Hiện tại là 03:38 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam