TA的每日心情 | 擦汗 2024-3-26 13:58 |
---|
中级会员
- 积分
- 319
|
发表于 2022-8-19 21:40:18
|
显示全部楼层
本帖最后由 CJC 于 2022-8-20 15:33 编辑
作业1: 发现小梅哥的代码简洁又好用 等等再补上
原代码#include "./BSP/AXI_GPIO/axi_gpio.h"
#include "sleep.h"
XGpio xgpio;
#define AXI_GPIO_ID XPAR_GPIO_0_DEVICE_ID
#define SW0 axi_gpio_getpin(&xgpio,AXI_GPIO_CHANNEL_1,7)
#define SW1 axi_gpio_getpin(&xgpio,AXI_GPIO_CHANNEL_1,6)
#define SW2 axi_gpio_getpin(&xgpio,AXI_GPIO_CHANNEL_1,9)
#define SW3 axi_gpio_getpin(&xgpio,AXI_GPIO_CHANNEL_1,8)
#define SW4 axi_gpio_getpin(&xgpio,AXI_GPIO_CHANNEL_1,11)
#define SW5 axi_gpio_getpin(&xgpio,AXI_GPIO_CHANNEL_1,10)
/* 高八位是拨码开关SW7-SW2对应着11-6
* 低八位是LED7-LED2对应着0-5
* */
int main(void)
{
axi_gpio_init(&xgpio,AXI_GPIO_ID);
/* 高八位设置为输入,低八位设置输出 */
XGpio_SetDataDirection(&xgpio, AXI_GPIO_CHANNEL_1,0XFC0);
while(1)
{
if (SW0 == 1)
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,5,0x1);
}
else
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,5,0x0);
}
if (SW1 == 1)
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,4,0x1);
}
else
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,4,0x0);
}
if (SW2 == 1)
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,3,0x1);
}
else
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,3,0x0);
}
if (SW3 == 1)
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,2,0x1);
}
else
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,2,0x0);
}
if (SW4 == 1)
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,1,0x1);
}
else
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,1,0x0);
}
if (SW5 == 1)
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,0,0x1);
}
else
{
axi_gpio_setpin(&xgpio,AXI_GPIO_CHANNEL_1,0,0x0);
}
}
return 0;
}
|
|