📄 robot_function.c
字号:
PlaySnd(D25);
RobotSystemInit();
uiP_IOB_Dir = *P_IOB_Dir; //读回IOB口的状态值
uiP_IOB_Attrib = *P_IOB_Attrib;
uiP_IOB_Data = *P_IOB_Data;
uiP_IOB_Dir |= 0x0a00; //改变IOB9、IOB11位
uiP_IOB_Attrib |= 0x0a00;
uiP_IOB_Data |= 0x0a00;
*P_IOB_Dir = uiP_IOB_Dir; //设置IOB9、IOB11为高电平输出
*P_IOB_Attrib = uiP_IOB_Attrib; //其它IO口不变
*P_IOB_Data = uiP_IOB_Data;
Set_IOB_Bit(4,1,1,1,1);
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(6,1,1,1,1);
PlaySnd(D26);
RobotSystemInit();
uiP_IOB_Dir = *P_IOB_Dir; //读回IOB口的状态值
uiP_IOB_Attrib = *P_IOB_Attrib;
uiP_IOB_Data = *P_IOB_Data;
uiP_IOB_Dir |= 0x2200; //改变IOB9、IOB13位
uiP_IOB_Attrib |= 0x2200;
uiP_IOB_Data |= 0x2200;
*P_IOB_Dir = uiP_IOB_Dir; //设置IOB9、IOB13为高电平输出
*P_IOB_Attrib = uiP_IOB_Attrib; //其它IO口不变
*P_IOB_Data = uiP_IOB_Data;
Set_IOB_Bit(4,1,1,1,1);
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(6,1,1,1,1);
PlaySnd(D27);
RobotSystemInit();
uiP_IOB_Dir = *P_IOB_Dir; //读回IOB口的状态值
uiP_IOB_Attrib = *P_IOB_Attrib;
uiP_IOB_Data = *P_IOB_Data;
uiP_IOB_Dir |= 0x4800; //改变IOB11、IOB14位
uiP_IOB_Attrib |= 0x4800;
uiP_IOB_Data |= 0x4800;
*P_IOB_Dir = uiP_IOB_Dir; //设置IOB11、IOB14为高电平输出
*P_IOB_Attrib = uiP_IOB_Attrib; //其它IO口不变
*P_IOB_Data = uiP_IOB_Data;
Set_IOB_Bit(4,1,1,1,1);
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(6,1,1,1,1);
PlaySnd(D28);
RobotSystemInit();
uiP_IOB_Dir = *P_IOB_Dir; //读回IOB口的状态值
uiP_IOB_Attrib = *P_IOB_Attrib;
uiP_IOB_Data = *P_IOB_Data;
uiP_IOB_Dir |= 0x0200; //改变IOB9位
uiP_IOB_Attrib |= 0x0200;
uiP_IOB_Data |= 0x0200;
*P_IOB_Dir = uiP_IOB_Dir; //设置IOB9为高电平输出
*P_IOB_Attrib = uiP_IOB_Attrib; //其它IO口不变
*P_IOB_Data = uiP_IOB_Data;
Set_IOB_Bit(4,1,1,1,1);
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(6,1,1,1,1);
PlaySnd(D29);
RobotSystemInit();
}
RobotSystemInit();
}
void Robot_Dance(unsigned int n)
{
unsigned int uiCount;
*(unsigned int *)0x7012 = 1;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(4,1,1,1,1);
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(6,1,1,1,1);
Set_IOB_Bit(11,1,1,1,1);
PlaySnd(MUSIC1);
Set_IOB_Bit(11,1,1,0,0);
Set_IOB_Bit(9,1,1,1,1);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(MUSIC2);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
Set_IOB_Bit(9,1,1,1,1);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(MUSIC3);
Set_IOB_Bit(11,1,1,0,0);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(13,1,1,1,1);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(MUSIC4);
Set_IOB_Bit(13,1,1,0,0);
Set_IOB_Bit(14,1,1,1,1);
Set_IOB_Bit(9,1,1,1,1);
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(MUSIC4);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(8,1,1,1,1);
Set_IOB_Bit(11,1,1,1,1);
Set_IOB_Bit(14,1,1,1,1);
*(unsigned int *)0x7012 = 0x0001;
Delay(400);
RobotSystemInit();
}
RobotSystemInit();
}
void Robot_Go1(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(9,1,1,1,1);
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(11,1,1,0,0);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(11,1,1,0,0);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(11,1,1,0,0);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
Delay(2000);
*(unsigned int *)0x7012 = 0x0001;
RobotSystemInit();
}
RobotSystemInit();
}
void Robot_Go2(unsigned int n)
{
unsigned int uiCount;
*P_IOA_Data= 0xffff;
*P_IOA_Attrib = 0xffff;
*P_IOA_Dir = 0xffff;
*P_IOA_Data = 0x00f0;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(5,1,1,1,1);
Set_IOB_Bit(9,1,1,1,1);
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(11,1,1,0,0);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(11,1,1,0,0);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(11,1,1,0,0);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
// PlaySnd(WALK);
Set_IOB_Bit(9,1,1,0,0);
Set_IOB_Bit(11,1,1,1,1);
// Delay(2000);
showtime();
*(unsigned int *)0x7012 = 0x0001;
RobotSystemInit();
}
RobotSystemInit();
}
void Robot_Backup(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(8,1,1,1,1);
PlaySnd(WALK);
Set_IOB_Bit(8,1,1,0,0);
Set_IOB_Bit(10,1,1,1,1);
Delay(2000);
PlaySnd(WALK);
Set_IOB_Bit(8,1,1,1,1);
Set_IOB_Bit(10,1,1,0,0);
Delay(2000);
PlaySnd(WALK);
Set_IOB_Bit(8,1,1,0,0);
Set_IOB_Bit(10,1,1,1,1);
Delay(2000);
RobotSystemInit();
}
RobotSystemInit();
}
void Robot_TurnRight(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(4,1,1,1,1);
Set_IOB_Bit(9,1,1,1,1);
Set_IOB_Bit(10,1,1,1,1);
PlaySnd(WALK);
Delay(2000);
RobotSystemInit();
}
}
void Robot_TurnLeft(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(6,1,1,1,1);
Set_IOB_Bit(8,1,1,1,1);
Set_IOB_Bit(11,1,1,1,1);
PlaySnd(WALK);
Delay(2000);
RobotSystemInit();
}
}
void Robot_HeadTurnLeft(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n; uiCount++)
{
Set_IOB_Bit(13,1,1,1,1);
PlaySnd(TURNHEAD);
Delay(200);
RobotSystemInit();
}
}
void Robot_HeadTurnRight(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(14,1,1,1,1);
PlaySnd(TURNHEAD);
Delay(200);
RobotSystemInit();
}
}
void Robot_Shoot_Prepare(unsigned int n)
{
unsigned int uiCount;
Set_IOB_Bit(7,1,1,1,1);
for(uiCount = 0;uiCount < n;uiCount++)
{
PlaySnd(SHOOT);
Delay(200);
}
}
void Robot_Shoot2(unsigned int n)
{
unsigned int uiCount;
for(uiCount = 0;uiCount < n;uiCount++)
{
Set_IOB_Bit(15,1,1,1,1);
PlaySnd(GUN);
Delay(200);
}
RobotSystemInit();
}
void Robot_Shoot_Five(unsigned int n)
{
unsigned int uiCount1;
unsigned int uiCount2;
for(uiCount1 = 0;uiCount1 < n;uiCount1++)
{
for(uiCount2 = 0;uiCount2 < 5;uiCount2++)
{
Set_IOB_Bit(15,1,1,1,1);
PlaySnd(GUN);
Delay(200);
}
}
RobotSystemInit();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -