#包含“intrins.h”
#定義uchar無符號字符
sbit inc=p0^0;//脈沖輸出端子
sbit ud=p0^1;//方向結束
sbit cs=p0^2;//芯片選擇結束
sbit led=p2^0;//指示燈
/*以下是函數聲明*/
void x9c104s_inc(uchar號);
void x9c104s_dec(uchar號);
void x9c104s_set(uchar號);
/*設置初始值*/
void x9c104s_set(uchar編號)
{
烏恰爾壹世;
Inc = 1;
_ nop _();
_ nop _();
cs = 0;
_ nop _();
_ nop _();
ud = 0;//方向為負。
_ nop _();
_ nop _();
for(I = 0;我& lt100;I++) /*因為芯片有100個抽頭,所以先清零*/
{
Inc = 1;
_ nop _();
_ nop _();
Inc = 0;
_ nop _();
_ nop _();
}
ud = 1;//方向向上
_ nop _();
_ nop _();
for(I = 0;我& lt號碼;I++) //設置初始值
{
Inc = 1;
_ nop _();//下降沿有效
_ nop _();
Inc = 0;
_ nop _();
_ nop _();
}
Inc = 1;//保存以下設置。
_ nop _();
_ nop _();
cs = 1;
_ nop _();
_ nop _();
ud = 1;
_ nop _();
_ nop _();
Inc = 1;
}
/*功能是再次增加阻力*/
void x9c104s_inc(uchar編號)
{
烏恰爾壹世;
Inc = 1;
_ nop _();
_ nop _();
cs = 0;
_ nop _();
_ nop _();
ud = 1;
_ nop _();
_ nop _();
for(I = 0;我& lt號碼;I++) //設置電阻。
{
Inc = 1;
_ nop _();
_ nop _();
Inc = 0;
_ nop _();
_ nop _();
}
Inc = 1;//保存以下設置。
_ nop _();
_ nop _();
cs = 1;
_ nop _();
_ nop _();
ud = 1;
_ nop _();
_ nop _();
Inc = 1;
}
/*功能是減少阻力*/
void x9c104s_dec(uchar編號)
{
烏恰爾壹世;
Inc = 1;//選擇芯片。
_ nop _();
_ nop _();
cs = 1;
_ nop _();
_ nop _();
ud = 0;//方向遞減。
_ nop _();
_ nop _();
for(I = 0;我& lt號碼;i++)
{
Inc = 1;
_ nop _();
_ nop _();
Inc = 0;
_ nop _();
_ nop _();
}
Inc = 1;//保存設定值
_ nop _();
_ nop _();
cs = 1;
_ nop _();
_ nop _();
ud = 1;
_ nop _();
_ nop _();
Inc = 1;
}
void main()
{
led = 0;
x9c 104s _ set(10);
x9c 104s _ Inc(60);//使用所有三個函數來防止警告。
x9c 104s _ dec(10);
}