nemesisfx15
22-12-2008, 09:34 PM
Mình xem qua các diễn đàn về phần điều khiển động cơ và làm thử nhưng vẫn không chạy được @_@ mấy bác xem giùm coi lỗi phần nào sửa giúp mình với ~_~
Nó bị lỗi như sau: khi chạy mô phỏng bằng proteus nó báo lỗi dấu chấm cảm vàng (cũng như thế nhưng đem qua máy thằng bạn chạy thì ko báo lỗi gì hết @_@ máy mình dùng vista ) và động cơ quay nhưng không dùng biến trở điều khiển tốc độ động cơ được.
Đây là đoạn code cho con 16f88
#include <16F88.h>
#device 16F88*=16 ADC=8
#fuses XT,NOWDT,NOPROTECT,NOLVP,NOPUT,NOBROWNOUT,NODEBUG
#use delay(clock=4000000)
#byte PORTB = 0x06
int8 adc;
void readADC()
{ setup_adc(adc_clock_internal);
setup_adc_ports(sAN1);
set_adc_channel(1);
delay_ms(10);adc=read_adc();
}
void pwm_ccp()
{
setup_ccp1(CCP_PWM);
setup_timer_2(T2_DIV_BY_1,255, 1);
}
void PWM(int8 value)
{set_pwm1_duty(value);
}
void main()
{ set_tris_B(0x00); PORTB=0x00;
pwm_ccp();
while(TRUE)
{ readADC();
PWM(adc);
}
}
cho mình hỏi là đoạn code này có nghĩa là gì,mình coi phần hướng dẫn ccs rồi nhưng tới phần này lại ko có hướng dẫn :( nhờ bạn nào giải thích hộ
setup_timer_2(T2_DIV_BY_1,255, 1);
Đây là cái hình của cái mạch:
http://i223.photobucket.com/albums/dd87/nemesisfx15/de-1.jpg
Còn đây là file proteus ở hình trên
http://www.mediafire.com/?ngcdytnw1zj
Mấy bác ráng giúp giùm em ^^
Nó bị lỗi như sau: khi chạy mô phỏng bằng proteus nó báo lỗi dấu chấm cảm vàng (cũng như thế nhưng đem qua máy thằng bạn chạy thì ko báo lỗi gì hết @_@ máy mình dùng vista ) và động cơ quay nhưng không dùng biến trở điều khiển tốc độ động cơ được.
Đây là đoạn code cho con 16f88
#include <16F88.h>
#device 16F88*=16 ADC=8
#fuses XT,NOWDT,NOPROTECT,NOLVP,NOPUT,NOBROWNOUT,NODEBUG
#use delay(clock=4000000)
#byte PORTB = 0x06
int8 adc;
void readADC()
{ setup_adc(adc_clock_internal);
setup_adc_ports(sAN1);
set_adc_channel(1);
delay_ms(10);adc=read_adc();
}
void pwm_ccp()
{
setup_ccp1(CCP_PWM);
setup_timer_2(T2_DIV_BY_1,255, 1);
}
void PWM(int8 value)
{set_pwm1_duty(value);
}
void main()
{ set_tris_B(0x00); PORTB=0x00;
pwm_ccp();
while(TRUE)
{ readADC();
PWM(adc);
}
}
cho mình hỏi là đoạn code này có nghĩa là gì,mình coi phần hướng dẫn ccs rồi nhưng tới phần này lại ko có hướng dẫn :( nhờ bạn nào giải thích hộ
setup_timer_2(T2_DIV_BY_1,255, 1);
Đây là cái hình của cái mạch:
http://i223.photobucket.com/albums/dd87/nemesisfx15/de-1.jpg
Còn đây là file proteus ở hình trên
http://www.mediafire.com/?ngcdytnw1zj
Mấy bác ráng giúp giùm em ^^