加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

基于STM32F746的汽車環(huán)境狀態(tài)檢測(cè)控制器

05/14 09:34
2190
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
電路板圖(3)
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

一、項(xiàng)目名稱:

基于STM32F746-DISO的車內(nèi)環(huán)境狀態(tài)控制顯示儀表盤。

二、項(xiàng)目概述:

本項(xiàng)目主要是基于STM32F746高性能MCU的STM32F746-DISC開發(fā)板,實(shí)現(xiàn)車內(nèi)溫濕度監(jiān)測(cè)。以及控制車內(nèi)燈光。STM32F746-DISC板載4.3寸電容觸摸LCD,使用LCD顯示GUI畫面是基于ST的GUI設(shè)計(jì)器TouchGFX設(shè)計(jì),并且使用FreeRTOS嵌入式操作系統(tǒng)內(nèi)核進(jìn)行任務(wù)調(diào)度。做這個(gè)項(xiàng)目主要是為了方便車內(nèi)乘客了解車內(nèi)環(huán)境狀況,以及方便乘客對(duì)車內(nèi)一些無關(guān)駕駛方面的控制。目前車內(nèi)屏幕控制和顯示都在司機(jī)前面板,對(duì)于后排乘客操作任何東西都需要經(jīng)過司機(jī)來處理,非常不方便。這個(gè)項(xiàng)目設(shè)備可以放在后排,方便后面乘客,既減輕了司機(jī)壓力又方便了乘客坐車體驗(yàn)。

通過本設(shè)備可以查看車內(nèi)溫濕度,就可以調(diào)整車內(nèi)空調(diào)溫度高低。還可以控制車上照明燈,方便晚上坐車時(shí),給后面乘客車頂照明。還有座椅下方照明。

三、整體設(shè)計(jì)方案

3.1、硬件方案

整體使用STM32F746-diso開發(fā)板,利用板載觸摸lcd作為顯示和界面操控。外擴(kuò)有溫濕度傳感器,IO輸出和彩燈控制等等。

整體框圖如下:

下面是設(shè)計(jì)的擴(kuò)展板:利用板上ARDUINO接口,直接插在板子上。使用I2C接口的溫濕度傳感器SHTC3,以及燈光控制部分。

如下圖所示:

實(shí)物如下:

電路圖如下:

整體硬件如下:

3.2、軟件驅(qū)動(dòng)

下面是溫濕度傳感器驅(qū)動(dòng)程序部分。

int SHTC3_CalcTemperature(uint16_t rawValue)
{
// calculate temperature
// T = -45 + 175 * rawValue / 2^16
return (((175*1 * rawValue)>>16) - 45*1); //放大100倍
}

int SHTC3_CalcHumidity(uint16_t rawValue)
{
// calculate relative humidity
// RH = rawValue / 2^16 * 100
return ((100 * 1 * rawValue)>>16); //放大100倍
}

static uint8_t SHTC3_CheckCRC(uint8_t *buff, uint32_t nbyte)
{
uint32_t i; // byte counter
uint8_t bit; // bit mask
uint8_t crc = 0xFF; // calculated checksum

// calculates 8-Bit checksum with given polynomial
for(i = 0; i < nbyte; i++)
{
crc ^= (buff[i]);
for(bit = 8; bit > 0; --bit)
{
if(crc & 0x80) {
crc = (crc << 1) ^ SHTC3_CRC_POLYNOMIAL;
} else {
crc = (crc << 1);
}
}
}
return crc;
}
uint16_t shtc3_id;
uint16_t SHTC3_Init(void)
{
uint8_t buff[4]={0};
shtc3_id = 0;
shtc3_gpio_init();

HAL_Delay(1);
SHTC3_ReadData(SHTC3_REG_ID,buff,3);
if(buff[2] != SHTC3_CheckCRC(buff,2))
{
return -1;
}
HAL_Delay(10);
SHTC3_WriteCmd(SHTC3_REG_WAKEUP);
shtc3_id = (buff[0]<<8)|buff[1];
return shtc3_id;
}

uint8_t SHTC3_GetMode1_TempRH(int *temp, int *humi)
{
uint8_t buff[8]={0};

SHTC3_ReadData(SHTC3_REG_CELPM_TEMP_RH,buff,6);
if((buff[2] != SHTC3_CheckCRC(buff,2))||(buff[5] != SHTC3_CheckCRC(&buff[3],2)))
{
return 1;
}
*temp = SHTC3_CalcTemperature((buff[0]<<8)|buff[1]);
*humi = SHTC3_CalcHumidity((buff[3]<<8)|buff[4]);
return 0;
}

復(fù)制代碼

界面實(shí)時(shí)時(shí)間顯示驅(qū)動(dòng),RTC使用ST的HAL庫(kù)API獲取。

HAL_RTC_GetTime(&hrtc,&GetTime,RTC_FORMAT_BIN);
HAL_RTC_GetDate(&hrtc,&GetDate,RTC_FORMAT_BIN);

Hours = GetTime.Hours;
Minutes = GetTime.Minutes;
Seconds = GetTime.Seconds;

Years = GetDate.Year;
Months = GetDate.Month;
Days = GetDate.Date;
Weeks = GetDate.WeekDay;
xprintf("%d-%d-%d %d rn",Years,Months,Days,Weeks);
xprintf("%d:%d:%d rn",Hours,Minutes,Seconds);

復(fù)制代碼

使用RTC有點(diǎn)要注意的地方就是HAL_RTC_GetTime()和HAL_RTC_GetDate()都要調(diào)用,而且要先調(diào)用HAL_RTC_GetTime(),再調(diào)用HAL_RTC_GetDate()。

開始沒注意,導(dǎo)致RTC時(shí)鐘不動(dòng)。下面是我找到原因

所有GUI使用ST的TouchGFX 4.23軟件設(shè)計(jì)。

四、作品實(shí)物圖及演示視頻展示

演示視頻

https://www.bilibili.com/video/BV1f94y1K7vv/

五、項(xiàng)目資料及程序

  • SHTC3.PDF
  • project-CarGui.zip
  • F746-ARDUINO-SCH.pdf

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
STM32F767ZIT6 1 STMicroelectronics High-performance and DSP with FPU, Arm Cortex-M7 MCU with 2 Mbytes of Flash memory, 216 MHz CPU, Art Accelerator, L1 cache, SDRAM, TFT, JPEG codec, DFSDM

ECAD模型

下載ECAD模型
$25.18 查看
ATXMEGA128D4-MH 1 Atmel Corporation RISC Microcontroller, 16-Bit, FLASH, AVR RISC CPU, 32MHz, CMOS, PQCC44, 7 X 7 MM, 1 MM HEIGHT, 0.50 MM PITCH, GREEN, PLASTIC, MO-220VKKD-3, VQFN-44
$5.3 查看
FS32K146HAT0MLLT 1 NXP Semiconductors RISC Microcontroller

ECAD模型

下載ECAD模型
$11.53 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