在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

基于瑞薩RA6M5 MCU的環境監測系統設計

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 2023-09-25 12:26 ? 次閱讀

1設計簡介

本項目初步設計思路是打算以瑞薩單片機作為控制和數據處理的單元,使用溫濕度,光照傳感器去監測周圍的環境參數,在屏幕上完成傳感器數據和相關信息的顯示。同時,使用WIFI無線模組與單片機之間進行數據交互,接入物聯網云平臺。嘗試利用上位機實現對于溫度、濕度、光照強度等相關環境參數監測。但是由于時間原因以及個人能力有限制,只完成了部分設計。本項目是基于啟明6M5開發板完成了環境監測系統設計,傳感器DHT11獲取溫度濕度的數據;傳感器GY39獲取光照強度數據;0.96寸OLED屏幕提供顯示功能,能夠顯示傳感器數據以及相關信息。編寫上位機軟件,實現溫濕度傳感器數據的上報。

2設計框架

04467d7a-5b59-11ee-939d-92fbcf53809c.png ? ?

3項目說明

3.1 主控板

本項目是基于啟明6M5開發板完成設計,RA6M5芯片配置如下:采用 Arm Cortex-M33 內核的瑞薩 RA 系列 32 位 MCU;主芯片為的R7FA6M5BH3CFC,主高達200MHz,2MB的代碼閃 存,8KB數據閃存,以及512KB的帶奇偶校驗/ECC的SRAM。啟明6M5開發板具有豐富的接口與外設,例如基本的LED,按鍵,電容按鍵,蜂鳴器等,同時也具有RS232,RS485,CAN,以太網接口,板載ESP8266無線WiFi等。

045eb7fa-5b59-11ee-939d-92fbcf53809c.jpg

0474e57a-5b59-11ee-939d-92fbcf53809c.png

3.2 傳感器模塊

①溫濕度傳感器DHT11是一款有已校準數字信號輸出的溫濕度傳感器。精度濕度+-5%RH, 溫度+-2℃,量程濕度20-90%RH, 溫度0~50℃。

更多DHT11信息請參考:https://baike.sogou.com/v73984313.htm?fromTitle=DHT11

下圖為DHT11的引腳說明圖,DATA引腳為信號輸入輸出。 049a3dde-5b59-11ee-939d-92fbcf53809c.png ? ?

② 光照強度傳感器GY-39

GY-39 是一款低成本,氣壓,溫濕度,光強度傳感器模塊。工作電壓 3-5v,功耗小,安裝方便。

工作原理是,MCU 收集各種傳感器數據,統一處理,直接輸出計算后的結果。此模塊,有兩種方式讀取數據,即串口 UART(TTL 電平)或者 IIC(2 線)。串口的波特率有 9600bps 與 115200bps,可配置,有連續,詢問輸出兩種方式,可掉電保存設置。可適應不同的工作環境,與單片機及電腦連接。

模塊另外可以設置單獨傳感器芯片工作模式,作為簡單傳感器模塊,MCU 不參與數據處理工作。

傳感器技術參數

04b84c8e-5b59-11ee-939d-92fbcf53809c.jpg

GY39-MCU-IIC協議:

04c9ec46-5b59-11ee-939d-92fbcf53809c.png

傳感器接線示意圖:

04ea6052-5b59-11ee-939d-92fbcf53809c.jpg

3.3OLED顯示模塊

OLED,即有機發光二極管(Organic Light-Emitting Diode),又稱為有機電激光顯示(Organic Electroluminesence Display, OELD)。OLED 由于同時具備自發光,不需背光源、對比度高、厚度薄、視角廣、反應速度快的特點。

目前市面上常用的0.96寸OLED屏幕通訊方式主要有SPI和I2C兩種!SPI為4線制較多,而I2C為2線制。2種通訊協議較為淺顯的區別:總所周知,SPI的通訊速度明顯快于I2C的通訊速度,所以通常使用SPI通訊協議的OLED屏幕可以實現更高的幀數顯示,畫面更為流暢絲滑。本次實驗所采用的0.96寸OLED屏幕為I2C通訊方式,故在此稍微給讀者介紹一下I2C通訊原理。IIC(Inter-Integrated Circuit)總線是一種由 PHILIPS 公司開發的兩線式串行總線,用于連接微控制器及其外圍設備。它是由數據線 SDA 和時鐘 SCL 構成的串行總線,可發送和接收數據。在 CPU 與被控 IC 之間、IC 與 IC 之間進行雙向傳送,高速 IIC 總線一般可達 400kbps 以上。I2C 總線在傳送數據過程中共有三種類型信號, 它們分別是:開始信號、結束信號和應答信號。

