PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Bootloaders - Programmers - Debuggers - Emulators > Tiny Bootloader

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc Vi điều khiển

Tiny Bootloader Mọi vấn đề liên quan tinybootloader sẽ được tổng hợp ở đây.

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 30-07-2010, 11:46 PM   #1
hongquyen
Đệ tử 4 túi
 
hongquyen's Avatar
 
Tham gia ngày: Jun 2007
Bài gửi: 74
:
Question nhờ anh Nam giải đáp hộ em bài BLD này với!

em chào anh, hiện giờ em muốn tạo một BLD với (tinyBLD) cho chip không có trong file icdpictypes. vậy muốn tạo ra một BLD cho chip A, đơn giản là tìm 1 con nào đó có trong danh sách


- em muốn tạo BLD cho con 16F882 có bộ nhớ flash là 0x800 (2048 words) nhưng không có bộ nhớ này trong danh sách icdpictypes vậy là mình không thể tạo BLD cho con này bằng tinyBLD hả anh??

thay đổi nội dung bởi: hongquyen, 26-08-2010 lúc 11:08 PM.
hongquyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 31-07-2010, 08:37 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
Bạn vào thư mục cài đặt Tiny Bootloader (được tạo ra sau khi bung tập tin Tinybld1xx.zip), tìm hiểu nội dung của tập tin "piccodes.ini" (có từ phiên bản 1.95), rồi tôi sẽ bàn tiếp về cách thực hiện các yêu cầu của bạn.

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 31-07-2010, 09:52 PM   #3
hongquyen
Đệ tử 4 túi
 
hongquyen's Avatar
 
Tham gia ngày: Jun 2007
Bài gửi: 74
:
em chào anh:

em đã đọc tập tin "piccodes.ini" như anh nói và em hiểu như thế này
Code:
tinybldWin will look for this file; if it does not find it it will use an (older) internal table-phần mềm trên máy tính sẽ tìm tập tin này để "giao tiếp" với pic, nếu phần mềm trên máy tính không tìm thấy file này, nó sẽ dùng 1 bản tìm kiếm nội cũ hơn
- đọc qua tập tin này em hiểu mỗi con pic có 1 địa chỉ riêng thông qua ký hiệu "$xx".
nhưng có dòng dưới đây em chưa hiểu lắm:
Code:
; PIC16F877 FASH: 8192 words = 2000h;    2000h*2 = 4000h
$31, B, 16F 876A/877A,      $4000, $100,
$32, B, 16F 873A/874A,      $2000,	$80,
$33, B, 16F 88,             $2000, $100,
$36, B, 16F 886/887,        $4000, $100,
$38, B, 16F 870,            $1000,   64,
anh cho em hỏi:
-tại sao 2000h lại nhân cho 2 thành 4000h?
-em không hiểu ý nghĩa của chữ B, C, D sau địa chỉ?
-tại sao sau $4000 lại có $100?
do trình độ của em còn kém, nên hỏi nhiều mong anh đừng cười.

em cảm ơn anh.
hongquyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 01-08-2010, 12:24 AM   #4
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 hongquyen View Post
em chào anh:

em đã đọc tập tin "piccodes.ini" như anh nói và em hiểu như thế này
Code:
tinybldWin will look for this file; if it does not find it it will use an (older) internal table-phần mềm trên máy tính sẽ tìm tập tin này để "giao tiếp" với pic, nếu phần mềm trên máy tính không tìm thấy file này, nó sẽ dùng 1 bản tìm kiếm nội cũ hơn
- đọc qua tập tin này em hiểu mỗi con pic có 1 địa chỉ riêng thông qua ký hiệu "$xx".
nhưng có dòng dưới đây em chưa hiểu lắm:
Code:
; PIC16F877 FASH: 8192 words = 2000h;    2000h*2 = 4000h
$31, B, 16F 876A/877A,      $4000, $100,
$32, B, 16F 873A/874A,      $2000,	$80,
$33, B, 16F 88,             $2000, $100,
$36, B, 16F 886/887,        $4000, $100,
$38, B, 16F 870,            $1000,   64,
anh cho em hỏi:
-tại sao 2000h lại nhân cho 2 thành 4000h?
-em không hiểu ý nghĩa của chữ B, C, D sau địa chỉ?
-tại sao sau $4000 lại có $100?
do trình độ của em còn kém, nên hỏi nhiều mong anh đừng cười.

em cảm ơn anh.
Các PIC có cùng đặc điểm (xét về phương diện nạp chương trình qua bootloader) thì có thể dùng cùng một ID ($xx).

Về các câu hỏi của bạn:

1. Dòng chú thích tính ví dụ cho PIC16F877, cho thấy chip 8 kword (= 8192 word) sẽ cần dải địa chỉ 0 - 1FFFh để định vị (tức là có 2000h word), còn nhân 2 là vì các tập tin .hex ghi dữ liệu theo byte (mà 1 word của PIC tầm trung thì tương đương với 2 byte). Do đó, với PIC đang lấy làm ví dụ thì sẽ cần 4000h byte trong tập tin .hex để biểu diễn đủ 2000h word trong bộ nhớ chương trình của PIC.

2. Các chữ B, C, D để cho biết thuật toán tự ghi vào flash cần dùng tương ứng (PIC tầm trung, PIC18, dsPIC30F, và PIC24/dsPIC33F có các thuật toán tự ghi vào flash khác nhau).

3. Phần $100 sau $4000 cho biết kích thước của EEPROM. $100 (hay 100h) ứng với 256 byte EEPROM. Ghi vào EEPROM cũng sử dụng cùng thuật toán như ghi vào flash, chỉ khác vùng nhớ.

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 01-08-2010, 09:30 PM   #5
hongquyen
Đệ tử 4 túi
 
hongquyen's Avatar
 
Tham gia ngày: Jun 2007
Bài gửi: 74
:
em cảm ơn anh đã trả lời câu hỏi của em.

vậy anh có thể giải đáp thêm để em hiểu rõ thêm những câu hỏi ở phần 1 được không ạ? như là:

-ví dụ chip A là con 16f883 có bộ nhớ là 0x1000. vậy dòng này

Code:
 IFDEF __16F873A
		#include "p16f873a.inc"
IdTypePIC = 0x32		
		#define max_flash 0x1000
	ENDIF
	IFDEF __16F874A
		#include "p16f874a.inc"
IdTypePIC = 0x32		
		#define max_flash 0x1000
	ENDIF
có bộ nhớ flash là 0x1000 nhưng có ID là 0x32 và
dòng này:

Code:
IFDEF __16F87
		#include "p16f87.inc"
IdTypePIC = 0x33		
		#define max_flash 0x1000
	ENDIF
	IFDEF __16F88
		#include "p16f88.inc"
IdTypePIC = 0x33		
		#define max_flash 0x1000
	ENDIF
cũng có bộ nhớ là 0x1000 nhưng ID lại là 0x33. vậy mình để con 16f883 này vào ID nào ạ?? làm sao để nhận biết được các Pic nào có cùng đặc điểm ạ?

-- em muốn tạo BLD cho con 16F882 có bộ nhớ flash là 0x800 (2048 words) nhưng không có bộ nhớ này trong danh sách icdpictypes vậy là mình không thể tạo BLD cho con này bằng tinyBLD hả anh??

- muốn tạo mới một BLD cho chip A ngoài những điều trên còn lưu ý gì nữa không anh ??

em rất mong được sự quan tâm của anh.
em cảm ơn.
hongquyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Ðiều Chỉnh
Xếp Bà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à 05:43 AM.


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