PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và 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

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 23-04-2013, 10:54 PM   #1
ngontu
Đệ tử 1 túi
 
Tham gia ngày: Mar 2011
Bài gửi: 17
:
thắc mắc về đèn nháy theo nhạc

Thân chào các bạn,tôi đọc phần "đèn nháy theo nhạc" và tôi cũng làm thử và đã thành công , cám ơn các bạn, nhưng tôi có thắc mắc là nếu muốn làm cho led nháy đến 1 điểm led cao nhất của nhạc có độ dừng vài giây thì phải viết code như thế nào? mong các bạn chỉ đẫn, cám ơn
ngontu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 24-04-2013, 12:15 PM   #2
greenfield
Đệ tử 6 túi
 
Tham gia ngày: Jul 2009
Bài gửi: 152
:
Bạn có thể chia sẻ sơ đồ nguyên lý với mọi người không?
greenfield vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 24-04-2013, 10:48 PM   #3
TRUNGBAOSPKT
Đệ tử 2 túi
 
Tham gia ngày: Sep 2011
Bài gửi: 32
:
Bạn nên cho mình sơ đồ nguyên lý và phải mô phỏng . Bạn hỏi như thế này , làm sao mình trả lời ?
TRUNGBAOSPKT vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-04-2013, 12:03 AM   #4
ngontu
Đệ tử 1 túi
 
Tham gia ngày: Mar 2011
Bài gửi: 17
:
Mình viết code như sau:
void main()
{ int l,i,a;
int ADC;
set_tris_A(0x0f);
set_tris_b(0x00);
set_tris_d(0x00);

enable_interrupts(global);
setup_ADC(ADC_clock_internal);
setup_adc_ports( ALL_ANALOG );
set_ADC_channel(0);
portb = 0x00;portd = 0x00;

while(1)
{ ADC = read_ADC();

if((ADC>4)&&(ADC<8)){output_b( 0x01);output_d( 0x00);} // tan so lay mau
if((ADC>8)&&(ADC<16)){output_b( 0x03);output_d( 0x00);} ;}
if((ADC>16)&&(ADC<24)){output_b( 0x07);output_d( 0x00);}
if((ADC>24)&&(ADC<32)){output_b( 0x0f);output_d( 0x00);}
if((ADC>32)&&(ADC<40)){output_b( 0x1f);output_d( 0x00);}
if((ADC>40)&&(ADC<48)){output_b( 0x3f);output_d( 0x00);}
if((ADC>48)&&(ADC<56)){output_b( 0x7f);output_d( 0x00);}
if((ADC>56)&&(ADC<64)){output_b( 0xff);output_d( 0x00) ;}

if((ADC>64)&&(ADC<72)){output_d( 0x01); output_b( 0xff);}
if((ADC>72)&&(ADC<80)){output_d( 0x03); output_b( 0xff);}
if((ADC>80)&&(ADC<96)){output_d( 0x07); output_b( 0xff);}
if((ADC>96)&&(ADC<100)){output_d( 0x0f); output_b( 0xff);}
if((ADC>104)&&(ADC<112)){output_d( 0x1f); output_b( 0xff);}
if((ADC>112)&&(ADC<120)){output_d( 0x3f); output_b( 0xff);}
if((ADC>120)&&(ADC<128)){output_d( 0x7f); output_b( 0xff);}
if(ADC>128){portd = 0xff; portb = 0xff;}
delay_ms(5); // do nhay nhay theo dieu nhac
}
}


làm theo trong nháy đèn theo nhạc, nhưng mình muốn led lên đến mức cao thì dừng lại vài giây trong khi các led khác rớt xuống , không hiểu diễn tả như vạy các bạn có hiểu không ?
ví dụ theo đoạn nhạc led 1,2 3, 4 chớp sáng led 4 là cao nhất dừng lại vài giây trong khi đó led 1,2 ,3 tắt dần xuống , mong các bạn nào biết chỉ dẫn , cám ơn
ngontu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 26-04-2013, 09:09 PM   #5
ngontu
Đệ tử 1 túi
 
Tham gia ngày: Mar 2011
Bài gửi: 17
:
Mình muốn làm được như trong youtube ở địa chỉ như sau :http://www.youtube.com/watch?v=Q2dq0ss8FJ8
bạn nào biết xin chỉ giáo , cám ơn nhiều
ngontu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 27-04-2013, 11:43 AM   #6
saobang
Đệ tử 1 túi
 
Tham gia ngày: Apr 2011
Nơi Cư Ngụ: Quảng Nam
Bài gửi: 13
:
http://s-o.webnode.cz/vu-metr/
có file hex và pbc lun đó!
saobang 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


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


Đượ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