開始信號:SCL 為高電平時,SDA 由高電平向低電平跳變,開始傳送數據。

結束信號:SCL 為高電平時,SDA 由低電平向高電平跳變,結束傳送數據。

應答信號:接收數據的 IC 在接收到 8bit 數據后,向發送數據的 IC 發出特定的低電平脈沖,表示已收到數據。CPU 向受控單元發出一個信號后,等待受控單元發出一個應答信號,CPU 接收到應答信號后,根據實際情況作出是否繼續傳遞信號的判斷。若未收到應答信號,由判斷為受控單元出現故障。

這些信號中,起始信號是必需的,結束信號和應答信號,都可以不要。

04fe69bc-5b59-11ee-939d-92fbcf53809c.jpg ? ? ?

4項目配置

瑞薩RA系列的MCU,提供了圖形化配置工具,和STM32CubeMX類似,這大大的方便了開發者配置。同時,瑞薩的Flexible Software Package 旨在以較低的內存占用量提供快速高效的驅動程序和協議棧。FSP 集成了中間件協議棧、獨立于 RTOS 的硬件抽象層(HAL)驅動程序, 以及最基礎的板級支持包(BSP)驅動程序。在本次的設計中,主要是對于傳感器模塊,顯示模塊進行相關的配置,下面是配置過程。

4.1 OLED顯示模塊

選擇了使用EBF模塊接口上的I2C接口,因為改接口的布線順序和OLED的I2C接口一致。可以直接將OLED插上去,減少了接線。該接口使用的是SCI6的I2C功能。

Pin下配置如下:選擇SCI6,復用I2C模式。 05132bfe-5b59-11ee-939d-92fbcf53809c.png0523c0fe-5b59-11ee-939d-92fbcf53809c.png053c7554-5b59-11ee-939d-92fbcf53809c.png

4.2 傳感器模塊

溫濕度傳感器DHT11,任意配置一個GPIO端口就可以了,不需要其他的配置,只要注意時序問題即可,重點在GY39傳感器的配置。Pin下配置如下:選擇SCI2,復用I2C模式。

0550d3b4-5b59-11ee-939d-92fbcf53809c.png055eca78-5b59-11ee-939d-92fbcf53809c.png05797670-5b59-11ee-939d-92fbcf53809c.png

4.3 主函數代碼

主函數的代碼主要是傳感器的基本配置,OLED模塊的配置,調試串口的配置與上位機通信的格式。

