📄 main.c
字号:
#include "main.h"
int k2,speed_plus;
extern int cross_start_cnt,start_cnt,L_speed,O_speed,I_dest_speed,head,tail,fhead,img1_ready,RT_angle,RT_speed;
extern char img1[DOT*LINE],path[LINE];
void Global_Init(void)
{
//****************************PWM模块全局初始化
PWMPRCLK=0x00;//CLOCKA=CLOCKB=24M
PWMCTL=0x30; //PWM01,PWM23连接成16位PWM
PWMSCLA=60; //clock SA:24M/(2*60)=200kHz
PWMSCLB=6; //clock SB:24M/(2*6)=2MHz
//*****************************定时器模块全局初始化
TSCR1=0x80; //定时器使能
TSCR2=0x86; //TCNT溢出中断允许,定时器64分频
}
void main_init(void)
{
DDRM=0XFF;
DDRH=0X00;
angle_ref=300;
speed_ref=100; //Max=1000
Init_server();
Init_Motor();
CCD_Init();
Spd_Init();
//##################################################### 拨码盘设置
if(PTIH==0x80)
{
L_speed=220;I_dest_speed=200;O_speed=175;k2=10;speed_plus=0;start_cnt=2;
}
else if(PTIH==0x40)
{
L_speed=200;I_dest_speed=185; O_speed=175;k2=11;speed_plus=0;start_cnt=2;
}
else if(PTIH==0x20)
{
L_speed=180;I_dest_speed=165; O_speed=160;k2=12;speed_plus=0;start_cnt=2;
}
else if(PTIH==0x10)
{
L_speed=250;I_dest_speed=200; O_speed=170;k2=9;speed_plus=0;start_cnt=3;
}
else if(PTIH==0x08)
{
L_speed=240;I_dest_speed=195; O_speed=175;k2=9;speed_plus=0;start_cnt=3;
}
else if(PTIH==0x04)
{
L_speed=260;I_dest_speed=200; O_speed=165;k2=9;speed_plus=0;start_cnt=3;
}
else if(PTIH==0x02)
{
L_speed=220;I_dest_speed=200;O_speed=175;k2=10;speed_plus=20;start_cnt=3;
}
else if(PTIH==0x01)
{
L_speed=220;I_dest_speed=195;O_speed=175;k2=10;speed_plus=0;start_cnt=3;
}
else if(PTIH==0xFF)
{
L_speed=180;I_dest_speed=160; O_speed=150;k2=12;speed_plus=0;start_cnt=3;
}
else
{
L_speed=200;I_dest_speed=185; O_speed=175;k2=11;speed_plus=0;start_cnt=3;
}
//##################################################################
}
void main(void)
{ int i;
PORTB=0x00;
Global_Init();
main_init();
EnableInterrupts;
while(1)
{
// print_int(L_speed) ;
//PWMDTY01=angle_ref;
/*
while(img1_ready==0) ;
DisableInterrupts;
if(inch()=='+')
{
for(i=head;i<=tail;i++)
{
print_int(path[i]);
outch(' ');
}
outch('\r');
outch('\n');
}else
if(inch()=='R'){
for(i=0;i<LINE*DOT;i++)
{
outch(img1[i]) ;
// outch(' ');
}
}
EnableInterrupts;*/
// print_int(RT_angle) ;
// outch(' ');
// print_int(RT_speed) ;
// outch(' ');
CCD_process();
}
}
interrupt void default_null(void)
{
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -