⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pwm.c

📁 利用ADS1.2开发的S3C2410平台下步进电机程序
💻 C
📖 第 1 页 / 共 2 页
字号:
/*************************************************************************/
/*                                                                       */
/*               Copyright Shenzhen Watertek S.&T. Co.,Ltd  2002         */
/*                         All Rights Reserved.                          */
/*                                                                       */
/* THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS  */
/* THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS   */
/* SUBJECT TO LICENSE TERMS.                                             */
/*                                                                       */
/*************************************************************************/

/*************************************************************************/
/*                                                                       */
/* FILE NAME                                               VERSION       */
/*                                                                       */
/*      pwm.c                           S3c2410 stepping motor device 1.0*/
/*                                                                       */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*      This file contains macro and main routines 		 */
/*                                                                       */
/* AUTHOR                                                                */
/*    	Li-li zhang   shenzhen watertek                                */
/*                                                                       */
/*                                                                       */
/* DATA STRUCTURES                                                       */
/*                                                                       */
/*      Timer2Handler                   Timer2 interrupt handler         */
/*	  Timer3Handler                   Timer3 interrupt handler          */
/*    																	*/
/* FUNCTIONS   															 */                                                         
/*                                                                       */
/*      None                                                             */
/*                                                                       */
/* DEPENDENCIES                                                          */
/*                                                                       */
/*      None	                          								 */
/*                                                                       */
/* HISTORY                                                               */
/*                                                                       */
/*         DATE                    REMARKS                               */
/*                                                                       */
/*      2005-08-15     Created initial version 1.0                      */
/*************************************************************************/
#include <string.h>
#include "2410addr.h"
#include "pwm.h"

int ANGLECTRL=1;
int SPEEDCTRL=50;

/*************************************************************************/
/*                                                                       */
/* FUNCTION                                                              */
/*                                                                       */
/*      C_Entry			                                         */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*      C entry function				                 */
/*                                                                       */
/* AUTHOR                                                                */
/*                                                                       */
/*      Li-li zhang         shenzhen watertek                         */
/*                                                                       */
/* INPUTS                                                                */
/*      None                                                             */
/*                                                                       */
/* OUTPUTS                                                               */
/*                                                                       */
/*      None      	                                                 */
/*                                                                       */
/* HISTORY                                                               */
/*                                                                       */
/*         DATE                    REMARKS                               */
/*                                                                       */
/*      2005-08-15      Created initial version 1.0                      */
/*************************************************************************/

void C_Entry(void)
{
	MotorOn(TIMER2);
    	ANGLECTRL=2;
        SPEEDCTRL=200;
 //   	MotorOff(TIMER2);
	
	while(1);
}


/*************************************************************************/
/*                                                                       */
/* FUNCTION                                                              */
/*                                                                       */
/*      TIMER2_LISR			                                         */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*      TIMER2 LISR function				                 */
/*                                                                       */
/* AUTHOR                                                                */
/*                                                                       */
/*      Li-li zhang         shenzhen watertek                         */
/*                                                                       */
/* INPUTS                                                                */
/*      None                                                             */
/*                                                                       */
/* OUTPUTS                                                               */
/*                                                                       */
/*      None      	                                                 */
/*                                                                       */
/* HISTORY                                                               */
/*                                                                       */
/*         DATE                    REMARKS                               */
/*                                                                       */
/*      2005-08-15      Created initial version 1.0                      */
/*************************************************************************/

 void TIMER2_LISR(void)
{	
	switch(ANGLECTRL)
    	 {
    	 	case 1:
               			AngleCtrl(1);
                        	break;
                 case 2:   
                    		AngleCtrl(2);    
                            	break;
                 case 3:
                    		AngleCtrl(3);
                            	break;
                 case 4:
                    		AngleCtrl(4);
                            	break;
                 default:
                    		break;
    	 }
   
	SetClkFreq(SPEEDCTRL,TIMER2);
	
}



/*************************************************************************/
/*                                                                       */
/* FUNCTION                                                              */
/*                                                                       */
/*      TIMER3_LISR			                                         */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*      TIMER3 LISR function				                 */
/*                                                                       */
/* AUTHOR                                                                */
/*                                                                       */
/*      Li-li zhang         shenzhen watertek                         */
/*                                                                       */
/* INPUTS                                                                */
/*      None                                                             */
/*                                                                       */
/* OUTPUTS                                                               */
/*                                                                       */
/*      None      	                                                 */
/*                                                                       */
/* HISTORY                                                               */
/*                                                                       */
/*         DATE                    REMARKS                               */
/*                                                                       */
/*      2005-08-15      Created initial version 1.0                      */
/*************************************************************************/

 void TIMER3_LISR(void)
{
	switch(ANGLECTRL)
    	 {
    	 	case 1:
               			AngleCtrl(1);
                        	break;
                 case 2:   
                    		AngleCtrl(2);    
                            	break;
                 case 3:
                    		AngleCtrl(3);
                            	break;
                 case 4:
                    		AngleCtrl(4);
                            	break;
                 default:
                    		break;
    	 }
   
	SetClkFreq(SPEEDCTRL,TIMER3);
	
}

/*************************************************************************/
/*                                                                       */
/* FUNCTION                                                              */
/*                                                                       */
/*      EnableController			                                         */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*     Enable Controller function				                 */
/*                                                                       */
/* AUTHOR                                                                */
/*                                                                       */
/*      Li-li zhang         shenzhen watertek                         */
/*                                                                       */
/* INPUTS                                                                */
/*      None                                                             */
/*                                                                       */
/* OUTPUTS                                                               */
/*                                                                       */
/*      None      	                                                 */
/*                                                                       */
/* HISTORY                                                               */
/*                                                                       */
/*         DATE                    REMARKS                               */
/*                                                                       */
/*      2005-08-15      Created initial version 1.0                      */
/*************************************************************************/

void EnableController(void)
{	
	rGPFUP = 0x1;
	rGPFCON = rGPFCON & 0xfffd |1;//GPF0 OUTPUT
	rGPFDAT = 0x1;                                 //enable TA8435H
	return;
}

/*************************************************************************/
/*                                                                       */
/* FUNCTION                                                              */
/*                                                                       */
/*      MotorOn			                                         */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*     Motor On function				                 */
/*                                                                       */
/* AUTHOR                                                                */
/*                                                                       */
/*      Li-li zhang         shenzhen watertek                         */
/*                                                                       */
/* INPUTS                                                                */
/*      flag:     								*/
/*			TIMER2					*/
/*		   or	TIMER3					*/
/*                                                                       */
/* OUTPUTS                                                               */
/*                                                                       */
/*      None      	                                                 */
/*                                                                       */
/* HISTORY                                                               */
/*                                                                       */
/*         DATE                    REMARKS                               */
/*                                                                       */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -