点阵移动方法集锦

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

我的空间有程序,你去看看,有十几种移动方法

屏幕点阵数的话也可以随时改动的

/*************呈现各种显示效果的函数集****************/

void flash_bai(uchar *flash_word,uchar flash_heard,uchar number,uchar sdu,uchar state)

{register uchar i,j,l;

for(i=0;i

{

for(j=0;j<16;j++)

{

for(l=0;l<8;l++)

{

if(j<8)

{

dispram[l*4+1]=dispram[l*4+1]&0xff<>( 7-j));

dispram[l*4+2]=dispram[l*4+2]&0xff>>j|(flash_word[(flash_heard+i)*32+l*4+3] <<(7-j)&0x10);

}

else

{

dispram[l*4]

=dispram[l*4]&0xff<<(j-7)|flash_word[(flash_heard+i)*32+l*4]>>(15-j); dispram[l*4+1]=flash_word[(flash_heard+i)*32+l*4]<<(j-7)|(flash_word[(flash_h eard+i)*32+l*4+1]>>(15-j));

dispram[l*4+2]=flash_word[(flash_heard+i)*32+l*4+2]<<(15-j)|(flash_word[(flas h_heard+i)*32+l*4+3]>>(j-7));

dispram[l*4+3]=(dispram[l*4+3]&0xff>>(j-7))|flash_word[(flash_heard+i)*32+l* 4+3]<<(15-j);

}

}

delay(sdu*SPEED);

}

delay(state*SPEED);

}

}

/*******************霓虹灯效果************************/

void flash(uchar *flash_word,uchar flash_heard,uchar number,uchar sdu,uchar state)

{register uchar i,j,k,l;

for(i=0;i

{

for(j=0;j<=16;j++)

{

for(k=17;k>j;k--)

{

for(l=0;l<16;l++)

{

if(j>8)

{

dispram[l*2]

=1<<(8-k+j)|(flash_word[(flash_heard+i)*32+l*2]&0xff>>(16-j));

dispram[l*2+1]=flash_word[(flash_heard+i)*32+l*2+1];

}

else

{

dispram[l*2]=1<<(8-k+j);

dispram[l*2+1]=1<<(16-k+j)|(flash_word[(flash_heard+i)*32+l*2+1]&0xff>>(8-j) );

}

}

delay(sdu*SPEED);

}

for(k=17;k>j;k--)

{

for(l=0;l<16;l++)

{

if(j>8)

{

dispram[l*2]=1<<(k-8)|(flash_word[(flash_heard+i)*32+l*2]&0xff>>(16-j));

}

else

{

dispram[l*2]=1<<(k-8);

dispram[l*2+1]=1<>(8-j));

}

}

delay(sdu*SPEED);

}

}

delay(state*SPEED);

}

}

/*******************跳动的米奇*********************/

void miqi_jump(void)

{register uchar jump_i;

while((receive[1]&0x0f)<2)//

{

switch (timer/3650)

{

case 0:for(jump_i=0;jump_i<16;jump_i++)

{

dispram[jump_i*2] = word1[11][jump_i*2]<<1|word1[11][jump_i*2+1]>>7; dispram[jump_i*2+1] = word1[11][jump_i*2+1]<<1;//左移

}break;

case 1:for(jump_i=0;jump_i<15;jump_i++)

{

dispram[jump_i*2+2] = word1[11][jump_i*2];

dispram[jump_i*2+3] = word1[11][jump_i*2+1];

}

dispram[0] = 0;

dispram[1] = 0;

break;//下移

case 2:for(jump_i=0;jump_i<16;jump_i++)

{

dispram[jump_i*2+1] = word1[11][jump_i*2+1]>>1|word1[11][jump_i*2]<<7; dispram[jump_i*2] = word1[11][jump_i*2]>>1;

}break;//右移

case 3:for(jump_i=0;jump_i<15;jump_i++)

{

dispram[jump_i*2] = word1[11][jump_i*2+2];

dispram[jump_i*2+1] = word1[11][jump_i*2+3];

}

dispram[30] = 0;

dispram[31] = 0;

break;//上移

case 4: for(jump_i=0;jump_i<15;jump_i++)

{

dispram[jump_i*2+2] = word1[11][jump_i*2]<<1|word1[11][jump_i*2+1]>>7; dispram[jump_i*2+3] = word1[11][jump_i*2+1]<<1;//左移

}

dispram[0] = 0;

相关文档
最新文档