📄 main.c
字号:
//======================================================
// The information contained herein is the exclusive property of
// Sunnnorth Technology Co. And shall not be distributed, reproduced,
// or disclosed in whole in part without prior written permission.
// (C) COPYRIGHT 2003 SUNNORTH TECHNOLOGY CO.
// ALL RIGHTS RESERVED
// The entire notice above must be reproduced on all authorized copies.
//========================================================
//============================================================
// 工程名称:LCD_DynamicGraphic.spj
// 功能描述: 飞翔的小鸟,并有背景音乐
//
// 文件来源:《实验仪实验指导书》 实验三十六 带有背景音乐的动态图片 第131页
//
// IDE环境: SUNPLUS u'nSPTM IDE 1.8.4
//
// 涉及的库:
//
// 组成文件:
// SPLC501hardware.asm/SPLC501sys.asm/SPLC501var.asm
// splc501c.inc/splc501c_io.inc/hardware.inc/lab_parameter.h
//
//===============================================
//============================================================
// 文件名称:main.c
// 实现功能: 飞翔的小鸟,并有背景音乐
//============================================================
#include "lab_parameter.h"
#include "sacmv32.h"
extern BIRD_Frame0;
extern BIRD_Frame1;
extern BIRD_Frame2;
extern BIRD_Frame3;
extern BIRD_Frame4;
extern BIRD_Frame5;
extern BIRD_Frame6;
//=============================================================
// 函数名称: int main()
// 功能描述: 飞翔的小鸟,并有背景音乐
// 语法格式: int main()
//入口参数: 无
// 出口参数: 无
// 注意事项: 仅为用户模型
//=============================================================
main()
{
int i,j,x=60;
Init_sys(); // 初始化系统时钟
FG_InitGraphic(); //初始化LCDIO口 函数定义在Splc501sys.asm
FG_SetBMPMode(DG_BMP_COVER); //设置位图模式 函数定义在Splc501sys.asm
FG_ClearScreen(1); //点亮整个显示屏 函数定义在Splc501sys.asm
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
SACM_A2000_Initial(Auto); //A2000播放初始化 函数包含在Sacmv32.lib
SACM_A2000_Play(0,DAC1+DAC2,Ramp_Up_On+Ramp_Dn_On); //A2000语音播放 函数包含在Sacmv32.lib
loop:
if((SACM_A2000_Status()&0x01) == 0) //判断语音是否播放结束 函数包含在Sacmv32.lib
SACM_A2000_Play(0,DAC1+DAC2,Ramp_Up_On+Ramp_Dn_On);//语音播放 函数包含在Sacmv32.lib
x=x+5;
if(x==128) x=60;
FG_PutBitmap(&BIRD_Frame0,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0);
x++;
if(x==128) x=60;
FG_PutBitmap(&BIRD_Frame1,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0);
x++;
if(x==128) x=60;
FG_PutBitmap(&BIRD_Frame2,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0);
x++;
if(x==128) x=60;
FG_PutBitmap(&BIRD_Frame3,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0);
x++;
if(x==128) x=60;
FG_PutBitmap(&BIRD_Frame4,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0);
FG_PutBitmap(&BIRD_Frame5,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0);
x++;
if(x==128) x=60;
FG_PutBitmap(&BIRD_Frame6,x,60);
for(j=0;j<=2;j++) //延时 保持整个显示屏点亮
for(i=0;i<0xffff;i++)
Clear_Watch_Dog(); //清看门狗 函数定义在Splc501sys.asm
FG_ClearScreen(0); //清屏 函数定义在Splc501sys.asm
goto loop;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -