1. 程式人生 > >OpenWRT 修改dts檔案配置串列埠uart ttyS0

OpenWRT 修改dts檔案配置串列埠uart ttyS0

串列埠需要修改dts檔案,在原始碼目錄的target/linux/ramips/dts目錄中,修改mt7620a.dtsi中的一些內容,修改內容如下:

(1) chosen {

              bootargs ="console=ttyS0,57600";

       };

    把這個ttyS0,改為ttyS1,因為串列埠驅動起來後,ttyS0做為了擴充套件串列埠。Open串列埠時選擇 ttyS0

(2) [email protected] {

                     compatible ="ralink,mt7620a-uart","ralink,rt2880-uart", "ns16550a";

                     reg = <0x500 0x100>;

                     resets = <&rstctrl12>;

                     reset-names ="uart";

                     interrupt-parent =<&intc>;

                     interrupts = <5>;

                     reg-shift = <2>;   

                     status ="disabled";

// status= "disabled";改為:                               

pinctrl-names = "default";

                        pinctrl-0 = <&uartf_gpio_pins>;

                    status = "ok";

              };

把status = "disabled";這句註釋掉或者刪除,加上這句預設串列埠驅動沒有載入。

(3)pcm_i2s_pins: pcm_i2s {

                     pcm_i2s {

                            ralink,group ="uartf";

                            ralink,function ="pcm i2s";

                     };

              };

              uartf_gpio_pins: uartf_gpio {

                     uartf_gpio {

                            ralink,group ="uartf";

                            ralink,function ="gpio uartf";

                     };

這裡把ralink,function的值都改為uartf。

(4) 修改MT7620a.dts檔案

      pinctrl {

              state_default: pinctrl0 {

                     gpio {

                            ralink,group ="i2c","uartf";

                            ralink,function ="gpio";

                     };

              };

       };

把uartf去掉。

完成上面4步uart full就完成了。

注意:不是dtsi檔案中所有的節點都會被註冊,在註冊匯流排和裝置時,會對dts節點的狀態作一個判斷,如果節點裡面的status屬性沒有被定義,或者status屬性被定義了並且值被設為“ok”或者“okay”,其他情況則不被註冊到系統中。


更多dts知識點介紹可以瀏覽:http://www.right.com.cn/forum/thread-146260-1-1.html

相關推薦

OpenWRT 修改dts檔案配置串列uart ttyS0

串列埠需要修改dts檔案,在原始碼目錄的target/linux/ramips/dts目錄中,修改mt7620a.dtsi中的一些內容,修改內容如下: (1) chosen {            

openWRTDTS檔案配置--MT7620A

原文地址:http://blog.chinaunix.net/uid-29616823-id-4390033.html +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

[STM32F103]串列UART配置

l 串列埠時鐘使能,GPIO時鐘使能:   RCC_APB2PeriphClockCmd(); l 串列埠復位:   USART_DeInit(); 這一步不是必須的 l GPIO埠模式設定:   GPIO_Init(); l 串列埠引數初始化:   US

樹莓派3B串列UART配置

樹莓派2017-11-29-raspbian-stretch-lite版本配置親測只需2步可以搞定1.   sudo systemctl disable hciuart禁用藍芽2.   sudo nano /boot/config.txt在最後加上一行dtoverlay=pi

STM32F072從零配置工程-基於HAL庫的串列UART中斷配置

先上一個採用串列埠直接傳輸的Demo; 此處的思路是完全採用HAL庫來實現的,核心是運用HAL_UART_Transmit_IT和HAL_UART_Receive_IT兩個函式來實現的,可以作為一個Demo來測試使用; 直接上程式碼,其串列埠的配置和上一章完全一致,因此忽略不計:   

S3C2440裸機程式【2】串列uart程式

         學習ARM7晶片stm32時,裸機程式開發可以很方便的根據庫函式在工程模板上進行開發,而ARM9主要是移植Linux開發,很少有裸機程式開發,因此在玩S3C2440希望最終形成一個keil環境下的模板。用的淘寶上的JZ2440v

修改開發板的串列輸出,控制檯提示符

SoC中有4個串列埠,但開發板上只引出了兩個(uart0,uart2),預設通過uart2輸出, 嘗試通過修改程式碼把它改到uart0輸出. 在 "\u-boot-samsung-dev\include\configs" 路徑下的 smdkv210single.h 中,修改146行 

ARM串列(UART)的使用 (S3C2440)

UART概述 通用非同步收發器簡稱UART(Universal Asynchronous Receiver and Transmitter) 工作方式為:序列、全雙工。 只需3根線:TXD(傳送資料)、RXD(接收資料)、GND。 資料傳輸流程: 原來是高電平

嵌入式Linux修改終端使用的串列

硬體平臺: ST公司的stm32f429i-discovery u-boot: emcraft網站提供的u-boot 2010.03 linux: emcraft網站提供的uclinux 我的stm32f429i-discovery剛到手就讓我將USART1的RX管腳給燒壞了,我將串列埠

模擬串列UART的實現

我所禱告的,就是要你們的愛心,在知識和見識上,多而又多,使你們能分辨是非,做誠實無過的人,直到基督的日子。——腓立比書【1:9~10】 最近在調的MCU的型號為STM32F030,配置晶片相較之前的MCU都比較簡單,功能配置很順利。但是在寫串列埠程式的時候,發現串列埠一直不通,使用示波器也沒有波形。因為基本

STM32F103配置串列中斷服務函式並接收double雙精度資料,python傳送和接收雙精度資料

(1)首先,我們要進行串列埠中斷服務函式的配置 void USART1_Config(void) {         GPIO_InitTypeDef GPIO_InitStructure;     &nb

樹莓派3串列(UART)使用問題的解決方法!

根據官方的反饋和回覆,我們瞭解到樹莓派3上使用者目前無法正常是使用GPIO中的UART串列埠(GPIO14&GPIO15),也就是說使用者無論是想用串列埠來除錯樹莓派,還是想用GPIO中的串列埠來連線GPS,藍芽,XBEE等等串列埠外設目前都是有問題的。 原因是樹

通過串列UART登入樹莓派

背景 很多朋友因為了解到樹莓派的強大,所以都很快入手了一個準備把玩,可是通常買回後,發現自己沒有HDMI顯示器,即使有一個顯示器,也通常是VGA介面的,缺個VGA轉HDMI接頭。其實,沒有顯示器也還有辦法可以通過一臺主機(安裝有ssh或串列埠通訊的軟體)的命令

第011課 Jz2400串列(UART)的使用

第001節硬體知識_UART硬體介紹 1.串列埠的硬體介紹 UART的全稱是Universal Asynchronous Receiver and Transmitter,即非同步傳送和接收。 串列埠在嵌入式中用途非常的廣泛,主要的用途有: 列

重定向C庫中stdio檔案中的printf()函式,檔案流-->串列USART1

1、printf()函式: 我們以前在VC6.0中程式設計時,包含include<stdio.h>標頭檔案之後,呼叫printf()函式後可以向控制檯傳輸(列印)一連串字元等。 若要在STM32上也想用printf()函式向指定的裝置上傳輸(列印)一串資料的話,

[FAQ03891] 如何在User版本開啟串列(Uart),抓取上層Log,開啟輸入控制檯

FAQ Content [Description] 如何在User版本開啟串列埠(Uart),開啟輸入控制檯,抓取上層Log   [Keyword] User Uart Log Logcat 輸入 控制檯 串列埠   [Solution] (1) 如何在User版本中使用串

樹莓派3串列(UART)使用問題(板載藍芽和串列)!!

根據官方的反饋和回覆,我們瞭解到樹莓派3上使用者目前無法正常是使用GPIO中的UART串列埠(GPIO14&GPIO15),也就是說使用者無論是想用串列埠來除錯樹莓派,還是想用GPIO中的串列埠來連線GPS,藍芽,XBEE等等串列埠外設目前都是有問題的。 原因是樹莓派CPU內部有兩個串列埠,一個

樹莓派3b串列(UART)使用問題的解決方法!及關閉板載藍芽方法

        原因是樹莓派CPU內部有兩個串列埠,一個是硬體串列埠(官方稱為PL011 UART),一個是迷你串列埠(官方成為mini-uart)。在樹莓派2B/B+這些老版樹莓派上,官方設計時都是將“硬體串列埠”分配給GPIO的UART(GPIO14&GPIO15),因此可以獨立調整串列埠的速率

NUC140之串列UART

UART可以說是序列通訊用的最多的協議,相對其他協議也比較簡單,一般只要設定好位元率,資料位,停止位和校驗位即可。下面來看程式。 #include "UART.h"     #include <stdio.h> volatile static uint8

串列uart中斷方式和查詢方式的選擇以及高效實現(迴圈FIFO)

串列埠uart中斷方式和查詢方式的選擇以及高效實現 1. 中斷方式和查詢方式的選擇 (1) 串列埠中斷方式相比查詢方式效率要高。 串列埠傳輸速率比較慢。比如對於系統時鐘為100MHz的MCU,串列埠波特率為115200。傳輸一個位元組大概需要10000個時鐘週期,所以系統大部分的時間