它用的是一个擎天柱的一个虚拟接口
这个红色代表是LED点亮
灰色代表的是LED熄灭
其实是和“擎天柱”一一对应
“擎天柱”这块板上可能还有一些灯没有焊,但是我们的这个虚拟接口上的这个灯全是齐的
功能1:控制DIP40的各个管脚上LED的状态
前面2个例子:
实际对应端口,端口每一位的取值
功能2:控制DIP40的指定组管脚上LED的状态
功能2和功能1 的差别是,功能2只能控制1个端口的LED状态
功能1 名字是voi LED40_SendDataBYTE *dat, BYTE size);
功能2 名字是void LED40_SetPort (BYTE port, BYTE dat)
设置P0口输出55H库函数调用:LED40_SetPort(0,0x55)
P1口输出51H库函数调用:LED40_SetPort(1,0x51)
写2就是P2
P2口输出A1H库函数调用:LED40_SetPort(2,0xA1)
功能3:控制DIP40的指定管脚输出高电平
功能4:控制DIP40的指定管脚输出低电平
库函数声明:void LED40-SetBit(BYTE port,BYTE bt)
库函数声明:void LED40-C1rBit(BYTE port,BYTE bt)
库函数调用:
LED40_SetBit(0,3); //设置P0.3口输出高电平
LED40_SetBit(4,5); //设置P4.5口输出高电平
LED40_C1rBit(0,3);//设置P0.3口输出低电平
LED40_C1rBit(4,5);//设置P4.5口输出低电平
任务1:P2口流水灯,P10闪烁
// 任务1:P2口流水灯,P10闪烁
void TASK_1( void )
{
// ----------------------- p2端口流水灯 -----------------------
LED40_SetPort(2,~P2_STATE); //点亮P20端口
P2 = P2_STATE;//点亮“擎天柱”
P2_STATE = (P2_STATE<<1); //1000 0000 -> 1 0000 0000
if( P2_STATE == 0 )
P2_STATE = 1;
// ----------------------- p10端口闪烁 -----------------------
if( P10_STATE == 0 )
LED40_SetBit(1,0);//P10端口输出高电平
else
LED40_ClrBit(1,0);//P10端口输出低电平
P10_STATE = !P10_STATE;
}
注意头文件要更新一下