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

📄 systick_isr.c

📁 基于Cortex-M3的全自动焊接机
💻 C
字号:
#include  <hw_sysctl.h>
#include  "systick.h"
#include  "sys_tick.h"
#include "globaltype.h"
extern unsigned long ulPeriod;
extern unsigned int timerloadvalue;
extern struct placed_relate_parm palced_magor[];
void init_systick(void)
{
    SysTickPeriodSet(timerloadvalue/20);  //  设置SysTick计数器的周期值//50ms
}
void start_systick(void)
{
    SysTickDisable();
    SysTickPeriodSet(timerloadvalue/20);
    SysTickIntEnable(); 
    SysTickEnable();                                            //  使能SysTick计数器
}
void stop_systick(void)
{
    SysTickDisable();
    SysTickIntEnable(); 
}
void systick_isr(void)
{
    
    if(palced_magor[0].stop_sem)
    {
        if(palced_magor[0].old_absulotely_code != palced_magor[0].absulotely_code)
        {
            palced_magor[0].old_absulotely_code = palced_magor[0].absulotely_code;
        }
        else
        {
            palced_magor[0].motor_current_duty = 6000;//恢复原值
            palced_magor[0].not_normlation_timerunit = 0;//电机速度为零
            palced_magor[0].stop_sem = 0;
            palced_magor[0].IS_driver = 0;
	    palced_magor[0].usr_require = 0;
        }
    }
    if(palced_magor[1].stop_sem)
    {
        if(palced_magor[1].old_absulotely_code != palced_magor[1].absulotely_code)
        {
            palced_magor[1].old_absulotely_code = palced_magor[1].absulotely_code;
        }
        else
        {
            palced_magor[1].motor_current_duty = 6000;
            palced_magor[1].not_normlation_timerunit = 0;//电机速度为零
            palced_magor[1].stop_sem = 0;
            palced_magor[1].IS_driver = 0;
	    palced_magor[1].usr_require = 0;
        }
    }
    if(palced_magor[2].stop_sem)
    {
        if(palced_magor[2].old_absulotely_code != palced_magor[2].absulotely_code)
        {
            palced_magor[2].old_absulotely_code = palced_magor[2].absulotely_code;
        }
        else
        {
            palced_magor[2].motor_current_duty = 6000;
            palced_magor[2].not_normlation_timerunit = 0;//电机速度为零
            palced_magor[2].stop_sem = 0;
            palced_magor[2].IS_driver = 0;
	    palced_magor[2].usr_require = 0;
        }
    }
}

⌨️ 快捷键说明

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