PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 17-11-2006, 06:10 PM   #16
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 minhpic View Post
Mình không biết nhưng lcd_putc() là hàm hiển thị lên lcd một ký tự mà bạn, bạn có nhầm không
Tài liệu của CCS nói rằng tuy lcd_putc() là hàm hiển thị ký tự, nhưng nó chấp nhận một string. Đó là điểm mở rộng của hàm vì nó sẽ thuận lợi hơn cho người sử dụng.

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 23-11-2006, 10:38 AM   #17
chinhha
Nhập môn đệ tử
 
Tham gia ngày: Aug 2006
Bài gửi: 5
:
Các cao thủ cho mình hỏi một chút nhé: Mình muốn lưu một bảng dữ liệu gồm 128 phần tử số thực vào trong ROM, sau đó gọi ra theo index của từng phần tử, liệu có được không? Cụ thể là mình muốn hiển thị ra LCD.
Nếu được thì cho mình một vài ví dụ đơn giản nhé.
Cảm ơn các bạn nhiều!
chinhha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 23-11-2006, 07:02 PM   #18
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 chinhha View Post
Các cao thủ cho mình hỏi một chút nhé: Mình muốn lưu một bảng dữ liệu gồm 128 phần tử số thực vào trong ROM, sau đó gọi ra theo index của từng phần tử, liệu có được không? Cụ thể là mình muốn hiển thị ra LCD.
Nếu được thì cho mình một vài ví dụ đơn giản nhé.
Cảm ơn các bạn nhiều!
Theo tài liệu của CCS, cách khai báo tương tự (như tôi đã nêu trên) có thể dùng cho số thực float. Tuy nhiên, bạn cần xem lại số phần tử, vì 1 số float cần 32-bit, hay 4 byte. Với 128 phần tử, bạn sẽ cần có 512 byte RAM. Và tôi không nghĩ rằng có chip PIC16 nào có nhiều hơn 368 byte RAM. Điều đó có nghĩa là nếu bạn vẫn muốn có 128 phần tử trong bảng thì phải dùng PIC18.

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 27-11-2006, 02:11 PM   #19
chinhha
Nhập môn đệ tử
 
Tham gia ngày: Aug 2006
Bài gửi: 5
:
vậy mình có thể khai báo 2 bảng,mỗi bảng gồm 64 phần tử. Sau đó vẫn gọi ra theo index của từng bảng. Mình đã thử dùng cách này, nhưng có vẻ không được ổn lắm. Vậy còn cách nào khác không các bạn?
chinhha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 28-11-2006, 01:20 AM   #20
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 chinhha View Post
vậy mình có thể khai báo 2 bảng,mỗi bảng gồm 64 phần tử. Sau đó vẫn gọi ra theo index của từng bảng. Mình đã thử dùng cách này, nhưng có vẻ không được ổn lắm. Vậy còn cách nào khác không các bạn?
2 bảng, mỗi bảng gồm 64 phần tử thì vẫn cần 512 byte RAM! Bạn không hiểu ý tôi đã nói là PIC16 chỉ có tối đa 368 byte RAM.

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 28-11-2006, 12:07 PM   #21
hpecom
Đệ tử 2 túi
 
Tham gia ngày: Nov 2005
Bài gửi: 45
:
Chào bác Nam!

Em cũng theo dõi luồng này, và nhận thấy bác hay dùng RAM trong khi các bạn đang hỏi ROM (Flash), bác có thể viết một bài cụ thể hướng dẫn cách phân biệt RAM, ROM và khả năng lưu trữ của chúng ở dòng chip 16 được không?
Cảm ơn bác.
__________________
Biết thì nói là biết,
Không biết thì nói là không biết,
..
hpecom vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 28-11-2006, 08:40 PM   #22
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
Ồ, xin lỗi bạn chinhha nhé, không hiểu sao hai post vừa rồi tôi lại nghĩ là bạn muốn dùng RAM để lưu các số thực. Nếu dùng Flash thì không có vấn đề gì khi bạn muốn dùng 128 phần tử trong một mảng.

Tôi nói thêm một ít về RAM và ROM thôi, không cần phải dài dòng. Chúng ta dùng RAM trong trường hợp cần biến để tính toán khi chương trình thực thi, chúng ta thường dùng ROM để lưu trữ các hằng (số, chuỗi, ký tự, ...). Chúng ta vẫn có thể dùng RAM để lưu trữ các hằng, nhưng như vậy là lãng phí, vì dung lượng RAM thường nhỏ hơn dung lương ROM khá nhiều lần.

Đối với PIC nói chung, và PIC16 nói riêng, việc lưu dữ liệu trong ROM đòi hỏi một phương pháp truy cập dữ liệu khác với phương pháp dùng cho RAM, vì kiến trúc RISC của PIC. Tuy nhiên, các trình biên dịch cấp cao (như CCS chẳng hạn) có thể xử lý những thao tác đó cho chúng ta, do vậy, điều chúng ta cần quan tâm chỉ là khai báo cho đúng cú pháp để trình biên dịch hiểu được chúng ta muốn lưu dữ liệu vào đâu. Với một số PIC có khả năng tự ghi vào bộ nhớ chương trình thì dữ liệu hằng không nhất thiết là không thể thay đổi, nghĩa là chúng ta có thể cập nhật các hằng đó khi chương trình thực thi, hay thông qua một firmware tương tự như bootloader chẳng hạn. Với các PIC không có khả năng tự ghi vào bộ nhớ chương trình, chúng ta vẫn có giải pháp cho việc cập nhật các dữ liệu hằng, đó là EEPROM của PIC. Tuy nhiên, EEPROM thường có dung lượng nhỏ hơn RAM (trong các PIC), và cũng đòi hỏi một phương pháp truy cập khác với RAM.

Hy vọng đã đáp ứng đượ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 01-12-2006, 07:57 AM   #23
chinhha
Nhập môn đệ tử
 
Tham gia ngày: Aug 2006
Bài gửi: 5
:
anh namqn có thể cho em một ví dụ cụ thể về khai báo một mảng 128 phần tử thực được không?
chinhha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-12-2006, 11:46 PM   #24
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 chinhha View Post
anh namqn có thể cho em một ví dụ cụ thể về khai báo một mảng 128 phần tử thực được không?
Ví dụ:

Code:
float const table[] = {1.0, 2.0};
Bạn chịu khó điền vào cho đủ 128 phần tử nhé (tôi lười quá nên chỉ đánh vậy thô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
Old 15-12-2010, 09:43 AM   #25
nguyenluan0728
Nhập môn đệ tử
 
Tham gia ngày: Dec 2009
Bài gửi: 10
:
thank moi nguoi nhieu
nguyenluan0728 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lờ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

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
Đọc ghi Flash Program Memory hungpq MPASM 27 28-10-2009 04:43 PM
Ai giúp tôi làm mạch đo giao tiếp theo chuẩn 485 hp_dk1 Giao tiếp cổng COM và LPT 3 16-07-2008 01:27 PM
Chuẩn ICSP-BLD của picvietnam falleaf Cơ bản về vi điều khiển và PIC 1 24-01-2007 10:04 AM
về Pickit 1 FLASH Starter Kit hawinter Cơ bản về vi điều khiển và PIC 2 19-12-2006 01:16 AM
Nguồn chuẩn cho ADC của PIC16F877 mamen2006 PIC - Thiết kế và Ứng dụng 0 13-09-2006 05:23 PM


Múi giờ GMT. Hiện tại là 08:42 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