STM32MP157A驱动开发 | 01- 板载LED作为系统心跳指示灯

Posted Mculover666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM32MP157A驱动开发 | 01- 板载LED作为系统心跳指示灯相关的知识,希望对你有一定的参考价值。

一、板载LED


此用户LED连接到PA13。

二、pinctrl描述

绑定文档:Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.yaml。

必要的属性:

  - compatible
  - '#address-cells'
  - '#size-cells'
  - ranges
  - pins-are-numbered

可用值如下:

  compatible:
    enum:
      - st,stm32f429-pinctrl
      - st,stm32f469-pinctrl
      - st,stm32f746-pinctrl
      - st,stm32f769-pinctrl
      - st,stm32h743-pinctrl
      - st,stm32mp157-pinctrl
      - st,stm32mp157-z-pinctrl

  '#address-cells':
    const: 1
  '#size-cells':
    const: 1

  ranges: true
  pins-are-numbered: true

文档里给出了一个描述串口引脚的示例:

      pinctrl 
        usart1_pins_a: usart1-0 
                pins1 
                        pinmux = <STM32_PINMUX('A', 9, AF7)>;
                        bias-disable;
                        drive-push-pull;
                        slew-rate = <0>;
                ;
                pins2 
                        pinmux = <STM32_PINMUX('A', 10, AF7)>;
                        bias-disable;
                ;
        ;
    ;

    usart1 
                pinctrl-0 = <&usart1_pins_a>;
                pinctrl-names = "default";
    ;

二、作为用户LED

1. 设备树描述

添加pinctrl描述,将PA13作为普通gpio:

&pinctrl 
	led_pins_a: led-0 
		pins 
			pinmux = <STM32_PINMUX('A', 13, GPIO)>; /* USER_LED */
		;
	;
;

添加led节点描述:

	led 
		compatible = "gpio-leds";
		pinctrl-0 = <&led_pins_a>;

		blue 
			label = "blue";
			gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
			default-state = "off";
		;
	;

2. 测试

重新编译设备树,启动。

三、作为系统心跳LED

	led 
		compatible = "gpio-leds";
		pinctrl-0 = <&led_pins_a>;

		heartled 
			label = "heartled";
			gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
			linux,default-trigger = "heartbeat";
			default-state = "off";
		;
	;

以上是关于STM32MP157A驱动开发 | 01- 板载LED作为系统心跳指示灯的主要内容,如果未能解决你的问题,请参考以下文章

STM32MP157A驱动开发 | 03-usb host接口的使用(U盘 )

STM32MP157A驱动开发 | 03-usb host接口的使用(U盘 )

STM32MP157A驱动开发 | 04 - Linux DRM显示驱动框架

STM32MP157A驱动开发 | 04 - Linux DRM显示驱动框架

STM32MP157A驱动开发 | 05 - 基于LTDC接口驱动RGB LCD

STM32MP157A驱动开发 | 05 - 基于LTDC接口驱动RGB LCD