View Single Post
Old 27-01-2008, 01:41 AM   #5
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 NThang View Post
Tiện đây, em có một số hỏi về cơ bản cho mạch nạp của Pic.

Hiện nay, chúng ta chủ yếu nói về các mạch nạp bán sẵn đồng thời phần mềm load có sẵn như WinPIC hay Pony Prog. Tuy nhiên, một số hệ thống thiết kế mà trên board phải chức năng load/download code trong chip on board bằng phần mềm riêng (SCADA hay DCS). Trong các phần mêm Scada hay DCS phải có cả chương trình LOAD hay DOWN code từ chip dùng để lập trình hay chỉnh sửa chương trình trong chip cho phù hợp với điều khiển của hệ thống.

Em mới học về PIC, lại phải thiết kế một hệ thống như vậy, vì thế em mao muội hỏi bac F, bac Namqn và anh em một số cau hỏi, mong các anh chỉ bảo.

1. Nếu em thiết kế một mạch nạp trực tiếp dùng giao tiếp PSI với cổng com máy tính thì WinPic và Pony prog có hỗ trợ không?

2. Em dự định viết phần mềm scada bằng visual C, việc viết thì OK, vấn đề là chương trình quả lý code và nạp cho PIC còn một số rắc rối (Em dùng PIC6f887 mà nói chung là cho dòng 16f88x) em có đọc trong tài liệu programming spec của microchip, nhưng thật khó hiểu cách chia trong Program Memory map của nó. Với chíp dòng này có tối đa 8K word chương trình tương ứng với 0x1fff. Tuy nhiên trong phần memory map hướng dẫn cụ thể lại là (Cho 16f887):
- user program memory từ 0x0000 - 0x1fff.
- Nhưng lại có thêm phần Configuration Memory từ 0x2000-0x3fff.

Vậy phần Configuration Memory là ở đâu? trong máy tính của mình quản lý khoảng này hay trong chip có chứa khoảng này. Mặt khác trong chip 16f887 chỉ có 8 K word, vậy là không thể có chuyện địa chỉ lên đến 0x3fff dc. Vậy yếu tố này dùng để làm gì, mặc dù trong phần này hướng dẫn cho biết dùng để configuration và dùng cho USER ID và CALIB WORD?

Mong các bac giúp đơ em thêm, em chân thành cảm ơn. (Tài liệu hướng dẫn cho mạch nạp PIC 16f88x có tên là: Pic16f88x memory programming specification em down từ microchip.com).
1. Không rõ giao tiếp PSI là giao tiếp gì. Mạch nạp trực tiếp qua cổng COM đã có rất nhiều, không rõ bạn thiết kế thêm để làm gì, nếu chỉ dùng lại phần mềm có sẵn.

2. 8k word là dung lượng bộ nhớ chương trình mà người dùng có thể sử dụng cho chương trình của họ. Bản thân chip vẫn phải có vùng nhớ để lưu thông tin cấu hình, các thông tin cấu hình này không bị mất khi ngắt nguồn của chip. Vùng nhớ lưu thông tin cấu hình cũng được chế tạo sẵn trong chip, và được ánh xạ vào không gian địa chỉ ngay sau vùng địa chỉ của flash chương trình. Ngoài ra, EEPROM dữ liệu cũng được chế tạo sẵn trong chip, và cũng cần không gian địa chỉ cho nó. Không gian địa chỉ của chip không chỉ bao gồm không gian địa chỉ của flash chương trình, và nó có thể được mở rộng đến một phạm vi nào đó là do thiết kế của nhà sản xuất.

UserID có thể được dùng để nhận diện các PIC khác nhau trong cùng một hệ thống. Calibration word được dùng để chứa thông tin hiệu chỉnh cho bộ dao động nội, mạch reset khi bật nguồn, và mạch reset khi nguồn suy giảm (vì không thể chế tạo các chip với các thông số R, C hoàn toàn giống nhau). Bạn không cần quan tâm đến chúng, vì chúng không bị ảnh hưởng bởi thao tác xóa chip.

Xin hỏi bạn đã học những gì liên quan đến vi điều khiển (tôi muốn biết kiến thức nền của bạn)? Nếu bạn chưa học gì liên quan đến vi điều khiển thì bạn cứ chấp nhận như vậy đi.

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