2024-07-03 03:00:26
大神 您可以帮我编一个吗 模式不要多 有俩个就好 或者帮我修改下上述的程序
只能两个显示效果了,全加字数超了。
#include
unsigned char key,speed;
void delay(void)
{
unsigned int j, k ;
if(speed == 0)
{
for (k=0;k<1000;k++)
for (j=0;j<100;j++);
}
else
{
for (k=0;k<1000 ;k++ )
for(j =0;j<20;j++ );
}
}
void int_init( )
{
IT0 = 1;
IT1 = 1;
EX1 = 1;
EX0 = 1;
EA = 1;
}
void show_1 (void)
{
unsigned char i;
while (1)
{
if(key != 1)break;
for(i=0;i<8;i++)
{
if (key !=1)
break ;
P2 = ~ (1<<i );
delay( );
}
}
}
void show_2 (void)
{
unsigned char i ;
while (1)
{
if(key != 2)
break ;
for(i=0;i<8;i ++ )
{
if ( i < 7 )
P1 = ~(3<< i );
else
P2= ~(0x81) ;
delay ( ) ;
if (key != 2)
break ;
}
}
}
main( )
{
int_init( );
while (1)
{
switch (key)
{
case 1: show_1( ); break;
case 2: show_2( ); break;
default : show_1( );break;
}
}
}
void int0 ( ) interrupt 0
{
speed =~speed;
}
void int1( ) interrupt 2
{
key ++;
if(key == 3)
{ key= 1; }
}
你好 我看了再俩个显示中 你只把1改成了i 主程序 减去了// timer_ init( );这个语句 这样就可以了吗 那个1可能是我 抄错了 我想知道改后是否可以实现循环
恩,想了一下,还是可以的,这个程序我在KEIL上编译通过了,应该没什么问题,还有忘记了把P1改成P2,你改一下。
我想问一下 俩个程序 整合 但俩个程序都用到 中断INT1 I NT0 变成俩个模块整合后 是否会冲突
不行的,多个模块连接成一个的时候,同一中断必须是唯一的
2024-07-03 03:03:46
2024-07-03 00:59:19