91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

開(kāi)發(fā)心得(2):Android智能硬件的關(guān)鍵——串口通信

機(jī)智云 ? 2022-07-04 16:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

通過(guò)總結(jié)大大小小多個(gè)Andriod智能硬件開(kāi)發(fā)項(xiàng)目,記錄了智能硬件產(chǎn)品開(kāi)發(fā)的全流程、智能硬件開(kāi)發(fā)所涉及的技術(shù)體系概述的心得,并附上在主板選型、串口通信、屏幕顯示、常用外接設(shè)備上一些品類的特點(diǎn)和差異,分析了我的開(kāi)發(fā)流程習(xí)慣原因,以供交流。

1ba4acc8-fa28-11ec-a2f4-dac502259ad0.gif5.關(guān)于串口通信

串口通信是Android智能硬件開(kāi)發(fā)所必須具備的能力,市面上類型眾多的外設(shè)基本都是通過(guò)串口進(jìn)行數(shù)據(jù)傳輸?shù)?,所以說(shuō)不會(huì)串口通信根本就做不了智能硬件開(kāi)發(fā)。

5.1 UART定義

通用異步收發(fā)傳輸器(Universal Asynchronous Receiver/Transmitter),通常稱作UART,是一種串行異步收發(fā)協(xié)議。

UART串口有三種工作方式:?jiǎn)喂?、半雙工、全雙工。硬件連接比較簡(jiǎn)單,僅需要3條線,注意連接時(shí)兩個(gè)設(shè)備UART電平,如電平范圍不一致請(qǐng)做電平轉(zhuǎn)換后再連接,可參考此文章。

我們常見(jiàn)的串口通訊設(shè)置的界面如下所示,

1bb71e8a-fa28-11ec-a2f4-dac502259ad0.png

主要有下列幾個(gè)參數(shù);

Speed(baud) 波特率

Data bits 數(shù)據(jù)位

Stop bits 停止位

Parity 奇偶校驗(yàn)位

Flow Control 流控

我們的設(shè)置基本都是8位數(shù)據(jù)位,1位停止位,無(wú)校驗(yàn)無(wú)流控,就如上圖所示。對(duì)于程序開(kāi)發(fā)而言,主要關(guān)注的參數(shù)就是波特率。

另外,需要注意的是比特率、成波特率兩者之間是有區(qū)別的。

波特率表示每秒鐘傳送的碼元符號(hào)的個(gè)數(shù),是衡量數(shù)據(jù)傳送速率的指標(biāo),它用單位時(shí)間內(nèi)載波調(diào)制狀態(tài)改變的次數(shù)來(lái)表示。

在信息傳輸通道中,攜帶數(shù)據(jù)信息的信號(hào)單元叫碼元,每秒鐘通過(guò)信道傳輸?shù)拇a元數(shù)稱為碼元傳輸速率,簡(jiǎn)稱波特率。

1波特即指每秒傳輸1個(gè)碼元符號(hào)(通過(guò)不同的調(diào)制方式,可以在一個(gè)碼元符號(hào)上負(fù)載多個(gè)bit位信息)。

1比特每秒是指每秒傳輸1比特(bit)。單位“波特”本身就已經(jīng)是代表每秒的調(diào)制數(shù),以“波特每秒”(Baud per second)為單位是一種常見(jiàn)的錯(cuò)誤。

按照上述的基本設(shè)置,其實(shí)一個(gè)碼元總共傳輸了10個(gè)比特,1個(gè)起始位+1個(gè)停止位+8個(gè)數(shù)據(jù)位,如波特率為9600,那每秒一共傳輸了9600*10 = 96000個(gè)比特,換算成字節(jié)為12000 byte,約合11.72kb。

需要注意的是這12000byte指的是串口實(shí)際一共傳輸?shù)臄?shù)據(jù)位,但對(duì)于我們程序而言,真正能處理的數(shù)據(jù)就是除去起始位與停止位的數(shù)據(jù)位,對(duì)于傳輸8位數(shù)據(jù)位的設(shè)置而言,波特率是多少則傳輸?shù)淖止?jié)就是多少。如9600的波特率表示每秒傳輸9600個(gè)字節(jié),每毫秒9.6字節(jié)。

安卓主板中一個(gè)串口端子的定義如下圖所示

