娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

教你們STM32如何收發float類型數據

發布者:nu23最新更新時間:2024-09-27 來源: elecfans關鍵字:STM32  收發 手機看文章 掃描二維碼
隨時隨地手機看文章

實際應用中,我們可能需要兩個設備通過串口傳輸浮點數據:

fedd4e54-990e-11eb-8b86-12bb97331649.png

本篇筆記為了方便演示,使用串口助手模擬其中一個設備,本篇筆記內容如下:

02044fa6-990f-11eb-8b86-12bb97331649.png

我們創建一個用于管理float類型數據的共用體:

unionfloat_data { floatf_data; uint8_tbyte[4]; };

數據的流向如:

02316d10-990f-11eb-8b86-12bb97331649.png

本次使用串口助手模擬發送設備,省略了第一步,主要看第②、③步。

創建兩個共用體變量,用于發送與接收:

unionfloat_datarx_float_data,tx_float_data;

收發相關代碼

左右滑動查看全部代碼>>>

// if(HAL_UART_Receive(&huart3,rx_float_data.byte,4,1000)==HAL_OK) { printf('rx_float_data.byte[0]=%.2x(addr:%#x) ',rx_float_data.byte[0],&rx_float_data.byte[0]); printf('rx_float_data.byte[1]=%.2x(addr:%#x) ',rx_float_data.byte[1],&rx_float_data.byte[1]); printf('rx_float_data.byte[2]=%.2x(addr:%#x) ',rx_float_data.byte[2],&rx_float_data.byte[2]); printf('rx_float_data.byte[3]=%.2x(addr:%#x) ',rx_float_data.byte[3],&rx_float_data.byte[3]); printf('rx_float_data.f_data=%f(addr:%#x) ',(float)rx_float_data.f_data,&rx_float_data.f_data); tx_float_data.f_data=rx_float_data.f_data+1.0f; printf('tx_float_data.f_data=%f ',tx_float_data.f_data); HAL_UART_Transmit(&huart3,tx_float_data.byte,4,1000); }

代碼很簡單,UART3接收到串口助手發送的float類型對應的16進制數據存于rx_float_data.byte中,并打印輸出rx_float_data.byte的各個字節,此時rx_float_data.f_data就是我們接收的浮點數據,接收到的數據加上1.0后賦予tx_float_data.f_data再通過UART3把tx_float_data.byte發送出去。

運行結果:

029ca5da-990f-11eb-8b86-12bb97331649.png

這里以傳輸數據1.28為例,1.28對應的十六進制數據是什么呢?

我們可以通過一些在線網站查看,比如

http://www.styb.cn/cms/ieee_754.php

02c9b12e-990f-11eb-8b86-12bb97331649.png

1.28對應的十六進制為:3FA3D70A。因為STM32是小端模式,所以使用串口助手發送時需要進行一個逆序,即發送0AD7A33F。從實驗結果可以看到:

02edf03e-990f-11eb-8b86-12bb97331649.png

STM32收到1.28之后,加上1.0之后通過UART3發回上位機,2.28對應4011EB85:

02fba01c-990f-11eb-8b86-12bb97331649.png

這里我們使用串口助手來模擬一個設備,所以需要查一下我們要發送的float數據對應的十六進制數據。實際兩個設備之間做傳輸是不需要這么做的,想發什么就傳什么就可以:

032a68ac-990f-11eb-8b86-12bb97331649.png


關鍵字:STM32  收發 引用地址:教你們STM32如何收發float類型數據

上一篇:STM32操作系統系列使用C語言的教程
下一篇:在STM32G4片內不同存儲空間運行的速度差異

推薦閱讀最新更新時間:2025-05-04 07:05

