> pi" />
0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RTT_Draco的外置uart接口(TXD,RXD)怎么配置和使用呢?

工程師鄧生 ? 來源:未知 ? 作者:劉芹 ? 2024-01-16 17:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RTT_Draco的外置uart接口(TXD,RXD)怎么配置和使用呢?

RT-Thread的RTT_Draco是一款高性能的MCU芯片,它提供了外置UART接口(TXD,RXD)用于與外部設(shè)備進行通信。下面詳細介紹了RTT_Draco外置UART接口的配置和使用方法。

1. 配置引腳復(fù)用:

首先,在使用RTT_Draco的外置UART接口之前,需要確保引腳復(fù)用已經(jīng)正確配置。RTT_Draco的引腳復(fù)用功能由引腳復(fù)用控制器Pin Multiplexer)負責(zé)??梢允褂肦T-Thread的pinmux命令進行引腳復(fù)用配置,具體操作如下:

```shell
# 配置TXD引腳
>> pinmux set PA0 1
# 配置RXD引腳
>> pinmux set PA1 1
# 配置UART功能
>> pinmux set-func PA0 uart0_txd
>> pinmux set-func PA1 uart0_rxd
```

2. 初始化UART設(shè)備:

接下來,需要初始化UART設(shè)備以便進行后續(xù)的通信操作。RT-Thread提供了通用串口驅(qū)動(UART),可以用于各種UART設(shè)備的初始化和操作。可以使用RT-Thread的UART設(shè)備驅(qū)動來初始化UART設(shè)備,示例代碼如下:

```c
#include
#include

static struct rt_serial_device uart;

int uart_init(void)
{
rt_err_t result;
struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT;

/* 初始化串口設(shè)備對象 */
rt_serial_init(&uart, "uart1",
&uart_ops, NULL);

/* 配置串口設(shè)備參數(shù) */
config.baud_rate = BAUD_RATE_115200;
config.data_bits = DATA_BITS_8;
config.stop_bits = STOP_BITS_1;
config.parity = PARITY_NONE;

/* 打開并配置串口設(shè)備 */
result = rt_serial_configure(&uart, &config);
if (result != RT_EOK)
{
/* 初始化失敗處理 */
}

return RT_EOK;
}
```

3. 發(fā)送和接收數(shù)據(jù):

UART設(shè)備初始化完成后,可以通過rt_device_write和rt_device_read函數(shù)向UART設(shè)備發(fā)送和接收數(shù)據(jù)。

```c
#define UART_DEVICE_NAME "uart1"

void uart_send(const void *data, rt_size_t count)
{
struct rt_device *device = rt_device_find(UART_DEVICE_NAME);
if (device == RT_NULL)
{
/* 設(shè)備未找到處理 */
return;
}

rt_device_write(device, 0, data, count);
}

rt_err_t uart_receive(void *buffer, rt_size_t size)
{
struct rt_device *device = rt_device_find(UART_DEVICE_NAME);
if (device == RT_NULL)
{
/* 設(shè)備未找到處理 */
return -RT_ENOSYS;
}

return rt_device_read(device, 0, buffer, size);
}
```

4. 綁定設(shè)備:

最后,需要將UART設(shè)備綁定到相應(yīng)的RT-Thread設(shè)備節(jié)點上,以便其他模塊可以通過操作設(shè)備節(jié)點來使用UART設(shè)備??梢允褂肦T-Thread的device命令來進行綁定操作,示例代碼如下:

```shell
>> device bind uart1 uart
```

