pic_low_frequency

T

Tom2

Guest
Tôi muốn đặt một chuyển đổi trên mạch của tôi mà khi tôi bật tần số mà sản xuất trong bất cứ ai pic lower.Is trở thành những người biết làm thế nào để làm điều này????

 
Chào!
Xây dựng ur câu hỏi?
những gì tôi đã hiểu được rằng điều khiển ur là tạo ra một số loại tín hiệu đầu ra, và bạn muốn thay đổi tần số của nó bằng cách đẩy một chuyển đổi.
Đó là những gì u muốn các bộ điều khiển để làm gì?

Kính trọng.

 
Giống như waseem nói, không đủ thông tin.Những gì tôi sẽ làm gì (rất thô)

Thiết lập mã để thực hiện khi một nút là đẩy thông qua bầu cử hoặc gián đoạn
Trong đó chuyển đổi mã sang chế độ nhanh nếu ở chế độ chậm hoặc chậm nếu ở tốc độ nhanh chóng chuyển đổi ()

Bạn có thể làm chậm đồng hồ bằng cách thay đổi trước quy mô cho rằng nó có một ..

3v0

 
Xây dựng ur câu hỏi?
những gì tôi đã hiểu được rằng điều khiển ur là tạo ra một số loại tín hiệu đầu ra, và bạn muốn thay đổi tần số của nó bằng cách đẩy một chuyển đổi.
Đó là những gì u muốn các bộ điều khiển để làm gì?
Exacly này tôi want.When đẩy tôi chuyển sang muốn thay đổi tần số mà nó hoạt động (với trên tinh thể thay đổi hoặc pic reprogramming)

 
Chào!
Điều này có thể được thực hiện rất dễ dàng.

Nếu bạn đang sử dụng một bộ đếm thời gian gián đoạn để tạo ra tần số sau đó bạn có thể thay đổi tần số bằng cách thay đổi các thiết lập prescaler.
Phương pháp khác là để nạp giờ với một giá trị đặt trước.Bởi sự thay đổi giá trị đặt trước tần số khác nhau có thể được tạo ra.

Nếu bạn biết về bộ xử lý và ngôn ngữ mà bạn đang sử dụng cho dự án ur sau đó tôi có thể giúp bạn viết mã.

Kính trọng.

 
Tôi thử đoạn code dưới đây nhưng tôi không biết nếu là correct.Please giúp# include <18F4550.h>
# device ADC = 16
# SỬ DỤNG delay (Clock = 4000000)
# fuses XT, NOWDT, NOPROTECT, NOLVP
int swich_function (b) (
int a;
if (input (PIN_A3))
a = b;
else if (input (PIN_A4))
a = b <<2;
else if (input (PIN_A5))
a = b <<4;
else if (input (PIN_E0))
a = b <<6;

trả về một;
)void main ()
(
int a;
adc_result dài;
read_adc () <<2;

trong khi (1) (
setup_adc_ports (ALL_ANALOG);
setup_adc (ADC_CLOCK_DIV_4);
setup_ccp1 (CCP_PWM);
setup_timer_2 (T2_DIV_BY_1, 255, 1);

set_adc_channel (0);

a = read_adc ();
adc_result = swich_function (a);set_pwm1_duty (adc_result);)
)

 
Tôi cố gắng đơn giản này () mã quá nhưng tôi đã không phải là quyền reult
# include <18F4550.h>
# device ADC = 16
# SỬ DỤNG delay (Clock = 4000000)
# fuses XT, NOWDT, NOPROTECT, NOLVPvoid main () (
/ / int a;
adc_result dài;
read_adc () <<2;

setup_adc_ports (ALL_ANALOG);
setup_adc_ports (ADC_CLOCK_DIV_4);
setup_ccp1 (ccp_pwm);
trong khi (1) (
if (input (! PIN_A4))
read_adc () <<6;
else if (input (! PIN_B0))
read_adc () <<8;

adc_result = read_adc ();
set_pwm1_duty (adc_result);
)
setup_timer_2 (T2_DIV_BY_1, 255,1);
set_adc_channel (0);

)

 

Welcome to EDABoard.com

Sponsor

Back
Top