step36.c
来自「不少单片机C代码」· C语言 代码 · 共 41 行
C
41 行
#include <reg51.h>
#define DL 50
#define DR 0
#define uchar unsigned char
#define uint unsigned int
uchar idata plus[7]={0x01,0x03,0x02,0x06,0x04,0x05,0x00};
uchar idata minu[7]={0x01,0x05,0x04,0x06,0x02,0x03,0x00};
uchar k=0;
uchar idata *x;
void control(cf,n)
bit cf;
uint n;
{ uint i;
if(cf==0) x=&plus[0];
else x=&minu[0];
TMOD=0x01;
TH0=(65536-DL*500)/256;
TL0=(65536-DL*500)%256;
TR0=1;ET0=1;EA=1;
for(i=0;i<n;i++) {
while(k==0);
k=0;
}
}
void delay(void) interrupt 1 using 1
{
P1=*x++;
if(*x==0) x=x-6;
TH0=(65536-DL*500)/256;
TL0=(65536-DL*500)%256;
k=1;
}
void main(void)
{
if (DR==0) control(0,10);
else control(1,10);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?