1bc5938e-fa28-11ec-a2f4-dac502259ad0.png

幾乎所有安卓主板上的串口都是這種4pin的形式,這里有一個(gè)特別重要的點(diǎn),就是對(duì)外設(shè)接線時(shí),RX要對(duì)上外設(shè)的TX口,TX則對(duì)應(yīng)RX口,否則是接收不到數(shù)據(jù)傳輸?shù)摹?/p>

在我所接觸的眾多外設(shè)中,安卓的常用串口有三種標(biāo)準(zhǔn)接口。

RS232

RS485

TTL

UART所指的是硬件接口,是硬件層次的描述。而TTL與RS232、485則指的是數(shù)據(jù)傳輸?shù)碾娖綐?biāo)準(zhǔn),計(jì)算機(jī)的存儲(chǔ)單位是二進(jìn)制位(bit),也就是0和1,而0和1怎么用電壓來(lái)表示呢?不同的表示方法于是對(duì)應(yīng)了不同的標(biāo)準(zhǔn),這就是TTL、RS232這些電平標(biāo)準(zhǔn)之間的區(qū)別。

所有CPU芯片的UART數(shù)據(jù)傳輸?shù)碾娖蕉际遣捎肨TL標(biāo)準(zhǔn)的,我們所看到的安卓主板上RS232或485的接口都是要再需要經(jīng)過(guò)一次電平轉(zhuǎn)換才能與CPU進(jìn)行通信的??梢赃@樣說(shuō),安卓主板CPU直接引出來(lái)的串口管腳都是TTL標(biāo)準(zhǔn)的,如需要其它的接口則要中間再增加一個(gè)電平轉(zhuǎn)換芯片以滿足要求。

參考文章:

https://www.jianshu.com/p/f1bfc7f6059b

https://blog.csdn.net/zhuyongxin_6688/article/details/78001767

5.2 三種UART接口介紹

TTL

TTL(Transistor-Transistor Logic晶體管-晶體管邏輯),TTL電路的工作電壓是5V,它的輸出可以是高電平(3.6V)或者低電平(0.3V)。為了用這種模擬量的電壓來(lái)表示數(shù)字量的邏輯1和邏輯0,TTL電平規(guī)定:

對(duì)于輸出電路:電壓大于等于(≥)2.4V為邏輯1;電壓小于等于(≤)0.4V為邏輯0;

對(duì)于輸入電路:電壓大于等于(≥)2.0V為邏輯1;電壓小于等于(≤)0.8V為邏輯0;

參考//blog.csdn.net/wofreeo/article/details/82389002

RS232

它的全名是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”,該標(biāo)準(zhǔn)規(guī)定采用一個(gè)25個(gè)腳的DB-25連接器,對(duì)連接器的每個(gè)引腳的信號(hào)內(nèi)容加以規(guī)定,還對(duì)各種信號(hào)的電平加以規(guī)定。

后來(lái)IBM的PC機(jī)將RS232簡(jiǎn)化成了DB-9連接器,從而成為事實(shí)標(biāo)準(zhǔn)。而工業(yè)控制的RS-232口一般只使用RXD、TXD、GND三條線。如下圖所示。

1bdae644-fa28-11ec-a2f4-dac502259ad0.jpg

采用負(fù)邏輯,規(guī)定邏輯“1”的電平為-5V~-15 V,邏輯“0”的電平為+5 V~+15 V。選用該電氣標(biāo)準(zhǔn)的目的在于提高抗干擾能力,增大通信距離。RS -232的噪聲容限為2V,接收器將能識(shí)別低至+3V的信號(hào)作為邏輯“0”,將高到-3 V的信號(hào)作為邏輯“1”。

全雙工通信,傳輸距離較短,其通訊距離小于15 m,傳輸速率小于20 kb/s。

RS485

RS-485總線標(biāo)準(zhǔn)規(guī)定了總線接口的電氣特性標(biāo)準(zhǔn)即對(duì)于2個(gè)邏輯狀態(tài)的定義:正電平在+2V~+6V之間,表示一個(gè)邏輯狀態(tài);負(fù)電平在-2V~-6V之間,則表示另一個(gè)邏輯狀態(tài);

