PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   PIC - Thiết kế và Ứng dụng (http://www.picvietnam.com/forum/forumdisplay.php?f=23)
-   -   [help]Chiết áp, pic16f877A, đèn (http://www.picvietnam.com/forum/showthread.php?t=30963)

mu199x 31-10-2012 05:22 PM

[help]Chiết áp, pic16f877A, đèn
 
em mới học vđk gặp đề tài thiết kế mạch hiển thị độ sáng đèn thông qua mạch chiết áp pic16f877a. mong ace giúp thiết kế hộ nhé!

nhiot081290 14-11-2012 12:17 AM

chiết áp nối vào ADC => đọc ADC về Hiển thị ra (LCD hay led 7 đoạn ) đồng thời dùng PWM để điều khiển độ sáng đèn. cơ bản là vậy.
Bạn điều khiển đèn gì: AC hay DC công suất bao nhiêu => làm mạch điều khiển riêng.
bạn nêu rõ hơn đề tài của bạn được không.
Thân,

youaremylife 14-11-2012 01:01 AM

Vào giúp sức mà chẳng có chút thông tin nào cả, đề tài sử dụng ADC và PWM hết

mu199x 20-11-2012 09:21 PM

1 Attachment(s)
em có mạch này mong các bác giúp! mục đích là điều khiển đèn sáng tối bằng chiết áp.
#include<16f877A.h>
#device *=16 ADC=10
#fuses NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
#include<def_877a.h>

unsigned int16 value=0, temp=0;

unsigned int16 doc_adc()
{
int8 i ;
for(i=0;i<5;i++)
{
temp+=(unsigned int16)read_adc();
}
value = temp/5;
return(value);
}

void main()
{
byte value;
setup_ccp1(CCP_PWM); // Configure CCP1 as a PWM
setup_timer_2(T2_DIV_BY_4, 255, 16);
// giá tr? b? chia t?n s? timer 2 là 4.
// Th?i gian m?t chu k?: (255+1)*4*4/20 = 204.8 (us)
setup_port_a(ALL_ANALOG,ADC_VDD_VSS);
setup_adc(adc_clock_internal);
set_adc_channel( 0 );

while( TRUE )
{
value=read_adc(); //??c giá tr? t? chi?t áp ?i?u ch?nh t?c ??
set_pwm1_duty(doc_adc()); // Thi?t l?p ?? r?ng xung
} // Th?i gian ?? r?ng xung = value*4/20 (us)
}


Múi giờ GMT. Hiện tại là 09:19 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam