PolarFire Soc GPIO led 点亮

1、先看原理图 

  

image

 

image

 

 

libero 引脚约束 

image

 

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

image

 FPGA 也可以控制LED  

image

 

二 、 确定了 , 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 点亮!

 

posted on 2025-09-19 11:13  所长  阅读(19)  评论(0)    收藏  举报

导航