1//--------------------------------------------------------------------------------------------------
2//函數頭文件|0|1|2|3|4|5|6|7|8|9
3//--------------------------------------------------------------------------------------------------
4#include"hal_data.h"
5#include"oled.h"
6#include"bmp.h"
7#include"bsp_debug_uart.h"
8#include"bsp_led.h"
9#include"bsp_dht11.h"
10#include"bsp_gpt_timing.h"
11
12#defineSUCCESS1
13
14voidHardware_init(void)undefined
15FSP_CPP_HEADER
16voidR_BSP_WarmStart(bsp_warm_start_event_tevent)undefined
17undefined
18
19/*Callbackfunction*/
20i2c_master_event_tundefined
21voidsci6_i2c_master_callback(i2c_master_callback_args_t*p_args)
22undefined
23undefined
24undefinedifundefinedNULLundefined
25undefined
26undefined/*capturecallbackeventforvalidatingthei2ctransferevent*/
27undefined
28undefined
29
30undefined
31
32voidsci2_i2c_master_callback(i2c_master_callback_args_t*p_args)
33undefined
34undefined
35undefinedifundefinedNULLundefined
36undefined
37undefined/*capturecallbackeventforvalidatingthei2ctransferevent*/
38undefined
39undefined
40
41undefined
42
43
44fsp_err_tundefined
45uint32_tundefined1000undefined
46
47undefined
48uint8_tundefined
49externundefineduint8_tundefined
50externundefineduint32_tundefined
51typedefundefinedstruct
52{
53undefineduint32_tundefined
54undefineduint16_tundefined
55undefineduint16_tundefined
56undefineduint16_tundefined
57undefined
58undefined
59uint32_tundefined
60floatundefined
61
62//==================================================================================================
63//函數說明:硬件初始化
64//函數備注:Hardware_init
65//--------------------------------------------------------------------------------------------------
66//|-|-|0|1|2|3|4|5|6|7|8|9
67//==================================================================================================
68voidHardware_init(void)
69undefined
70undefined//SCI4UART調試串口初始化
71undefined
72undefinedprintfundefined"Debug-UART4-InitOK "undefined
73undefined
74undefinedprintfundefined"LED_InitOK "undefined
75undefinedprintfundefined"IIC-ConfigStart "undefined
76undefined
77undefinedprintfundefined"DHT11_InitOK "undefined
78undefined/*InitializetheI2Cmodule*/
79undefined
80undefined/*Handleanyerrors.Thisfunctionshouldbedefinedbytheuser.*/
81undefined
82undefinedprintfundefined"IIC-ConfigOK "undefined
83undefined//初始化OLED
84undefined
85undefinedprintfundefined"oled-InitOK "undefined
86
87undefined
88
89
90voidread_bme(void)
91undefined
92undefineduint16_tundefined2undefined0undefined
93undefineduint8_tundefined10undefined0x00undefined//接收讀取后的數據
94undefineduint8_tundefined0x04undefined//寫數據
95undefined
96undefined1undefinedtrueundefined
97undefined
98undefined3undefined
99undefined10undefinedfalseundefined
100undefined3undefined
101undefined
102undefined
103
104undefined0undefined8undefined1undefined
105undefined0undefined2undefined8undefined3undefined
106undefined1undefined4undefined8undefined5undefined
107
108undefineduint32_tundefined0undefined16undefined1undefined
109undefined6undefined8undefined7undefined
110undefined8undefined8undefined9undefined
111undefined
112voidread_lux(void)
113undefined
114undefineduint16_tundefined2undefined0undefined
115undefineduint8_tundefined4undefined0undefined
116undefineduint8_tundefined0x00undefined//寫數據
117undefined
118undefined1undefinedtrueundefined
119undefined
120undefined3undefined
121undefined4undefinedfalseundefined
122undefined3undefined
123undefined
124undefined
125undefined0undefined0undefined8undefined1undefined
126undefined1undefined2undefined8undefined3undefined
127undefineduint32_tundefined0undefined16undefined1undefined
128
129undefined
130
131//==================================================================================================
132//函數說明:主函數入口
133//函數備注:hal_entry
134//--------------------------------------------------------------------------------------------------
135//|-|-|0|1|2|3|4|5|6|7|8|9
136//==================================================================================================
137
138/*******************************************************************************************************************//**
139*main()isgeneratedbytheRAConfigurationeditorandisusedtogeneratethreadsifanRTOSisused.Thisfunction
140*iscalledbymain()whennoRTOSisused.
141**********************************************************************************************************************/
142voidhal_entry(void)
143undefined
144undefined/*TODO:addyourowncodehere*/
145
146undefined
147undefinedprintfundefined"RA6M5-Board-InitOK "undefined
148
149undefined0undefined0undefined0undefined//瑞
150undefined16undefined0undefined1undefined//薩
151undefined32undefined0undefined5undefined//電
152undefined48undefined0undefined6undefined//子
153undefined60undefined0undefined"Renesas"undefined16undefined
154undefined0undefined2undefined2023undefined4undefined16undefined//顯示ASCII字符的碼值
155undefined32undefined2undefined2undefined//中文字->年
156undefined48undefined2undefined8undefined2undefined16undefined//顯示ASCII字符的碼值
157undefined64undefined2undefined3undefined//中文字->月
158undefined80undefined2undefined5undefined2undefined16undefined//顯示ASCII字符的碼值
159undefined96undefined2undefined4undefined//中文字->日
160
161undefined0undefined4undefined7undefined//中文字->溫
162undefined16undefined4undefined9undefined//中文字->度
163
164undefined64undefined4undefined8undefined//中文字->濕
165undefined80undefined4undefined9undefined//中文字->度
166
167undefined0undefined6undefined"Light:"undefined16undefined
168undefined96undefined6undefined"Lux"undefined16undefined
169undefined
170undefined//DHT11端口配置
171
172
173undefinedwhileundefined1undefined
174undefined
175
176undefinedifundefined1undefined
177undefined
178undefined//printf("time1s_flag...... ");
179undefinedprintfundefined"T%dPH%dI"undefined
180undefinedprintfundefined" "undefined
181
182undefined
183
184undefined32undefined4undefined2undefined16undefined
185undefined96undefined4undefined2undefined16undefined
186undefined
187undefined//光照傳感器
188undefined100undefined
189undefined//printf("LightLux:%.2flux ",(float)LightLux);
190undefined48undefined6undefined5undefined16undefined
191undefined
192
193
194
195#ifBSP_TZ_SECURE_BUILD
196undefined/*Enternon-securecode*/
197undefined
198#endif
199undefined
200
201/*******************************************************************************************************************//**
202*Thisfunctioniscalledatvariouspointsduringthestartupprocess.Thisimplementationusestheeventthatis
203*calledrightbeforemain()tosetupthepins.
204*
205*@param[in]eventWhereatinthestartupprocessthecodeiscurrentlyat
206**********************************************************************************************************************/
207voidR_BSP_WarmStart(bsp_warm_start_event_tevent)
208undefined
209undefinedifundefined
210undefined
211#ifBSP_FEATURE_FLASH_LP_VERSION!=0
212
213undefined/*Enablereadingfromdataflash.*/
214undefined1Uundefined
215
216undefined/*WouldnormallyhavetowaittDSTOP(6us)fordataflashrecovery.Placingtheenablehere,beforeclockand
217*Cruntimeinitialization,shouldnegatetheneedforadelaysincetheinitializationwilltypicallytakemorethan6us.*/
218#endif
219undefined
220
221undefinedifundefined
222undefined
223undefined/*Cruntimeenvironmentandsystemclocksaresetup.*/
224
225undefined/*Configurepins.*/
226undefined
227undefined
228undefined
229
230#ifBSP_TZ_SECURE_BUILD
231
232BSP_CMSE_NONSECURE_ENTRYvoidtemplate_nonsecure_callable()undefined
233
234/*TrustzoneSecureProjectsrequireatleastonenonsecurecallablefunctioninordertobuild(Removethisifitisnotrequiredtobuild).*/
235BSP_CMSE_NONSECURE_ENTRYvoidtemplate_nonsecure_callable()
236undefined
237
238undefined
239#endif

5測試效果

0599ccf4-5b59-11ee-939d-92fbcf53809c.png

05a8a742-5b59-11ee-939d-92fbcf53809c.png? ? ??

6總結

首先非常感謝野火舉辦的瑞薩RA MCU創意氛圍賽,能讓我入圍獲得這次參賽的機會。本次創意氛圍賽學習到了很多東西,對RA6M5單片機的內核以及控制有了了解,野火官方提供的手冊例程使用起來也很方便,能夠快速上手,便于開發使用。本項目初步設計思路是打算以瑞薩單片機作為控制和數據處理的單元,使用傳感器去監測周圍的環境參數,在屏幕上完成傳感器數據和相關信息的顯示。同時,使用無線模組接入物聯網云平臺。嘗試利用上位機實現對于相關環境參數監測。但是由于時間原因以及個人能力有限制,只完成了部分設計。雖然現在完成的功能較為簡單,但是希望后面有時間繼續完善系統設計,添加實時操作系統,接入云平臺,利用微信小程序,app等相關技術完善作品,最后,再次感謝野火和瑞薩舉辦RA-MCU創意氛圍賽,提供了學習機會。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6065

    文章

    44946

    瀏覽量

    648282
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17893

    瀏覽量

    361913
  • 瑞薩
    +關注

    關注

    36

    文章

    22375

    瀏覽量

    87847
  • 環境監測系統

    關注

    0

    文章

    42

    瀏覽量

    10118
  • RA6M5
    +關注

    關注

    0

    文章

    7

    瀏覽量

    465

原文標題:【瑞薩RA MCU創意氛圍賽作品賞析】項目7——基于瑞薩RA6M5的環境監測系統

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于RA6M5 MCU的室內環境監測系統設計

    空氣污染越來越被大家重視,人們80%的時間都是在室內度過的,室內的空氣環境質量對人們的身體健康更是息息相關。本項目旨在開發一款室內環境監測系統,用于監測室內溫度、濕度、PM2.5、甲醛
    的頭像 發表于 01-15 12:18 ?2169次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA6M5</b> <b class='flag-5'>MCU</b>的室內<b class='flag-5'>環境監測</b><b class='flag-5'>系統</b>設計

    基于RA6M5/RA2L1和百度語音云的語音識別控制與無線通信控制系統

    整個系統由兩個野火啟明開發板組成,大的RA6M5開發板接入W5500網口模塊.
    的頭像 發表于 02-26 13:54 ?2157次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA6M5</b>/<b class='flag-5'>RA</b>2L1和百度語音云的語音識別控制與無線通信控制<b class='flag-5'>系統</b>

    基于RA6M5的智能煙霧感應吸除系統設計

    今日分享野火創意氛圍賽選手的作品——基于RA6M5的智能煙霧感應吸除系統
    的頭像 發表于 11-06 12:21 ?1632次閱讀
    基于<b class='flag-5'>RA6M5</b>的智能煙霧感應吸除<b class='flag-5'>系統</b>設計

    RA6M5中的QSPI可以用作普通SPI使用嗎?

    各位大佬,請教一個問題,RA6M5中的QSPI可以用作普通SPI使用嗎?有沒有相關教程
    發表于 12-18 08:53

    基于RT-Thread+RA6M4的家庭環境監測系統設計資料介紹

    1、基于RT-Thread+RA6M4的家庭環境監測系統設計本項目是基于芯片RA6M4,和R
    發表于 08-16 14:57

    【野火啟明6M5開發板體驗】1 RA6M5開發環境搭建

    開發環境:IDE:MKD 5.30開發板:野火啟明6M5開發板MCU:R7FA6M5BH3CFC
    發表于 12-21 22:49

    RAMCU創意氛圍賽】基于RA6M5的電子墨水屏微信信息站

    FreeRTOS --一款開源的MCU上運行的實時多任務操作系統E-ink Paper—微雪電子紙驅動開源代碼,用于驅動電子墨水屏 三、項目所涉及的材料 RA6M5 野火
    發表于 08-28 04:06

    電子發布了一款RA6M5群微控制器MCU的相關特性詳解

    全新MCU產品群為IoT應用帶來多種通信功能選項、靈活的內存架構和強大的安全性,成為現場固件更新應用的理想之選電子集團今日宣布,新增20款RA6M5群微控制器(
    的頭像 發表于 04-06 16:24 ?3002次閱讀

    RA6M5數據手冊(英)

    RA6M5數據手冊(英)
    發表于 11-07 19:49 ?1次下載
    <b class='flag-5'>RA6M5</b>數據手冊(英)

    RA6M5硬件用戶手冊(英)

    RA6M5硬件用戶手冊(英)
    發表于 11-07 19:49 ?2次下載
    <b class='flag-5'>RA6M5</b>硬件用戶手冊(英)

    RA6M5 組 用戶手冊: 硬件

    RA6M5 組 用戶手冊: 硬件
    發表于 01-09 19:02 ?1次下載
    <b class='flag-5'>RA6M5</b> 組 用戶手冊: 硬件

    RA6系列芯片外擴SRAM方法

    應用。RA6其它系列擴展外部SRAM應用操作方法類似。 一、RA6M5外部總線外設描述 電子RA6M5產品群采用支持TrustZone
    的頭像 發表于 02-11 06:00 ?2226次閱讀

    RA6M5 組 數據表

    RA6M5 組 數據表
    發表于 06-30 18:41 ?0次下載
    <b class='flag-5'>RA6M5</b> 組 數據表

    RA6M5 組 用戶手冊: 硬件

    RA6M5 組 用戶手冊: 硬件
    發表于 06-30 18:42 ?13次下載
    <b class='flag-5'>RA6M5</b> 組 用戶手冊: 硬件

    基于RA6M5 MCU組的云套件數據手冊

    電子發燒友網站提供《基于RA6M5 MCU組的云套件數據手冊.rar》資料免費下載
    發表于 05-17 17:06 ?0次下載
    基于<b class='flag-5'>RA6M5</b> <b class='flag-5'>MCU</b>組的云套件數據手冊
    主站蜘蛛池模板: 亚洲淫视频 | 午夜色视频 | 久久视频精品线视频在线网站 | 在线观看国产一级强片 | 视频一区二区中文字幕 | 四虎在线观看一区二区 | 久久99精品久久久久久园产越南 | 1000rt人体1000欧美 | 亚洲三级视频在线观看 | 69女poren16| 美女张开大腿让男人桶 | 免费人成年激情视频在线观看 | 俄罗斯aaaaa一级毛片 | 天天干夜夜看 | 午夜免费免费啪视频观看 | 免费国产午夜在线观看 | 午夜在线视频国产 | 九九视频热 | 日本高清视频wwww色 | 丁香五香天堂网卡 | 亚洲色图第一页 | 超大乳抖乳露双乳视频 | 欧美涩区| 欧美午夜在线视频 | 未满十八18周岁禁止免费国产 | 午夜韩国理论片在线播放 | 免费观看成年欧美1314www色 | 亚洲另类电击调教在线观看 | 国产精品久久久久国产精品三级 | 成人影院免费观看 | 手机在线观看毛片 | 在线免费看片a | h视频在线免费 | 国产一区二区在线视频播放 | 午夜在线观看网站 | 国产主播在线一区 | 性做久久久久 | www.xxx欧美| 快播久久| 1024手机在线看 | 色视频在线观看网站 |