因为在蓝桥杯的单片机省赛中经常需要用到模式转换。例:
在这里插入图片描述
这样的模式转换,我的想法是。每按下一次按键,就给temp+1,在循环里判定temp%2是否等于1,但是这个方法只适用于两种模式,三种模式的我还没想好,先放源代码
这里以S7为例,要放到主函数里面

void Scan_S7()
{
	
	uchar temp=4;
	C4=1;
	if(R1==0)
	{
		delay_ms(50);
		if(R1==0)
		{
			temp++;
			while(R1==0);
		}
	}
	if(temp%2==0)
	{
		//模式1
	}
	if(temp%2==1)
	{
		while(1)
		{
			//模式2
			if(R1==0)
			{
				delay_ms(50);
				if(R1==0)
				{
					break;
					while(R1==0);
				}
			}
		}
	}
}
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