![]() |
|
Tài trợ cho PIC Vietnam |
dsPIC - Bộ điều khiển tín hiệu số 16-bit Theo dự kiến của Microchip, vào khoảng năm 2011 dsPIC sẽ có doanh số lớn hơn PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Trưởng lão PIC bang
|
Ừ, dùng cách đấy hay hơn, anh không để ý đến PLLx4 của PIC18F458.
Nhưng dù sao chạy ở 10 MIPS thì vẫn phải để ý đến vấn đề phát nóng của chip. 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 |
![]() |
![]() |
![]() |
#2 |
Đệ tử 2 túi
Tham gia ngày: Jul 2005
Bài gửi: 35
: |
Cám ơn anh Namqn nhiều,em đã thử và sửa được chương trình bootloader cho dsPic rồi,em xin bổ xung thêm :Cần khai báo max_flash tương ứng với dsPic xử dụng.Trường hợp dùng int osc có thể hiệu chỉnh tần số dao động bằng cách thay đổi các bit TUNES của thanh ghi OSC reg.
Anh có dùng C30 để viết chương trình cho dspic không? Em dùng chương trình nầy,nhưng khi xử dụng lệnh : printf thì gặp lỗi : Erro: a heap is required.Mong anh giúp em khắc phục lỗi nầy. |
![]() |
![]() |
![]() |
#3 |
Trưởng lão PIC bang
|
Nếu bạn có dùng lệnh thư viện vào/ra (input/output) thì trình liên kết yêu cầu bạn mô tả heap, mặc dù nó có thể là một heap trống (không chứa gì cả).
Nếu bạn chỉ dùng lệnh printf để xuất thông tin ra stdout thì chỉ cần chọn lệnh mênu Project->Build Options ... ->Project, sau đó đến thẻ MPLAB LINK30, gõ vào giá trị 0 tại ô mô tả heap size, như hình minh hoạ dưới đây. Chúc thành cô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 |
![]() |
![]() |
![]() |
#4 |
Đệ tử 2 túi
Tham gia ngày: Jul 2005
Bài gửi: 35
: |
Anh cho em hỏi thêm việc khai báo kích thước của heap có liên quan đến độ lớn của trường dử liệu cần xuất khi dùng printf ? ví dụ khi xuất buf[100].
|
![]() |
![]() |
![]() |
#5 |
Trưởng lão PIC bang
|
Kích thước của heap chỉ thực sự quan trọng khi bạn sử dụng các hàm cấp phát bộ nhớ động của C, chẳng hạn như malloc(), free(). Khi bạn chỉ sử dụng các hàm vào/ra trong thư viện stdio, trình liên kết yêu cầu có khai báo heap, nhưng các hàm này không hề sử dụng heap, do đó bạn có thể đặt nó bằng 0.
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 |
![]() |
![]() |
![]() |
#6 |
Đệ tử 2 túi
Tham gia ngày: Jul 2005
Bài gửi: 35
: |
Anh mở thêm luồng trao đổi về dsPIC để các bạn có thể học hỏi thêm ,công cụ để thử đã có bootloader ở trên.Chúc anh sức khỏe.
|
![]() |
![]() |
![]() |
#7 |
Trưởng lão PIC bang
Tham gia ngày: May 2005
Bài gửi: 11
: |
Để đỡ mất thời gian, các bạn có thể cấu hình config bằng cách sửa ngay trong chương trình nạp luôn. Như thế sẽ nhanh hơn. Tuy nhiên nếu dùng các dao động tần số khác nhau hay cách đặt cổng Uart kết nối khác nhau thi buộc phải edit lại code.
Thạch anh 7.xxx tại Hà Nội có hàng Mai Khanh có bán đó, vậy là thuân lơi rồi. Mọi người nếu có công việc liên quan tới PIC thì nên tìm hiểu dspic. Nếu đã từng làm PIC rồi thì nói hơi quá nhưng một ngày bạn có thể tiếp cận được với PIC ở mức độ làm chủ phần MCU.
__________________
www.binhanh.com |
![]() |
![]() |
![]() |
#8 |
Đệ tử 1 túi
Tham gia ngày: Aug 2005
Bài gửi: 14
: |
Thanks bác Namqn nhiều lắm.
|
![]() |
![]() |
![]() |
#9 |
Nhập môn đệ tử
Tham gia ngày: Jul 2007
Bài gửi: 1
: |
Các bác cho e hỏi chút! E đang dùng thử con dspic30F4012 nhưng gặp vấn đề về khởi động cho UART.
+ Khi khởi động chế độ thạch anh nội của nó thì truyền OK nhưng truyền toàn kí tự lạ + Còn khi dùng chế độ thạch anh ngoài của nó với bau 19200,PLLx8 thì nó chẳng chạy chương trình j trong nó cả(thử xuất đèn LED cũng k được) Các bác thử chẩn bệnh của nó hộ với.Cảm ơn các bác trước |
![]() |
![]() |
![]() |
#10 | |
Trưởng lão PIC bang
|
Trích:
2. Bạn có đảm bảo là chip đang chạy thạch anh ngoài hay không? Bạn dùng thạch anh tần số bao nhiêu và thiết lập từ cấu hình thế nào? Chú ý: PIC/dsPIC thường có các phản ứng bất thường khi bạn viết code mà không xác định đầy đủ các từ cấu hì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 |
|
![]() |
![]() |
![]() |
#11 | |
Đệ tử 4 túi
Tham gia ngày: Jan 2008
Bài gửi: 68
: |
Trích:
" _FOSC(CSW_FSCM_OFF & XT); //Clock = 10 MHz _FWDT(WDT_OFF); _FBORPOR(MCLR_EN & PBOR_OFF & PWMxL_ACT_HI & PWMxH_ACT_HI); _FGS(CODE_PROT_OFF); " ở đây CSW_FSCM là gì hả thầy? WDT_OFF là watchdog đang ở chế độ tắt nhưng em chưa hiểu rõ Watchdog ? trong RFM document của dsPic 30 nói mấy thanh ghi này trừu tượng quá đọc mà không hiểu. Em cảm ơn Thầy nhiều !. Trân trọng !. |
|
![]() |
![]() |
![]() |
#12 | |
Trưởng lão PIC bang
|
Trích:
FSCM viết tắt cho Fail-Safe Clock Monitor, là khả năng giám sát hoạt động bộ dao động và tự động chuyển sang nguồn FRC nếu bộ dao động có vấn đề. Watchdog là một timer chạy tự do (khi được bật), dùng để tự động reset dsPIC khi phần mềm chạy sai, ví dụ quẩn trong một vòng lặp vô tận, và không thể định kỳ xóa thanh ghi timer của watchdog. 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 |
|
![]() |
![]() |
![]() |
#13 |
Nhập môn đệ tử
Tham gia ngày: Apr 2006
Bài gửi: 2
: |
ko dịch được chương trình bootloader cho ds30f4013
Chào anh Nam .
Anh có thể cho em chương trình và files Hẽ của bootloader cho dspic30f4013 với cấu hình như sau : - dùng Dsoic30f4013 - Thạch anh dùng thạch anh nội với 7,5 MIPS hoặc 7,37 - Cổng truyền thông dùng loại UART2. - Tốc độ truyền thông là 19200 Baud. trong đoạn code dspic30f4013.gld như sau. MEMORY { data (a!xr) : ORIGIN = 0x800, LENGTH = 2048 program (xr) : ORIGIN = 0x000, LENGTH = ((16K * 2)) } Anh vui long cho em files bootloader với . Cảm ơn anh. Email của em : cuocsong12@yahoo.com |
![]() |
![]() |
![]() |
|
|