📄 双管寻迹.c
字号:
/********************************************************************************/
/*
广州双龙电子
WWW.SL.COM.CN
接线方法:
两个光电管并排在小车前方中间,即PC.7,PC.5控制信号线
功能:
两个红光电对管寻迹
LED4~5是前进指示灯;LED1~3是左转指示灯;LED6~8右转指示灯
Chip type : ATMEGA16
Clock frequency : 8MHz
*/
/*******************************************************************************/
#include <iom16v.h>
#include <macros.h>
#define xtal 8
void delay_1ms(void) //1ms延时
{
unsigned int i;
for(i=1;i<(unsigned int)(xtal*143-2);i++)
;
}
void delay(unsigned int n)
{
unsigned int i;
for(i=0;i<n;i++)
delay_1ms();
}
void main(void)
{
DDRA=0xff; //初始化端口
PORTA=0xff;
DDRD=0xf0;
PORTD=0x0f;
DDRC=0x00;
PORTC=0xff;
for(;;)
{
switch(PINC&0xA0)
{
case 0xA0:PORTD=0xAF ;PORTA=0xE7; delay(1);break; //直行,点亮前进指示灯
case 0x80:PORTD=0x60 ;PORTA=0x1F; delay(1);break; //转左,点亮左转指示灯
case 0x20:PORTD=0x90 ;PORTA=0xF8; delay(1);break; //转右,点亮右转指示灯
case 0x00:PORTD=0xAF ;PORTA=0xff; delay(1);break; //熄灭全部LED
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -