|
Tài trợ cho PIC Vietnam |
Những câu hỏi thường gặp Những lỗi cơ bản thường gặp khi làm việc với PIC hoặc những vấn đề cơ bản nhất thường được hỏi trong những năm qua |
|
Ðiều Chỉnh | Xếp Bài |
10-02-2007, 11:32 AM | #16 | |
PIC Bang chủ
|
Trích:
Tuy nhiên, tranh chấp chân linh kiện xảy ra, khi bạn sử dụng PWM, nó cũng dùng CCP2 và khi dùng counter nó cũng dùng CCP2. Vậy cho mình hỏi, mạch của bạn thiết kế như thế nào? Không có một cách nào để thiết kế cả, cho nên bạn hỏi câu hỏi này rõ ràng là đưa vào trường hợp không thể xảy ra. Một trường hợp có thể xảy ra, đó là bạn không sử dụng đồng thời, mà dùng một dạng switch để một lúc thì dùng PWM (output) một lúc khác lại dùng làm counter (input). Khi đó, giữa 2 chế độ chuyển, bạn hoàn toàn có thể sử dụng PWM và counter, nhưng nên nhớ, nó không cùng lúc. Khi bạn đặt câu hỏi này, rõ ràng bạn chưa có ý tưởng thiết kế mạch, cho nên bạn hiểu sai hai câu trả lời trên. 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? |
|
10-02-2007, 09:39 PM | #17 | |
Trưởng lão PIC bang
|
Trích:
Khi Timer 1 dùng thạch anh ngoài (thường là tốc độ thấp vài trăm kHz cho đồng hồ thời gian thực), các chân 15 và 16 là hai chân của bộ dao động, giống như hai chân OSC1 và OSC2 của bộ dao động sơ cấp cấp xung clock cho PIC. Như vậy T1OSI là ngõ vào của bộ đệm đảo (bộ khuếch đại dao động), T1OSO là ngõ ra của bộ đệm. Timer 1 ở chế độ đếm đồng bộ chấp nhận tín hiệu vào từ một trong hai chân 15 và 16, tùy theo bit T1OSCEN bị clear hay set. Những thông tin trên có lẽ đủ cho bạn biết cách dùng chân 16. 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 thay đổi nội dung bởi: namqn, 11-02-2007 lúc 08:38 PM. Lý do: thiếu 1 từ |
|
06-11-2008, 11:11 PM | #18 |
Đệ tử 5 túi
Tham gia ngày: Oct 2008
Bài gửi: 95
: |
xung clock
#include "D:\Baibaocaonhom7\codevanthanh.h"
#include <16f877a.h> #include <def_877a.h> #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use delay(clock=8000000) Anh Nam cho em hỏi vấn đề của bạn diencaothe rằng dùng thạch anh cho Pic6F877 tối đa là 20Mhz ,nhung sao đoạn code trên dùng 80Mhz.Có gì không phải anh dùng la em,tại em mới tìm hiểu Pic thôi. |
06-11-2008, 11:32 PM | #19 | |
Trưởng lão PIC bang
|
Trích:
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 |
|
07-11-2008, 07:13 PM | #20 |
Đệ tử 5 túi
Tham gia ngày: Oct 2008
Bài gửi: 95
: |
Bạn nào có thể vui lòng giải thích rõ giúp mình 4 dòng lệnh sau:
#define Line_2 0xC0 #define Clear_Scr 0x01 LCD_PutCmd ( 0x2C ); LCD_Putcmd (0xC3 ); Ở hai dòng lệnh đầu mình không rõ ở chỗ 0xC0 và 0x01,có phải bắt buộc phải ghi như vậy Dòng thứ 3 thì mình không biết rõ Dòng thứ tư thì mình nghe phong phanh là"chỉ vị trí con trỏ tới vị trí thứ 4 của dòng thứ 2"_nhưng mình không biết là làm sao tính ra được như vậy. Rất cảm ơn các bạn đã chỉ bảo ! |
07-11-2008, 10:21 PM | #21 |
Đệ tử 5 túi
Tham gia ngày: Oct 2008
Bài gửi: 95
: |
thắc mắc
à , vấn đề của mình là tra data sheet của LCD .nhưng mình vẫn chưa rõ là tại sao trên dâtsheet của LCD đã nói rõ vị trí nào ứng với địa chỉ trên Ram thì cần gì phải define nữa>
Mình còn thắc mắc về lệnh : #define Clear_Scr 0x01 : không biết có phải rằng 0x01 là bắt buộc phải có để xóa màn hình không ?Mình chưa hiểu rõ về 0x01 . Mong các bạn chỉ bảo ! |
07-11-2008, 11:00 PM | #22 |
Đệ tử 5 túi
Tham gia ngày: Oct 2008
Bài gửi: 95
: |
thắc mắc
Syntax:
set_pwm1_duty (value) set_pwm2_duty (value) set_pwm3_duty (value) set_pwm4_duty (value) set_pwm5_duty (value) Parameters: value may be an 8 or 16 bit constant or variable. Returns: undefined Function: Writes the 10-bit value to the PWM to set the duty. An 8-bit value may be used if the least significant bits are not required. If value is an 8 bit item it is shifted up with two zero bits in the lsb positions to get 10 bits. The 10 bit value is then used to determine the amount of time the PWM signal is high during each cycle as follows: Ton = value*(1/clock)*t2div Where clock is oscillator frequency and t2div is the timer 2 prescaler (set in the call to setup_timer2). Availability: This function is only available on devices with CCP/PWM hardware. Requires: Nothing Examples: // For a 20 mhz clock, 1.2 khz frequency, // t2DIV set to 16 // the following sets the duty to 50% (or 416 us). long duty; duty = 520; // .000416/(16*(1/20000000)) set_pwm1_duty(duty); Các bạn vui lòng cho mình hỏi : nếu value là 16 bit thì sao,trong khi ở trên nói rằng ghi vào PWM 10 bit . Với lại "t2div is the timer 2 prescaler (set in the call to setup_timer2)." mình chưa biết dịch ra tiếng Việt thế nào .Rất cảm ơn các bạn chỉ bảo ! |
03-01-2009, 11:12 AM | #23 |
Nhập môn đệ tử
Tham gia ngày: Dec 2008
Bài gửi: 3
: |
Em đang làm đồ án điều khiển động cơ 1 chiều dùng PiC16F877 ghép với L298 ! CÁc bạn giúp mình viết COde trên CCS C đảo chiểu, Điều khiển tốc độ, chạyvà dừng động cơ nhé ! Cảm ơn
|
03-01-2009, 06:41 PM | #24 | |
Trưởng lão PIC bang
|
Trích:
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 |
|
09-07-2012, 06:49 PM | #25 |
Nhập môn đệ tử
Tham gia ngày: Nov 2011
Bài gửi: 1
: |
các huynh ơi giúp đệ với đệ đang làm đồ án về con pic16f887 giao tiếp chuẩn i2c nhưng không biết 2 chân SDA và SCL cần phải có điện trở kéo lên để làm gì? nếu không có thì chuyện gì sẽ xảy ra?. mong các huynh giúp giùm em. cám ơn mấy huynh rất nhiều
|
|
|
Similar Threads | ||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
Xin tập lệnh của PIC16F877 | thanhdt | Cơ bản về vi điều khiển và PIC | 12 | 13-01-2011 09:37 PM |
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 |