View Single Post
Old 29-12-2008, 04:31 PM   #6
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
Do khong thể sử dung dong thời chuong trỉnh giao tiep voi máy tinh và chuong trinh Tiny Bootloader dược, nen em lam như sau:
Mở chuong trình giao tiep vói máy tính lên, gửi lênh "Reset PIc"(nêu viet bang CCS thì dung lenh sau: Reset_cpu()) sau đó nhanh tay tat chuong trình giao tiep voi máy tính đi, mở chuong trình Tiny Bootloader len và nạp chuong trình. Tấc nhiên có thể dùng vòng lặp(giá trị của vòng lặp này phải lưu trong eeprom-->dể không mất khi Reset lại PIC,) để tang thời số lần gọi lenh Reset
Em da viết chuong trình này, thấy rat hiệu quả, làn nào cung nhận ra PIc, nap tốt, có diều nó hoi rườm ra như vậy.

void upload_program()
{
int8 read_value;
read_value=read_eeprom (0x01);//đọc giá trị vòng lạp đã lưu trong eeprom
if(read_value!=0x00)//so sánh giá trị này với 0x00
{
read_value--;//giảm giá trị vòng lặp đi
write_eeprom(0x01,read_value); //ghi lai vào eeprom
printf("\r\n Remaining %d times \r\n",read_value);//hien ra man hình số lan Reset
//còn lại
reset_cpu(); //Reset Pic
}
if(read_value==0)
printf("\r\n Start Program \r\n");//thuc hien chuong trinh ung dung.
}
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn