52840 NCS UART DFU

Hi

 I am currently working with my project with 52840 and i am using sdk v3.0.1 & toolchain v3.0.0 to develope.

 I am learning how to use DFU over UART from the application in Devacademy l9/e2 , it works fine using the example , after that i try it on my own project but because my project use one uart only , so UART DFU and my APP use the same uart(UART0) , and i added two config

CONFIG_SHELL=y
CONFIG_MCUMGR_TRANSPORT_SHELL=y

also init uart0 in my application 

void uart0_init(void)
{
    uint32_t err =  device_is_ready( dev_uart0 );

    if( err != true )
    {
        printk("\nUART_init_err = %d\n", err);
    }
    uart_irq_callback_user_data_set(dev_uart0,uart0_irq_callback, NULL )
   
    uart_irq_rx_enable( dev_uart0 );
}
i use Auterm(v0.35a) to Get image , Auterm data keep running into my uart0_irq_callback , not into MCUMGR shell
is there any way to let my application uart and uart dfu use the same uart and the same time without deinit the uart ? Thanks!
Parents
  • Hello,

    Sorry for the confusion, and thank you for clarifying it. In this case, what you have done, disabling the UART IRQs is correct. Have you enabled MCUmgr for UART DFU? I recommend checking the prj.conf file from the sample I shared in my previous response; you can find it here. If you are enabling all these configurations, please share your prj.conf and device tree overlay files so I can take a look.

    Kind regards,
    Abhijith

  • Hi, 

        here is  my prj.conf and 52840.overlay

    ==========================prj.conf=====================
    
    
    #================LOG================
    CONFIG_LOG=y
    CONFIG_LOG_MODE_DEFERRED=n
    CONFIG_LOG_MODE_IMMEDIATE=y
    CONFIG_LOG_MODE_MINIMAL=y
    
    CONFIG_USE_SEGGER_RTT=y 
    
    CONFIG_LOG_BACKEND_RTT=y
    CONFIG_LOG_BACKEND_UART=n
    
    CONFIG_RTT_CONSOLE=y
    CONFIG_UART_CONSOLE=n   
    
    
    #================FLOATING POINT================
    CONFIG_FPU=y
    
    #================GPIO================
    CONFIG_GPIO=y
    
    
    #================SPI================
    CONFIG_SPI=y
    CONFIG_NORDIC_QSPI_NOR=y 
    
    #================UART================
    CONFIG_SERIAL=y
    CONFIG_UART_USE_RUNTIME_CONFIGURE=y
    CONFIG_UART_INTERRUPT_DRIVEN=y      
    CONFIG_UART_ASYNC_API=n           
    
    #================I2C================
    CONFIG_I2C=y
    
    #================ADC================
    CONFIG_ADC=y
    
    #================PWM================
    # CONFIG_PWM=y
    
    #================MCU FLASH================
    CONFIG_FLASH=y
    CONFIG_FLASH_MAP=y
    CONFIG_NVS=y 
    CONFIG_SOC_FLASH_NRF_EMULATE_ONE_BYTE_WRITE_ACCESS=y 
    
    
    #================Partition Manager================
    CONFIG_PARTITION_MANAGER_ENABLED=y
    
    
    #================MCU WATCHDOG================
    CONFIG_WATCHDOG=y
    
    #================BLUETOOTH================
    CONFIG_BT=y
    CONFIG_BT_RX_STACK_SIZE=2700 
    
    CONFIG_BT_DEVICE_NAME_MAX=30
    CONFIG_BT_DEVICE_NAME="52840_NUS"
    CONFIG_BT_DEVICE_NAME_DYNAMIC=y
    
    CONFIG_BT_MAX_CONN=2
    
    CONFIG_BT_CTLR_CONN_RSSI=y
    
    CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
    CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
    
    
    CONFIG_BT_BUF_ACL_TX_SIZE=251
    CONFIG_BT_BUF_ACL_RX_SIZE=251
    CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
    
    CONFIG_BT_L2CAP_TX_MTU=247
    
    # #================BLUETOOTH_peripheral================
    
    CONFIG_BT_PERIPHERAL=y
    
    CONFIG_BT_NUS=y # Enable the NUS service
    
    # CONNECTION PARAMETERS
    CONFIG_BT_PERIPHERAL_PREF_MIN_INT=30
    CONFIG_BT_PERIPHERAL_PREF_MAX_INT=50
    CONFIG_BT_PERIPHERAL_PREF_LATENCY=0
    CONFIG_BT_PERIPHERAL_PREF_TIMEOUT=40
    
    CONFIG_BT_GAP_AUTO_UPDATE_CONN_PARAMS=y   
     
    
    CONFIG_BT_LIM_ADV_TIMEOUT=40
    
    #====================BT DFU====================
    CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
    
    
    #====================UART DFU (MCUMGR)====================
    # # STEP 5.2 - Enable mcumgr DFU in application
    # Enable MCUMGR 
    CONFIG_MCUMGR=y
    
    # Enable MCUMGR management for both OS and Images
    CONFIG_MCUMGR_GRP_OS=y
    CONFIG_MCUMGR_GRP_IMG=y
    
    # Configure MCUMGR transport to UART
    CONFIG_MCUMGR_TRANSPORT_UART=y
    
    # Dependencies
    # Configure dependencies for CONFIG_MCUMGR  
    CONFIG_NET_BUF=y
    CONFIG_ZCBOR=y
    CONFIG_CRC=y
    
    # Configure dependencies for CONFIG_MCUMGR_GRP_IMG  
    CONFIG_FLASH=y
    CONFIG_IMG_MANAGER=y
    
    # Configure dependencies for CONFIG_IMG_MANAGER  
    CONFIG_STREAM_FLASH=y
    CONFIG_FLASH_MAP=y
    
    # Configure dependencies for CONFIG_MCUMGR_TRANSPORT_UART 
    CONFIG_BASE64=y
    
    
    #================BLUETOOTH_central================
    # Enable the BLE stack with GATT Client configuration
    CONFIG_BT_CENTRAL=y
    
    CONFIG_BT_GATT_CLIENT=y
    
    # Enable the BLE modules from NCS
    CONFIG_BT_NUS_CLIENT=y
    CONFIG_BT_SCAN=y
    CONFIG_BT_SCAN_FILTER_ENABLE=y
    CONFIG_BT_SCAN_UUID_CNT=1
    CONFIG_BT_SCAN_NAME_CNT=1
    CONFIG_BT_GATT_DM=y
    
    CONFIG_BT_SCAN_WITH_IDENTITY=y
    
    #================LOW_FREQ_CLOCK================
    CONFIG_CLOCK_CONTROL=y
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=n
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y
    
    
    #================POWER MANAGMENT================
    CONFIG_PM_DEVICE=y
    
    
    
    
    #====================PIPES====================
    CONFIG_PIPES=y
    
    
    
    
    ==========================OVERLAY=====================
    
    
    
    
    &reg0 {
        compatible = "nordic,nrf52x-regulator-hv";
    	status = "okay";
    };
    
    &reg1 {
        compatible = "nordic,nrf5x-regulator";
    	regulator-initial-mode = <NRF5X_REG_MODE_DCDC>;
    };
    
    &uicr {
    
        // NFC
        nfct-pins-as-gpios;
    
        // Reset pin
    	/delete-property/ gpio-as-nreset;
    };
    
    /{
        my_output{
    
            compatible = "gpio-leds";
    
            led_red: LED_RED {
                gpios = < &gpio0 9 0 >;
                label = "LED_RED";
            };
    
            led_green: LED_GREEN {
                gpios = < &gpio0 10 0 >;
                label = "LED_GREEN";
            };
    
        };
    };
    
    
    /{
    
        my_input {
    
            compatible = "gpio-keys";
    
            my_input_0: MY_INPUT_0 {
                gpios = < &gpio0 4 0 >;
                label = "MY INPUT 0";
            };
    
        };     
    };
    
    
    //==================UART==================//
    
    
    &pinctrl {
    
        uart0_default: uart0_default {
    
            group1 {
                psels = <NRF_PSEL(UART_TX, 0, 6)>,
                        <NRF_PSEL(UART_RX, 0, 8)>;
            };
        };
    
        uart0_sleep: uart0_sleep {
    
            group1 {
                psels = <NRF_PSEL(UART_TX, 0, 6)>,
                        <NRF_PSEL(UART_RX, 0, 8)>;
                low-power-enable;
            };
        };
    };
    
    &uart0 {
    
        compatible = "nordic,nrf-uarte";
        status = "okay";
        current-speed = < 115200 >;
        pinctrl-0 = < &uart0_default >;
        pinctrl-1 = < &uart0_sleep >;
        pinctrl-names = "default", "sleep";
    
    };
    
    
    &pinctrl {
    
    	i2c0_default: i2c0_default {
    		group1 {
    			psels = <NRF_PSEL(TWIM_SDA, 1, 14)>,
                        <NRF_PSEL(TWIM_SCL, 0, 12)>;
                nordic,drive-mode = <NRF_DRIVE_S0D1>; // standard 0, disconnect 1
                bias-pull-up; // internal pull-up is too weak, only for 100kHz or lower  
                
    		};
    	};
    
    	i2c0_sleep: i2c0_sleep {
    		group1 {
    			psels = <NRF_PSEL(TWIM_SDA, 1, 14)>,
                        <NRF_PSEL(TWIM_SCL, 0, 12)>;
    			low-power-enable;
    		};
    	};
    };
    
    &i2c0 {
    
        compatible = "nordic,nrf-twim";
        status = "okay";
        clock-frequency = <I2C_BITRATE_STANDARD>;
        pinctrl-0 = <&i2c0_default>;
        pinctrl-1 = <&i2c0_sleep>;
        pinctrl-names = "default", "sleep";
    
        lis3dh: lis3dh@19 
        {
            compatible = "vendor,i2cdevice";
            reg = <0x19>;
        };
    
    };
    
    &pinctrl {
    
        spi1_default: spi1_default {
            group1 {
                psels = <NRF_PSEL(SPIM_SCK,  0, 22)>,
                        <NRF_PSEL(SPIM_MOSI, 0, 30)>,
                        <NRF_PSEL(SPIM_MISO, 0, 23)>;
            };
        };
        spi1_sleep: spi1_sleep {
            group1 {
                psels = <NRF_PSEL(SPIM_SCK,  0, 22)>,
                        <NRF_PSEL(SPIM_MOSI, 0, 30)>,
                        <NRF_PSEL(SPIM_MISO, 0, 23)>;
                low-power-enable;
            };
        }; 
    };
    
    &spi1 {
    
        compatible = "nordic,nrf-spim";
        status = "okay";
        pinctrl-0 = <&spi1_default>;
        pinctrl-1 = <&spi1_sleep>;
        pinctrl-names = "default", "sleep";
        cs-gpios = <&gpio0 24 GPIO_ACTIVE_LOW>,
                   <&gpio0 25 GPIO_ACTIVE_LOW>;
    
        m95p16: m95p16@0
        {
            compatible = "vendor,spidevice";
            reg = < 0 >;
            spi-max-frequency = < DT_FREQ_M(8) >;
            wp-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
        };
    
        at45db041: at45db041@1
        {
            compatible = "vendor,spidevice"; 
            reg = < 1 >;
            spi-max-frequency = < DT_FREQ_M(8) >;
            wp-gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
        };
    };
    
    
    &adc {
    
        compatible = "nordic,nrf-saadc";
    	#address-cells = <1>;
    	#size-cells = <0>;
    	status = "okay";
        /* 52840 adc channel */
        /* P0.02、03、04、05、28、29、30、31 */
    	channel@0 
        {
    		reg = <0>;
    		zephyr,gain = "ADC_GAIN_1_6";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,input-positive = <NRF_SAADC_AIN0>;
            // zephyr,input-negative = <NRF_SAADC_AIN3>; // 负输入
    		zephyr,resolution = <12>;
    	};
    
        channel@1 
        {
    		reg = <1>;
    		zephyr,gain = "ADC_GAIN_1_6";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,input-positive = <NRF_SAADC_AIN1>; 
    		zephyr,resolution = <12>;
    	};
    
        channel@2
        {
    		reg = <2>;
    		zephyr,gain = "ADC_GAIN_1_6";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,input-positive = <NRF_SAADC_VDD>;
    		zephyr,resolution = <12>;
    	};
    };
    
    /{
    	zephyr,user 
        {
    		io-channels = <&adc 0>, 
                          <&adc 1>,
                          <&adc 2>;
    	};
    };
    
    &wdt0 {
    
        compatible = "nordic,nrf-wdt";
        status = "okay";
        
    };
    
    /{
    
        aliases
        {
    
            io-led-red     = &led_red;
            io-led-green   = &led_green;
    
            io-but0        = &my_input_0;
    
            spi-m95p16     = &m95p16;
            
            i2c-lis3dh     = &lis3dh;
    
            uart-0         = &uart0;
    
    
            m-watchdog     = &wdt0;
    
        };
    
    };
    
    
    &mx25r64 {
    
    	status = "disabled";
    
    };

    Regards,

    Wu