以上就是RTT_Draco外置UART接口(TXD,RXD)的配置和使用方法。通過上述步驟,您可以在RTT_Draco上成功使用外置UART接口與外部設(shè)備進行通信。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • RTT
    RTT
    +關(guān)注

    關(guān)注

    0

    文章

    66

    瀏覽量

    17575
  • UART接口
    +關(guān)注

    關(guān)注

    0

    文章

    124

    瀏覽量

    15785
  • MCU芯片
    +關(guān)注

    關(guān)注

    3

    文章

    256

    瀏覽量

    12028
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    【高云GW5AT-LV60 開發(fā)套件試用體驗】串口通信回環(huán)

    ,H11作為UART_RXDUART_TXD 實物連接圖如下: 軟件工程 配置如下: IO_LOC \"UART_TXD\" H11; IO_PORT \"
    發(fā)表于 06-18 18:19

    求助,6832S做UART通信失敗

    如圖1,我使用到RXD2S和TXD2S兩個引腳通信。 如圖2,這是初始化,我覺得問題就出在初始化這里,第一行語句是把P3.6、P3.7 復(fù)用為 RXD2、TXD2 并使能
    發(fā)表于 06-14 19:03

    Altera A10 SoC HPS UART作為數(shù)據(jù)通訊接口應(yīng)用的配置與調(diào)試

    在嵌入式系統(tǒng)中,UART 串口通常用于調(diào)試和通訊。通常情況下,調(diào)試串口對波特率的大小沒有特別要求,一般配置是 115200 8N1。UART 串口除了調(diào)試功能外,有時候在設(shè)計中也會充當(dāng)數(shù)據(jù)通訊
    的頭像 發(fā)表于 04-24 15:32 ?491次閱讀
    Altera A10 SoC HPS <b class='flag-5'>UART</b>作為數(shù)據(jù)通訊<b class='flag-5'>接口</b>應(yīng)用的<b class='flag-5'>配置</b>與調(diào)試

    基于小凌派RK2206開發(fā)板:OpenHarmony如何使用IoT接口控制UART外設(shè)

    1、實驗簡介本實驗將演示如何在小凌派-RK2206開發(fā)板上使用IOT庫的UART接口,進行UART編程開發(fā)。例程將創(chuàng)建一個任務(wù),通過配置UART
    的頭像 發(fā)表于 04-22 14:22 ?386次閱讀
    基于小凌派RK2206開發(fā)板:OpenHarmony如何使用IoT<b class='flag-5'>接口</b>控制<b class='flag-5'>UART</b>外設(shè)

    迅為RK3568開發(fā)板篇Openharmony配置HDF控制UART-UART 接口運作機制

    調(diào)用實際設(shè)備對象的相應(yīng)內(nèi)部方法的目的。 這種模式可以直接借助 HDF 設(shè)備管理器的服務(wù)管理能力,但需要為每個設(shè)備單獨配置設(shè)備節(jié)點,增加內(nèi)存占用。 UART 模塊各分層的作用如下所述: ? 接口層提供
    發(fā)表于 02-19 10:41

    串行接口的工作方式有幾種,串行接口RXD1和TXD1是什么端口

    在數(shù)字通信領(lǐng)域,串行接口作為一種高效的數(shù)據(jù)傳輸方式,廣泛應(yīng)用于各種電子設(shè)備之間的數(shù)據(jù)交換。串行接口不僅具有結(jié)構(gòu)簡單、傳輸距離遠、抗干擾能力強等優(yōu)點,而且能夠支持多種工作方式,以適應(yīng)不同應(yīng)用場景的需求。本文將深入探討串行接口的工作
    的頭像 發(fā)表于 01-29 16:51 ?1135次閱讀

    總線接口的類型與選擇指南

    ) 類型:異步、全雙工串口總線。 特性:有兩根線,一根TXD用于發(fā)送,一根RXD用于接收。不需要時鐘信號來同步傳輸,而是依賴于發(fā)送設(shè)備和接收設(shè)備之間預(yù)定義的配置。 I2C總線 類型:同步、半雙工雙向的兩線式串口總線。 特性:由串
    的頭像 發(fā)表于 12-31 10:06 ?1308次閱讀

    基于FPGA的串口UART設(shè)計

    在設(shè)計過程中只需要關(guān)心RS232_TXD和RS232_RXD兩個信號, RS232_TXD是數(shù)據(jù)發(fā)送端口,RS232_RXD是數(shù)據(jù)接收端口。
    的頭像 發(fā)表于 12-30 14:07 ?1630次閱讀
    基于FPGA的串口<b class='flag-5'>UART</b>設(shè)計

    RGMII接口及其時序規(guī)范

    之間的通信接口,優(yōu)點是比 GMII 減少了近一半的管腳,節(jié)約設(shè)計成本。 RGMII 支持 10/100/1000Mbps 三種通信速率,接口定義如下: 在 10/100Mbps 模式下,TXD[3:0
    的頭像 發(fā)表于 12-30 09:55 ?4345次閱讀
    RGMII<b class='flag-5'>接口</b>及其時序規(guī)范

    怎么配置把U0RXD和U0TXD當(dāng)作GPIO口使用?

    怎么配置把U0RXD和U0TXD當(dāng)作GPIO口使用 用 PIN_FUNC_SELECT和gpio_output_set配置沒有效果
    發(fā)表于 07-22 06:56

    如何使用SPI或UART連接兩個ESP模塊?

    UART0 有兩個 RXD/TXD 引腳,而 UART1 只有 TXD,因此我們需要將 SPI 用于另一個模塊。我移植 spi.c lib
    發(fā)表于 07-19 16:08

    請問esp8266如何布置UART0/UART1引腳和功能?

    FUNC : 引腳名稱 U0TXD --&gt;U0TXD U0RXD --&gt;U0RXD U0CTS --&gt;MTCK U0RTS
    發(fā)表于 07-17 08:33

    ESP8266接ZigBee模塊后,模塊下載程序及正常工作的疑問求解

    我想使用ESP8266與ZigBee模塊,他們之間是使用串口通信的。 8266 ZigBee TXD ------RXD RXD ------TXD 如果這樣接的話,那下載程序的時候8
    發(fā)表于 07-12 11:21

    ESP8266如何將uart0的txdrxd交換到其他引腳?

    對此敏感的應(yīng)用,可以使用 UART 的內(nèi)部引腳交換功能,在初始化的時候,將 U0TXD、U0RXD 分 別與 U0RTS(MTDO),U0CTS(MTCK) 交換,間接屏蔽上電時期的打印輸出。 根據(jù)
    發(fā)表于 07-08 07:56

    靈活配置通訊參數(shù),實現(xiàn)1擴4的UART接口擴展,EU104等你來體驗

    UART接口
    穩(wěn)控自動化
    發(fā)布于 :2024年07月01日 09:24:47

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品