www.pudn.com > stepper_motor_controller.rar > head.h
//********* interrupt entry *********** // 0 EXTERNAL INT 0 0003h // 1 TIMER/COUNTER 0 000Bh // 2 EXTERNAL INT 1 0013h // 3 TIMER/COUNTER 1 001Bh // 4 SERIAL PORT 0023h //************************************** //*** º¯Êý¶¨Òå*** void long_delay(void); //³¤ÑÓʱ void short_delay(void); //¶ÌÑÓʱ void delay5p5ms(unsigned char); //10MSÑÓʱKEY_ void write7279(unsigned char, unsigned char); //дHD7279 unsigned char read7279(unsigned char); //¶ÁHD7279 void send_byte(unsigned char); //·¢ËÍÒ»¸ö×Ö½Ú unsigned char receive_byte(void); //½ÓÊÕÒ»¸ö×Ö½Ú void data_shift(unsigned char *p,unsigned char ); void key_int(void); void int0_serv( void ) ; //key and led show void stepping(unsigned char delay_n ); //*** ÊýÂë¹ÜÏÔʾå *** void led0_show(int *p ); void led1_show(int ¡Áp); //¿ØÖÆÊäÈë½Ç¶ÈµÄÊýÂë¹ÜÏÔʾ //*** I/O¶¨Òå *** unsigned char digit[5]; unsigned char key_number; unsigned int tmr; //*** Óйز½½øµç»ú¿ØÖƶ¨Òå unsigned char keyin_data[3]; //BCD of keyin_angle ¼üÈë½Ç¶ÈµÄBCDÂë unsigned int step_angle; //keyin_cnt :counte the times of key pressed.¼üÈëµÄ´ÎÊý unsigned int keyin_angle,angle,real_angle; //keyin_angle :±£´æ¼üÈëµÄ½Ç¶È angle:ʵ¼ÊתµÄ×ܹý½Ç¶ÈºÍ // real_angle :¶¯Ì¬×ª¹ýµÄ½Ç¶È //step_angle:keep the actual angle that the motor has roated for. unsigned char delay; // ¿ØÖƲ½½øµç»úµÄתËÙ bit flag_sign; //Õýת·´×ª±ê־λ bit flag_run; //ֹͣλ sbit cs=P1^4; // cs at P1.4 sbit clk=P1^5; // clk P1.5 sbit dat=P1^2; // dat P1.2 sbit key=P1^3; // key P1.3 //****** HD7279AÖ¸Áî ****** #define CMD_RESET 0xa4 #define CMD_TEST 0xbf #define DECODE0 0x80 //Ê®½øÖƱàÂ룬0x0fÏûÒþ #define DECODE1 0xc8 //Ê®Áù½øÖƱàÂë #define CMD_READ 0x15 #define UNDECODE 0x90 #define RTL_CYCLE 0xa3 #define RTR_CYCLE 0xa2 #define RTL_UNCYL 0xa1 #define RTR_UNCYL 0xa0 #define ACTCTL 0x98 #define SEGON 0xe0 #define SEGOFF 0xc0 #define BLINKCTL 0x88 #define DELAY 0x64 //******* L297 ************** sbit l297_cw=P1^0; sbit l297_clk=P2^1; sbit l297_half=P2^2; sbit l297_en=P2^3; sbit l297_ref=P2^4; sbit l297_ctrl=P2^5; sbit l297_rst=P2^6; //*******¼üÖµ************** #define KEY_1 0x24 #define KEY_2 0x2C #define KEY_3 0x34 #define KEY_4 0x3C #define KEY_5 0x25 #define KEY_6 0x2D #define KEY_7 0x35 #define KEY_8 0x3D #define KEY_9 0x26 #define KEY_0 0x2E #define KEY_A 0x36 #define KEY_B 0x3E #define KEY_C 0x27 #define KEY_D 0x2F #define KEY_E 0x37 #define KEY_F 0x3F