PolarFire Soc GPIO led 点亮
1、先看原理图


libero 引脚约束

MSS 端 的 引脚 怎么 和 上面 LED 引脚连接 ,看 smart design, 这里看出 LED 还可以 FPGA 控制;

FPGA 也可以控制LED

二 、 确定了 , MSS GPIO 2 16\17\18\19 可以控制 这 4个 LED 灯
MSS_GPIO_init(GPIO2_LO);
MSS_GPIO_config(GPIO2_LO, MSS_GPIO_16, MSS_GPIO_OUTPUT_MODE);
MSS_GPIO_config(GPIO2_LO, MSS_GPIO_17, MSS_GPIO_OUTPUT_MODE);
MSS_GPIO_config(GPIO2_LO, MSS_GPIO_18, MSS_GPIO_OUTPUT_MODE);
MSS_GPIO_config(GPIO2_LO, MSS_GPIO_19, MSS_GPIO_OUTPUT_MODE);
// 点亮 LED
MSS_GPIO_set_output(GPIO2_LO, MSS_GPIO_16, 1);
MSS_GPIO_set_output(GPIO2_LO, MSS_GPIO_17, 1);
MSS_GPIO_set_output(GPIO2_LO, MSS_GPIO_18, 1);
MSS_GPIO_set_output(GPIO2_LO, MSS_GPIO_19, 1);
测试结果 :
没有点亮!尴尬
打开 GPIO2 的时钟 ,即可点亮;
// 注意 第二个形参是 hart id ,我 用的 U54-1 因此是1
(void) mss_config_clk_rst(MSS_PERIPH_GPIO2, (uint8_t) 1, PERIPHERAL_ON);
LED 点亮!
浙公网安备 33010602011771号