![]() |
|
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 |
|
PIC Bang chủ
|
Bài 2: Delay Khi lập trình bằng C30, hoặc các trình dịch từ gcc, chúng ta chú ý rằng gcc không cung cấp hàm delay( ). Do vậy, chúng ta phải tự viết các hàm này. Sau đây là một thí dụ, các bạn hãy thử phân tích thí dụ này để hiểu được cách viết một hàm delay như thế nào, tất nhiên các bạn hoàn toàn có thể sử dụng luôn hàm này. Lưu ý khi sử dụng, hãy tính toán một cách kỹ lưỡng các giá trị đặt cho cấu hình của mình. File delay.h: Code:
// Thay đổi giá trị FCY để phù hợp với cấu hình của chip, tính bằng MIPS #define FCY 16000000 //16 MIPS void Delay( unsigned int delay_count ); void Delay_Us( unsigned int delayUs_count ); // Những cấu hình này thường dùng để khởi tạo LCD, nên để ở đây #define Delay200uS_count (FCY * 0.0002) / 1080 #define Delay_1mS_Cnt (FCY * 0.001) / 2950 #define Delay_2mS_Cnt (FCY * 0.002) / 2950 #define Delay_5mS_Cnt (FCY * 0.005) / 2950 #define Delay_15mS_Cnt (FCY * 0.015) / 2950 #define Delay_1S_Cnt (FCY * 1) / 2950 File delay.c: Code:
#include "delay.h"
unsigned int temp_count;
void Delay( unsigned int delay_count )
{
temp_count = delay_count +1;
asm volatile("outer: dec _temp_count");
asm volatile("cp0 _temp_count");
asm volatile("bra z, done");
asm volatile("do #3200, inner" );
asm volatile("nop");
asm volatile("inner: nop");
asm volatile("bra outer");
asm volatile("done:");
}
void Delay_Us( unsigned int delayUs_count )
{
temp_count = delayUs_count +1;
asm volatile("outer1: dec _temp_count");
asm volatile("cp0 _temp_count");
asm volatile("bra z, done1");
asm volatile("do #1500, inner1" );
asm volatile("nop");
asm volatile("inner1: nop");
asm volatile("bra outer1");
asm volatile("done1:");
}
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? thay đổi nội dung bởi: falleaf, 22-03-2008 lúc 06:22 PM. |
|
|
|
|
|
#2 |
|
PIC Bang chủ
|
Bài 3: ADC 10/12-bit Hoạt động ADC của các chip MCHP đều được mô tả như hình sau: ![]() Quá trình lấy mấu ADC được thực hiện thông qua 2 quá trình: Sample (Lấy mẫu) và Conversion (Biến đổi). Quá trình này được mô tả đơn giản bằng việc dsPIC sẽ đóng khóa K để điện áp bên ngoài tích đủ vào một con tụ, sau đó mở khoá K để phân cách với mạch ngoài, và bắt đầu quá trình biến đổi từ Analog thành Digital. Quá trình biến đổi được mô tả như hình dưới đây: ![]() Vấn đề này quá đơn giản, vậy chúng ta cần tìm hiểu gì? Chúng ta cần tìm hiểu:
Thực tế là chúng ta muốn thế, nhắm mắt lại và kệ xừ mọi thứ, cái quan trọng là khi kết quả nằm trong một biến nào đó là xong. Người lập trình C lúc nào cũng mong muốn điều này, bởi nếu không thì họ đã lập trình với ASM30 mất rồi. Chúng ta sẽ tìm hiểu ở đây theo kiểu tư duy của người lập trình bằng ngôn ngữ cấp cao, nhưng sẽ hiểu đủ sâu để có thể làm việc với ASM30. F đặt ra những câu hỏi theo thứ tự tư duy như bên dưới đây: 1. Thời gian Sample (Lấy mẫu) và Conversion (Biến đổi) là bao nhiêu? Đơn giản cực, đôi khi các bạn không để ý, nhưng nó có ngay trong datasheet. F lấy thí dụ datasheet của dòng dsPIC33FJxxxMCxxx (DS70287A-page 319) ![]() ![]() Vậy ở đây xuất hiện thêm một số khái niệm (còn tiếp, vì F chưa có thời gian viết xong) Chúc vui
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? |
|
|
|
|
|
#3 |
|
Đệ tử 4 túi
|
Luồng này đang hay chỗ giới thiệu bài giảng về DSPIC33, các bác hỏi lung tung cuối cùng đứt đoạn giữa chừng không ai chỉ nữa rồi! Tiếp tục đi, còn về phần DMA tui muốn tìm hiểu nhưng hok có ai chỉ nữa!
__________________
LẠI QUANG TUYẾN Phone: 0906.189.269 |
|
|
|
|
|
#4 | |
|
Nhập môn đệ tử
Tham gia ngày: Oct 2008
Bài gửi: 8
: |
Trích:
|
|
|
|
|
|
|
#5 |
|
Nhập môn đệ tử
Tham gia ngày: Sep 2010
Bài gửi: 1
: |
Anh F đang viết mọi người hỏi sao không ra topic khác ạ. Anh F viết tiếp đi anh. Cảm ơn anh về bài giảng của anh.
|
|
|
|
![]() |
| Tags |
| configuration, dspic30f, dspic33f |
| Ðiều Chỉnh | |
| Xếp Bài | |
|
|