a chị xen code này có gì sai ko.sửa giúp e với
đây là code điều khiển động cơ encoder quay thuận nghịch.e muốn dùng quay bằng nút ấn thì cần thêm lệnh nào nữa ạ.
#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>
int vong;
int16 xung,xung2;
#INT_ext
void EXT()
{
xung++;
}
#int_timer1
void timer1()
{
vongint)(xung*600)/100);
xung=xung2=0;
set_timer1(10);
}
void main()
{
SETUP_TIMER_1(T1_INTERNAL|T1_DIV_BY_8);
EXT_INT_EDGE(1,L_TO_H);
ENABLE_INTERRUPTS(INT_EXT);
enable_interrupts(INT_TIMER1);
ENABLE_INTERRUPTS(GLOBAL);
SET_TIMER1(10);
}
đây là code điều khiển động cơ encoder quay thuận nghịch.e muốn dùng quay bằng nút ấn thì cần thêm lệnh nào nữa ạ.
#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>
int vong;
int16 xung,xung2;
#INT_ext
void EXT()
{
xung++;
}
#int_timer1
void timer1()
{
vongint)(xung*600)/100);
xung=xung2=0;
set_timer1(10);
}
void main()
{
SETUP_TIMER_1(T1_INTERNAL|T1_DIV_BY_8);
EXT_INT_EDGE(1,L_TO_H);
ENABLE_INTERRUPTS(INT_EXT);
enable_interrupts(INT_TIMER1);
ENABLE_INTERRUPTS(GLOBAL);
SET_TIMER1(10);
}