全球首臺射頻矢量信號收發儀重新定義射頻測試
基于最新版NI LabVIEW圖形化系統設計軟件,LabVIEW Robotics 環境繼續提供工業級系統設計軟件的能力。結合LabVIEWRobotics與LabVIEW 2010,新的編譯器技術和優化得以實現,您可以自動受益于20倍的平均運行時間性能的提升。諸如導航,定位和視覺處理等計算密集型算法將可以更快地實現,提高您的機器人的性能。 感知 傳感器驅動對任何自主或半自主的系統來說都是是至關重要的,并且其設計和維護的繁瑣過程常常會浪費很多設計時間。為了開發LabVIEW Robotics模塊,NI復用了 很多高效的和可維護的方法來實現機器人傳感器驅動的發展。新的驅動程序包括以下內容: Vishay TEMT6000X01環
[測試測量]
全球首臺射頻矢量信號<font color='red'>收發</font>儀重新定義射頻測試
更方便、更便宜—ST推出高度靈活的RS485網絡收發
意法半導體的3.3V RS485 收發器 STR485LV 提供了一個可選擇20Mbps或250kbps通信速率的外部引腳,并可以直連最低1.8V的低壓邏輯器件,從而提高了設計靈活性。 用戶可選數據速率引腳使得設計人員可以根據電纜的性能,將同一收發器用于連接高速/短距離或最長距離(4000英尺)的RS485網絡,簡化RS485器件的庫存管理。新產品適用于各種應用場景,包括電信基礎設施、高速數據鏈路或低壓微控制器通信。 新產品為設計人員提供靈活的連接選擇,利用1.65V-3.6V的數據和使能信號電源,無需外部電平轉換元件就可以直連1.8V-3.3V的低壓邏輯器件。 芯片內部驅動器輸出電阻保持在96?以上,最高工
[網絡通信]
更方便、更便宜—ST推出高度靈活的RS485網絡<font color='red'>收發</font>器
ADI公司收發器通過現有車載電纜和連接器基礎設施實現高清視頻
Analog Devices, Inc. ( ADI )近日宣布推出一系列收發器產品,可通過現有非屏蔽雙絞線和非屏蔽連接器實現高清(HD)視頻。這使OEM廠商可以輕松地將標清攝像頭升級為高清攝像頭,并提供當今汽車攝像頭應用所需的優異分辨率和圖像質量。與其他汽車鏈路解決方案相比,新型ADV7990和ADV7991發送器與 ADV7380 和ADV7381接收器使用 ADI 公司的車用相機總線(C2B? )技術,可顯著降低重量、體積和成本,并減少電纜布線限制。 C2B收發器專為汽車應用而定義和設計,這意味著除了在非屏蔽基礎設施上實現出色的視覺質量以外,還特別注意利用片內EMC/EMI緩解技術使之完全符合業界關于EMC、EMI和ESD
[汽車電子]
NI推出首款支持直接RF采樣的FlexRIO收發
NI (美國國家儀器公司,National Instruments,簡稱NI) 是一家以軟件為中心的平臺供應商,致力于幫助自動化測試和測量用戶加速系統開發和提升系統性能,該公司今日宣布推出基于FPGA的 PXIe-5785 FlexRIO 收發器 ,旨在縮短國防和航空航天行業先進雷達應用的設計周期。 電磁頻譜應用的進步要求軍事電子產品能夠及時應對新出現的安全威脅。 這種演變使得工程師和科學家在設計和測試情報、監視和偵察系統時面臨了許多新挑戰。 “國防機構必須以經濟、省時的方式開發日益復雜的系統,”NI自動化測試和射頻產品管理總監Jason White表示, “在整個設計周期中,工程師的任務是盡可能縮短成功部署所需的時間。
[測試測量]
NI推出首款支持直接RF采樣的FlexRIO<font color='red'>收發</font>器
車載雷達收發調頻體制及芯片方案
作為雷達軟硬件設計的基礎,收發調頻體制的選擇對測距、測速、測向的范圍、分辨率、精度、模糊度等核心指標起著關鍵作用。目前很少有針對汽車雷達的系統化介紹。本文將對量產的車載雷達中最常用的收發調頻體制手段,做出相關介紹。 近幾年,基于微波雷達的先進駕駛輔助系統的裝車率快速上升,常見應用包括前向的碰撞預警FCW、自適應巡航ACC、自動跟車S&G,以及后向的盲區探測BSD、變道輔助LCA、側向探測CTA等。 盡管各個應用的側重點不同,但總體上車載雷達主要通過測量目標的距離、相對速度、角度、大小、個數等參數為駕駛者提供及時可靠的預警信息。快速發展的市場要求汽車雷達擁有更遠的測量距離,更寬的探測角度、更高的測距測速測向精度,更短的探測時間,更
[嵌入式]
美高森美宣布推出面向安全物聯網應用的Sub-GHz射頻收發
致力于在功耗、安全、可靠和性能方面提供差異化半導體技術方案的領先供應商美高森美公司(Microsemi Corporation,紐約納斯達克交易所代號:MSCC) 宣布推出用于工業、安全和醫療應用的極低功耗sub-GHz射頻(RF)收發器。除業界一流的低功耗特性之外,這款全新ZL70550兼具高性能無線能力、高集成水平及極小封裝,且價格具有競爭力。ZL70550非常適合基于紐扣電池或能量采集器的無線應用,比如電子貨架標簽、零售固定資產跟蹤、流程控制、可穿戴監測和診斷心電圖(ECG)。 根據World Inc.的最新市場研究,2015年芯片組市場的規模達到4.5億個,使得無線傳感器市場經歷 超速發展 。雖然這個市場被Wi-Fi、藍
[物聯網]
韓國研發世界最快無線射頻芯片 極速數據收發
來自外媒消息報道稱,韓國高級技術研究院的研究人員目前研發了最新的無線射頻收發芯片,采用的是60GHz的波段,數據流量高達 10mbps。這樣的速度意味著用戶下載一部 4.7GB 的電影所花的時間僅需 3.76 秒。 該研究小組稱,芯片尺寸非常小(高 4mm ,寬 6.6mm)。整個芯片取代了過去需要多個天線才能執接收或是傳輸數據任務,很大程度上有利于縮小整個芯片尺寸設計。 該項目的負責人樸哲順(音譯,Park Cheol Soon) 表示,該芯片可應用于未來的智能手機和智能相機,同時由于耗費相對較低,也將可以取代未來的電纜或是光纖。 對于消費者而言,該芯片的研發意味著未來網絡或
[網絡通信]
韓國研發世界最快無線射頻芯片 極速<font color='red'>數據</font><font color='red'>收發</font>
美信收購RF收發器供應商Genasic
模擬及混合信號芯片供應商美信(Maxim)日前表示,已收購一家RF芯片設計商Genasic系統設計公司,交易金額并未透露。 2011年,Genasic發布其首款應用于HSPA及LTE的65nm CMOS收發器。 Genasic現任CEO Ashok Dhuna此前曾是Sequans RF工程副總裁,曾創辦過無線Lan芯片供應商Synad,并于2003年出售給意法半導體。 Genasic業務發展副總裁Mike Baker曾是Synad的聯合創始人兼CEO。 Genasic工程副總裁Hassan Shafeeu此前也在Sequans工作,負責RF IC設計工作。
[網絡通信]
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 巴青县| 秦皇岛市| 高雄县| 宝鸡市| 拉萨市| 祥云县| 江华| 通许县| 宁化县| 犍为县| 水富县| 环江| 姜堰市| 岳阳市| 香港| 和静县| 白山市| 瑞金市| 汉川市| 资中县| 延津县| 石台县| 利津县| 通城县| 万盛区| 贵定县| 莱阳市| 涿鹿县| 灵寿县| 游戏| 华亭县| 南投市| 汕尾市| 常德市| 石家庄市| 邯郸县| 黔西县| 株洲县| 枣强县| 增城市| 尤溪县|