Reply
  • Hi, 

        here is  my prj.conf and 52840.overlay

    ==========================prj.conf=====================
    
    
    #================LOG================
    CONFIG_LOG=y
    CONFIG_LOG_MODE_DEFERRED=n
    CONFIG_LOG_MODE_IMMEDIATE=y
    CONFIG_LOG_MODE_MINIMAL=y
    
    CONFIG_USE_SEGGER_RTT=y 
    
    CONFIG_LOG_BACKEND_RTT=y
    CONFIG_LOG_BACKEND_UART=n
    
    CONFIG_RTT_CONSOLE=y
    CONFIG_UART_CONSOLE=n   
    
    
    #================FLOATING POINT================
    CONFIG_FPU=y
    
    #================GPIO================
    CONFIG_GPIO=y
    
    
    #================SPI================
    CONFIG_SPI=y
    CONFIG_NORDIC_QSPI_NOR=y 
    
    #================UART================
    CONFIG_SERIAL=y
    CONFIG_UART_USE_RUNTIME_CONFIGURE=y
    CONFIG_UART_INTERRUPT_DRIVEN=y      
    CONFIG_UART_ASYNC_API=n           
    
    #================I2C================
    CONFIG_I2C=y
    
    #================ADC================
    CONFIG_ADC=y
    
    #================PWM================
    # CONFIG_PWM=y
    
    #================MCU FLASH================
    CONFIG_FLASH=y
    CONFIG_FLASH_MAP=y
    CONFIG_NVS=y 
    CONFIG_SOC_FLASH_NRF_EMULATE_ONE_BYTE_WRITE_ACCESS=y 
    
    
    #================Partition Manager================
    CONFIG_PARTITION_MANAGER_ENABLED=y
    
    
    #================MCU WATCHDOG================
    CONFIG_WATCHDOG=y
    
    #================BLUETOOTH================
    CONFIG_BT=y
    CONFIG_BT_RX_STACK_SIZE=2700 
    
    CONFIG_BT_DEVICE_NAME_MAX=30
    CONFIG_BT_DEVICE_NAME="52840_NUS"
    CONFIG_BT_DEVICE_NAME_DYNAMIC=y
    
    CONFIG_BT_MAX_CONN=2
    
    CONFIG_BT_CTLR_CONN_RSSI=y
    
    CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
    CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
    
    
    CONFIG_BT_BUF_ACL_TX_SIZE=251
    CONFIG_BT_BUF_ACL_RX_SIZE=251
    CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
    
    CONFIG_BT_L2CAP_TX_MTU=247
    
    # #================BLUETOOTH_peripheral================
    
    CONFIG_BT_PERIPHERAL=y
    
    CONFIG_BT_NUS=y # Enable the NUS service
    
    # CONNECTION PARAMETERS
    CONFIG_BT_PERIPHERAL_PREF_MIN_INT=30
    CONFIG_BT_PERIPHERAL_PREF_MAX_INT=50
    CONFIG_BT_PERIPHERAL_PREF_LATENCY=0
    CONFIG_BT_PERIPHERAL_PREF_TIMEOUT=40
    
    CONFIG_BT_GAP_AUTO_UPDATE_CONN_PARAMS=y   
     
    
    CONFIG_BT_LIM_ADV_TIMEOUT=40
    
    #====================BT DFU====================
    CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
    
    
    #====================UART DFU (MCUMGR)====================
    # # STEP 5.2 - Enable mcumgr DFU in application
    # Enable MCUMGR 
    CONFIG_MCUMGR=y
    
    # Enable MCUMGR management for both OS and Images
    CONFIG_MCUMGR_GRP_OS=y
    CONFIG_MCUMGR_GRP_IMG=y
    
    # Configure MCUMGR transport to UART
    CONFIG_MCUMGR_TRANSPORT_UART=y
    
    # Dependencies
    # Configure dependencies for CONFIG_MCUMGR  
    CONFIG_NET_BUF=y
    CONFIG_ZCBOR=y
    CONFIG_CRC=y
    
    # Configure dependencies for CONFIG_MCUMGR_GRP_IMG  
    CONFIG_FLASH=y
    CONFIG_IMG_MANAGER=y
    
    # Configure dependencies for CONFIG_IMG_MANAGER  
    CONFIG_STREAM_FLASH=y
    CONFIG_FLASH_MAP=y
    
    # Configure dependencies for CONFIG_MCUMGR_TRANSPORT_UART 
    CONFIG_BASE64=y
    
    
    #================BLUETOOTH_central================
    # Enable the BLE stack with GATT Client configuration
    CONFIG_BT_CENTRAL=y
    
    CONFIG_BT_GATT_CLIENT=y
    
    # Enable the BLE modules from NCS
    CONFIG_BT_NUS_CLIENT=y
    CONFIG_BT_SCAN=y
    CONFIG_BT_SCAN_FILTER_ENABLE=y
    CONFIG_BT_SCAN_UUID_CNT=1
    CONFIG_BT_SCAN_NAME_CNT=1
    CONFIG_BT_GATT_DM=y
    
    CONFIG_BT_SCAN_WITH_IDENTITY=y
    
    #================LOW_FREQ_CLOCK================
    CONFIG_CLOCK_CONTROL=y
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=n
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y
    
    
    #================POWER MANAGMENT================
    CONFIG_PM_DEVICE=y
    
    
    
    
    #====================PIPES====================
    CONFIG_PIPES=y
    
    
    
    
    ==========================OVERLAY=====================
    
    
    
    
    &reg0 {
        compatible = "nordic,nrf52x-regulator-hv";
    	status = "okay";
    };
    
    &reg1 {
        compatible = "nordic,nrf5x-regulator";
    	regulator-initial-mode = <NRF5X_REG_MODE_DCDC>;
    };
    
    &uicr {
    
        // NFC
        nfct-pins-as-gpios;
    
        // Reset pin
    	/delete-property/ gpio-as-nreset;
    };
    
    /{
        my_output{
    
            compatible = "gpio-leds";
    
            led_red: LED_RED {
                gpios = < &gpio0 9 0 >;
                label = "LED_RED";
            };
    
            led_green: LED_GREEN {
                gpios = < &gpio0 10 0 >;
                label = "LED_GREEN";
            };
    
        };
    };
    
    
    /{
    
        my_input {
    
            compatible = "gpio-keys";
    
            my_input_0: MY_INPUT_0 {
                gpios = < &gpio0 4 0 >;
                label = "MY INPUT 0";
            };
    
        };     
    };
    
    
    //==================UART==================//
    
    
    &pinctrl {
    
        uart0_default: uart0_default {
    
            group1 {
                psels = <NRF_PSEL(UART_TX, 0, 6)>,
                        <NRF_PSEL(UART_RX, 0, 8)>;
            };
        };
    
        uart0_sleep: uart0_sleep {
    
            group1 {
                psels = <NRF_PSEL(UART_TX, 0, 6)>,
                        <NRF_PSEL(UART_RX, 0, 8)>;
                low-power-enable;
            };
        };
    };
    
    &uart0 {
    
        compatible = "nordic,nrf-uarte";
        status = "okay";
        current-speed = < 115200 >;
        pinctrl-0 = < &uart0_default >;
        pinctrl-1 = < &uart0_sleep >;
        pinctrl-names = "default", "sleep";
    
    };
    
    
    &pinctrl {
    
    	i2c0_default: i2c0_default {
    		group1 {
    			psels = <NRF_PSEL(TWIM_SDA, 1, 14)>,
                        <NRF_PSEL(TWIM_SCL, 0, 12)>;
                nordic,drive-mode = <NRF_DRIVE_S0D1>; // standard 0, disconnect 1
                bias-pull-up; // internal pull-up is too weak, only for 100kHz or lower  
                
    		};
    	};
    
    	i2c0_sleep: i2c0_sleep {
    		group1 {
    			psels = <NRF_PSEL(TWIM_SDA, 1, 14)>,
                        <NRF_PSEL(TWIM_SCL, 0, 12)>;
    			low-power-enable;
    		};
    	};
    };
    
    &i2c0 {
    
        compatible = "nordic,nrf-twim";
        status = "okay";
        clock-frequency = <I2C_BITRATE_STANDARD>;
        pinctrl-0 = <&i2c0_default>;
        pinctrl-1 = <&i2c0_sleep>;
        pinctrl-names = "default", "sleep";
    
        lis3dh: lis3dh@19 
        {
            compatible = "vendor,i2cdevice";
            reg = <0x19>;
        };
    
    };
    
    &pinctrl {
    
        spi1_default: spi1_default {
            group1 {
                psels = <NRF_PSEL(SPIM_SCK,  0, 22)>,
                        <NRF_PSEL(SPIM_MOSI, 0, 30)>,
                        <NRF_PSEL(SPIM_MISO, 0, 23)>;
            };
        };
        spi1_sleep: spi1_sleep {
            group1 {
                psels = <NRF_PSEL(SPIM_SCK,  0, 22)>,
                        <NRF_PSEL(SPIM_MOSI, 0, 30)>,
                        <NRF_PSEL(SPIM_MISO, 0, 23)>;
                low-power-enable;
            };
        }; 
    };
    
    &spi1 {
    
        compatible = "nordic,nrf-spim";
        status = "okay";
        pinctrl-0 = <&spi1_default>;
        pinctrl-1 = <&spi1_sleep>;
        pinctrl-names = "default", "sleep";
        cs-gpios = <&gpio0 24 GPIO_ACTIVE_LOW>,
                   <&gpio0 25 GPIO_ACTIVE_LOW>;
    
        m95p16: m95p16@0
        {
            compatible = "vendor,spidevice";
            reg = < 0 >;
            spi-max-frequency = < DT_FREQ_M(8) >;
            wp-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
        };
    
        at45db041: at45db041@1
        {
            compatible = "vendor,spidevice"; 
            reg = < 1 >;
            spi-max-frequency = < DT_FREQ_M(8) >;
            wp-gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
        };
    };
    
    
    &adc {
    
        compatible = "nordic,nrf-saadc";
    	#address-cells = <1>;
    	#size-cells = <0>;
    	status = "okay";
        /* 52840 adc channel */
        /* P0.02、03、04、05、28、29、30、31 */
    	channel@0 
        {
    		reg = <0>;
    		zephyr,gain = "ADC_GAIN_1_6";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,input-positive = <NRF_SAADC_AIN0>;
            // zephyr,input-negative = <NRF_SAADC_AIN3>; // 负输入
    		zephyr,resolution = <12>;
    	};
    
        channel@1 
        {
    		reg = <1>;
    		zephyr,gain = "ADC_GAIN_1_6";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,input-positive = <NRF_SAADC_AIN1>; 
    		zephyr,resolution = <12>;
    	};
    
        channel@2
        {
    		reg = <2>;
    		zephyr,gain = "ADC_GAIN_1_6";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,input-positive = <NRF_SAADC_VDD>;
    		zephyr,resolution = <12>;
    	};
    };
    
    /{
    	zephyr,user 
        {
    		io-channels = <&adc 0>, 
                          <&adc 1>,
                          <&adc 2>;
    	};
    };
    
    &wdt0 {
    
        compatible = "nordic,nrf-wdt";
        status = "okay";
        
    };
    
    /{
    
        aliases
        {
    
            io-led-red     = &led_red;
            io-led-green   = &led_green;
    
            io-but0        = &my_input_0;
    
            spi-m95p16     = &m95p16;
            
            i2c-lis3dh     = &lis3dh;
    
            uart-0         = &uart0;
    
    
            m-watchdog     = &wdt0;
    
        };
    
    };
    
    
    &mx25r64 {
    
    	status = "disabled";
    
    };

    Regards,

    Wu

Children
No Data
Related