數(shù)字信號(hào)采用差分傳輸方式,即是A-B兩者的電壓差用以表示邏輯狀態(tài),能夠有效減少噪聲信號(hào)的干擾。

RS-485工業(yè)總線標(biāo)準(zhǔn)能夠有效支持多個(gè)分節(jié)點(diǎn)和通信距離遠(yuǎn),總共可接收32個(gè)設(shè)備,且對(duì)于信息的接收靈敏度較高,均采用屏蔽雙絞線傳輸。采用半雙工(兩線制)最大傳輸距離約1219米,傳輸速度最高達(dá)10Mbps。

1bef7488-fa28-11ec-a2f4-dac502259ad0.jpg

原文地址:https://blog.csdn.net/pigdreams/article/details/104351352

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

    關(guān)注

    18

    文章

    6392

    瀏覽量

    140067
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3595

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【RA-Eco-RA2E1-V1.0開(kāi)發(fā)板試用】串口打印例程。

    本實(shí)驗(yàn)基于瑞薩 RA 系列單片機(jī)完成UART 串口通信與printf 重定向功能實(shí)現(xiàn),通過(guò)配置串口引腳、初始化驅(qū)動(dòng)、編寫(xiě)發(fā)送回調(diào)函數(shù),實(shí)現(xiàn)了開(kāi)發(fā)板與上位機(jī)之間的數(shù)據(jù)收發(fā),并可直接使用p
    的頭像 發(fā)表于 02-24 16:33 ?339次閱讀
    【RA-Eco-RA<b class='flag-5'>2</b>E1-V1.0<b class='flag-5'>開(kāi)發(fā)</b>板試用】<b class='flag-5'>串口</b>打印例程。

    V2G 實(shí)戰(zhàn):SECC GreenPHY 通信開(kāi)發(fā)方案

    通 MSE102x 系列芯片是專為電動(dòng)汽車充電通信智能能源管理設(shè)計(jì)的 GreenPHY 電力線載波通信芯片,聚焦 V2G 場(chǎng)景的核心需求,支持 RMII 和 SPI 兩種主機(jī)接口模式
    發(fā)表于 01-09 20:31

    智能顯示模塊通過(guò)串口通信時(shí),如何知道已正確接收?如何判斷通信的指令符合協(xié)議?

    智能顯示模塊通過(guò)串口通信時(shí),如何知道已正確接收?如何判斷通信的指令符合協(xié)議?
    發(fā)表于 12-15 08:22

    嵌入式開(kāi)發(fā)關(guān)鍵點(diǎn)介紹

    。 嵌入式開(kāi)發(fā)關(guān)鍵點(diǎn): 1. 硬件限制: 嵌入式系統(tǒng)通常具有嚴(yán)格的硬件限制,例如處理器速度、內(nèi)存和存儲(chǔ)容量等。因此,嵌入式開(kāi)發(fā)需要考慮這些
    發(fā)表于 11-13 08:12

    【道生物聯(lián)TKB-623評(píng)估板試用】2-開(kāi)發(fā)通信測(cè)試

    一、硬件連接以及基礎(chǔ)入門(mén) 根據(jù)官方文檔,硬件的連接方式如下: 1、將吸盤(pán)天線連接開(kāi)發(fā)板的SMA 射頻天線接口; 2、使用USB 轉(zhuǎn)Type-C 連接線連接
    發(fā)表于 10-30 23:18

    串口通信基石:Air8000下Modbus RTU串口初始化詳解!

    串口初始化是Modbus RTU通信穩(wěn)定可靠的關(guān)鍵起點(diǎn)。本篇深入剖析Air8000開(kāi)發(fā)串口參數(shù)配置、初始化代碼實(shí)現(xiàn)及調(diào)試要點(diǎn),結(jié)合mast
    的頭像 發(fā)表于 10-28 16:33 ?1659次閱讀
    <b class='flag-5'>串口</b><b class='flag-5'>通信</b>基石:Air8000下Modbus RTU<b class='flag-5'>串口</b>初始化詳解!

    基于FPGA開(kāi)發(fā)板TSP的串口通信設(shè)計(jì)

    本文詳細(xì)介紹基于Terasic FPGA開(kāi)發(fā)板TSP(又名C5P和OSK)和其板載CP2102N USB-UART橋接芯片的串口通信系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。系統(tǒng)采用Verilog HDL編寫(xiě)UART收發(fā)控制器,通過(guò)CP2102N實(shí)現(xiàn)FP
    的頭像 發(fā)表于 10-15 11:05 ?4469次閱讀
    基于FPGA<b class='flag-5'>開(kāi)發(fā)</b>板TSP的<b class='flag-5'>串口</b><b class='flag-5'>通信</b>設(shè)計(jì)

    基于FPGA開(kāi)發(fā)板DE23-Lite的串口通信設(shè)計(jì)

    DE23-Lite開(kāi)發(fā)板提供了一個(gè)UART通信接口(物理接口是下圖的Type C接口),用戶能夠通過(guò)主機(jī)與Agilex 3 FPGA進(jìn)行串口通信。
    的頭像 發(fā)表于 10-15 10:57 ?4421次閱讀
    基于FPGA<b class='flag-5'>開(kāi)發(fā)</b>板DE23-Lite的<b class='flag-5'>串口</b><b class='flag-5'>通信</b>設(shè)計(jì)

    AT32F403A硬件I2C與從機(jī)通信

    示例目的 演示AT32F403A硬件I2C與從機(jī)通信。 注:本應(yīng)用筆記對(duì)應(yīng)的代碼是基于雅特力提供的V2.x.x 板級(jí)支持包(BSP)而開(kāi)發(fā)
    發(fā)表于 09-10 16:59

    谷歌全新Android助力提高開(kāi)發(fā)效率

    隨著 Android 的更新,加上 AI 的接入與賦能,讓 Android 開(kāi)發(fā)新范式正在加速成型。
    的頭像 發(fā)表于 08-29 09:22 ?876次閱讀

    串口屏:重塑人機(jī)交互的開(kāi)發(fā)革命

    智能設(shè)備蓬勃發(fā)展的今天,人機(jī)界面已成為產(chǎn)品差異化的關(guān)鍵。傳統(tǒng)GUI開(kāi)發(fā)需要耗費(fèi)大量時(shí)間在底層驅(qū)動(dòng)和圖形算法上,而串口屏的出現(xiàn),正在徹底改變這一現(xiàn)狀。 技術(shù)突破:讓交互
    發(fā)表于 08-28 14:56

    Air780EGH串口電路設(shè)計(jì)攻略:硬件工程師必知要點(diǎn)

    。 本文主要從硬件設(shè)計(jì)的角度,分享串口設(shè)計(jì)中的一些關(guān)鍵注意點(diǎn),軟件開(kāi)發(fā)方面不做深入探討。 一、串口相關(guān)管腳 Air780EGH支持3個(gè)
    的頭像 發(fā)表于 08-14 17:53 ?836次閱讀
    Air780EGH<b class='flag-5'>串口</b>電路設(shè)計(jì)攻略:<b class='flag-5'>硬件</b>工程師必知要點(diǎn)

    Air780EGH串口通信優(yōu)化:硬件電路設(shè)計(jì)核心要素剖析

    硬件設(shè)計(jì)的角度,分享串口設(shè)計(jì)中的一些關(guān)鍵注意點(diǎn),軟件開(kāi)發(fā)方面不做深入探討。 一、串口相關(guān)管腳 Air780EGH支持3個(gè)
    的頭像 發(fā)表于 08-11 15:44 ?757次閱讀
    Air780EGH<b class='flag-5'>串口</b><b class='flag-5'>通信</b>優(yōu)化:<b class='flag-5'>硬件</b>電路設(shè)計(jì)核心要素剖析

    串口網(wǎng)關(guān)是什么

    串口網(wǎng)關(guān)是什么? 串口網(wǎng)關(guān)(Serial Gateway) 是一種硬件或軟件設(shè)備,用于將 串口通信協(xié)議 (如RS-232、RS-485、TT
    的頭像 發(fā)表于 06-05 11:31 ?796次閱讀

    【RA-Eco-RA4M2開(kāi)發(fā)板評(píng)測(cè)】RA-Eco-RA4M2 串口通信

    信號(hào),但不需要額外的起始、停止位,可以實(shí)現(xiàn)更快的傳輸速度。但SCI控制起來(lái)更復(fù)雜,因此本文主要講解以異步通信,也就是UART。 2 串口硬件 串口
    發(fā)表于 04-27 23:23