: .
me_Counter_5;//时间计数器:200*5=1秒
uchar Time_Counter_60;//时间计数器:1秒*60=1分钟
uchar Time_Counter_x;//时间计数器:1分钟*x=x分钟
uchar Time_3_by_3;//时间计数器:3小时*3=9小时
uchar Time_30_by_30;//时间计数器:3小时*3=9小时
#define ISP_IAP_BYTE_READ读 0x01//
#define ISP_IAP_BYTE_PROGRAM编程 0x02//
#define ISP_IAP_SECTOR_ERASE扇区擦除 0x03//
#define ENABLE_ISP等待时间,和对 0x85//ISP_CONTR设置初值
#define EEPROM_ADDRESS_1第一扇区地址 2800-29FF 0x2800//
#define EEPROM_ADDRESS_2第二扇区地址 2A00-2BFF 0x2A00//
#define EEPROM_ADDRESS_3第二扇区地址 2A00-2BFF 0x2A01//
//#define EEPROM_ADDRESS_3第三扇区地址 2C00-2DFF 0x2C00//
//#define EEPROM_ADDRESS_4第四扇区地址 2E00-2FFF 0x2E00//
uchar DATA_H_ADDRESS;//单片机内部 EEPROM地址高字节
uchar DATA_L_ADDRESS;//单片机内部 EEPROM地址低字节
uint sfr_16;//双字节缓存对单片机内部 EEPROM地址字节的处理uchar code DispTab_Digital[]={0xa0,0xf3,0x34,0x32,0x63,0x2a,0x28,0xb3,0x20,0x22,0xff};//数码
管显示
//0;1;2;3;4;5; ;
uchar code DispTab_Inversion[]={0x60,0x09,0x12,0x84};//反转
//d=+,c=-;
//b=+,a=-;
//c=+,d=-;
//a=+,b=-;
/*
uchar code DispTab_Forward[]={0xa3,0x3a,0xac,0xca};//正转
//a=-,b=+;1010 0011=0xa3
//c=-,d=+;0011 1010=0x3a
//a=+,b=-;1010 1100=0xac
//c=+,d=-;1000 1010=0xca*/
uchar code DispTab_Forward[]={0x84,0x12,0x09,0x60};//正转
//a=-,b=+;1010 0011=0xa3
//c=-,d=+;0011 1010=0x3a
//a=+,b=-;1010 1100=0xac
//c=+,d=-;1000 1010=0xca
void delay(uint延时为 1ms z)//
{
uchar x,x1;
for(;z>0;z--)
{
for(x=0;x<114;x++)
{
for(x1=0;x1<1;x1++);
}
}
}
void init()
{
P1M1=0xff;//设为强上拉 0101 0101
P2M1=0xff;//设为强上拉 0101 0101DPDR=0xaa;
TMOD=0x11;
TH1=0x16;//10ms
TL1=0xed;//10ms
TH0=0x16;//200ms
TL0=0xed;//200ms
步进电机驱动程序 来自淘豆网m.daumloan.com转载请标明出处.