国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【開(kāi)源串口屏方案】五步教你設(shè)計(jì)串口屏,5分鐘快速上手

這篇具有很好參考價(jià)值的文章主要介紹了【開(kāi)源串口屏方案】五步教你設(shè)計(jì)串口屏,5分鐘快速上手。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

  • 前言
  • 一、什么是串口屏?
  • 二、串口屏原理與組成
  • 三、硬件制作
  • 四、實(shí)現(xiàn)方法
    • 1.硬件設(shè)備
    • 2.環(huán)境依賴
    • 3.界面設(shè)計(jì)
    • 4.編寫串口通信代碼和示例?

前言

本文詳細(xì)介紹串口屏原理、設(shè)計(jì)方法、實(shí)現(xiàn)步驟,給出完整代碼實(shí)例,30分鐘即可完成串口屏的設(shè)計(jì)使用。適合初學(xué)者快速上手。


一、什么串口屏?

串口屏是一種能夠通過(guò)串行接口接收指令,并進(jìn)行顯示控制的液晶顯示屏。它的主要優(yōu)點(diǎn)是操作簡(jiǎn)單,接口統(tǒng)一,用GUI軟件進(jìn)行界面的快速編寫與設(shè)計(jì)。

diy 串口屏,嵌入式硬件,人機(jī)交互,stm32,開(kāi)源,單片機(jī),硬件工程,開(kāi)源軟件

二、串口屏原理與組成

串口屏的組成部分:

1.顯示屏:這是串口屏的核心部分,可以選擇液晶顯示屏或其他類型的顯示屏.
2.微控制器:這是控制顯示屏的關(guān)鍵部分。它可以接收和發(fā)送數(shù)據(jù),控制顯示屏的顯示內(nèi)
容。
3.串口通信接口:?這是微控制器和顯示屏之間的通信接口。通常使用UART?(通用異步收
發(fā)器)?接口。
4.電源:為顯示屏和微控制器提供電源
5.嵌入式GUI軟件:?采用高通GT-HMI,可以作為上位機(jī)Designer和下位機(jī)Engine的開(kāi)源設(shè)計(jì)工具,幫助用戶設(shè)計(jì)和實(shí)現(xiàn)自己的界面。

三、硬件制作

在高通GT-HMI官網(wǎng)上獲取串口屏原理圖,可參考制作自己的串口屏硬件。

 

?四、實(shí)現(xiàn)方法

以GT-HMI顯示模塊為例,這是一個(gè)做好的串口屏板子,包含開(kāi)源的軟硬件。只需幾個(gè)步驟就可以實(shí)現(xiàn)串口屏的控制。您將需要以下準(zhǔn)備:(連接步驟部分可以增加簡(jiǎn)單的示意圖,輔助說(shuō)明)

1.?硬件設(shè)備:

GT-HMI顯示模塊、一根USB轉(zhuǎn)UART轉(zhuǎn)接線、一臺(tái)電腦,筆記本和臺(tái)式機(jī)均可。???首先將USB轉(zhuǎn)UART轉(zhuǎn)接線連接到我們的GT-HMI顯示模塊上,然后將USB轉(zhuǎn)UART轉(zhuǎn)接線與您的電腦連接。

2.?環(huán)境依賴:

軟件環(huán)境:KEIL5, 串口調(diào)試助手。硬件環(huán)境:USB轉(zhuǎn)UART轉(zhuǎn)接線,GTC-480272TFT43XP.

3.?界面設(shè)計(jì):

在高通GT-HMI?Designer設(shè)計(jì)界面,可以參考GT-HMI視頻教程及文檔資料。

4.?編寫串口通信代碼,示例如下:

1、串口uart3初始化:

  • void bsp_uart3_init(void)
  • {
  • ????UART_InitStructure UART_initStruct;
  • ????PORT_Init(UART3_RX_PORT, UART3_RX_PIN, UART3_RX_SEL, 1); //GPIOM.0配置為UART0輸入引腳
  • ????PORT_Init(UART3_TX_PORT, UART3_TX_PIN, UART3_TX_SEL, 0); //GPIOM.1配置為UART0輸出引腳
  • ????UART_initStruct.Baudrate = UART3_Baudrate; ?//波特率
  • ????UART_initStruct.DataBits = UART_DATA_8BIT; ?//8位數(shù)據(jù)位
  • ????UART_initStruct.Parity = UART_PARITY_NONE; ?//無(wú)校驗(yàn)位
  • ????UART_initStruct.StopBits = UART_STOP_1BIT; ?//1個(gè)停止位
  • ????UART_initStruct.RXThreshold = _UART3_RX_BUFFER_SIZE;//設(shè)置FIFO個(gè)數(shù)
  • UART_initStruct.RXThresholdIEn = 1;//使能接收中斷
  • UART_initStruct.TXThreshold = _UART3_Threshold_Size;//設(shè)置FIFO個(gè)數(shù)
  • UART_initStruct.TXThresholdIEn = 0; ????//失能發(fā)送中斷
  • UART_initStruct.TimeoutTime = 10; //10個(gè)字符時(shí)間內(nèi)未接收到新的數(shù)據(jù)則觸發(fā)超時(shí)中斷
  • UART_initStruct.TimeoutIEn = 1; ????????//使能超時(shí)中斷
  • ????UART_Init(UART3, &UART_initStruct);
  • ????UART3->TOCR &= ~(1 << UART_TOCR_MODE_Pos); ?
  • ????UART_Open(UART3);//開(kāi)啟uart3
  • }

2:串口數(shù)據(jù)通過(guò)中斷接收,接收數(shù)據(jù)的部分

void UART3_Handler(void)

{

????char count = _UART3_Threshold_Size;

????char i=0;

????uint32_t chr ;

????if(UART_INTStat(UART3, UART_IT_RX_THR))//接收中斷

????{

????????UART_INTClr(UART3, UART_IT_RX_THR);//清除接收中斷標(biāo)志位

????????while (count--)//FIFO個(gè)數(shù)接收數(shù)據(jù)

????????{

if(UART_ReadByte(UART3, &chr) == 0)//接收數(shù)據(jù)

????????????{

????????????????if(_uart3_count < _UART3_RX_BUFFER_SIZE)

????????????????{

????????????????????_uart3_rx_buf[_uart3_count] = chr;

????????????????????//接收到的數(shù)據(jù)存在這個(gè)全局變量數(shù)組內(nèi)

????????????????????UART_BUF[_uart3_count] = chr;

????????????????????_uart3_count++;//數(shù)組下標(biāo)自增

????????????????}

????????????}

????????}

}

接收數(shù)據(jù)并進(jìn)行相應(yīng)的數(shù)據(jù)顯示

/***********************

**數(shù)據(jù)包格式:頭(0xAA)+設(shè)備啟動(dòng)狀態(tài)+間隔時(shí)間+重復(fù)次數(shù)+工作溫度+等待速度+包長(zhǎng)度+校驗(yàn)和

**設(shè)備啟動(dòng)狀態(tài):0x0、0x1

**間隔時(shí)間:1~30

**重復(fù)次數(shù):1~10

**工作溫度:10~100

**等待速度:0~100

***********************/

void Refresh_New_Page(unsigned char *data)

{

unsigned char verify=0 ,i=0;

for ( i = 0; i < data[6]-1; i++)//計(jì)算接收到的數(shù)據(jù)校驗(yàn)和。

{

verify += data[i];

}

if(data[0] == 0xaa && verify == data[7])//判斷幀頭(0xAA)和校驗(yàn)和均是和接收數(shù)據(jù)符合。

{

if(data[1]==1)//設(shè)備啟動(dòng)

{

gt_obj_set_state(switch1, 1);

}else if(data[1]==0)

{

gt_obj_set_state(switch1, 0);//設(shè)備關(guān)閉

}

gt_input_number_set_value(inputNum1, data[2]);//設(shè)置間隔時(shí)間

gt_input_number_set_value(inputNum2,data[3]);//設(shè)置重復(fù)次數(shù)

gt_input_number_set_value(inputNum3,data[4]);//設(shè)置重復(fù)次數(shù)

gt_slider_set_pos(slider1, data[5]);

gt_disp_load_scr(screen_home);

}

}

3.?下載程序,運(yùn)行示例

int main(void)

{?

SystemInit();//mcu系統(tǒng)初始化

__enable_irq();//使能中斷

bsp_uart0_init();//uart0初始化

bsp_uart3_init();//uart3初始化

bsp_sfc_config(1);//存儲(chǔ)芯片讀取配置

bsp_lcd_rgb_init();//rgb接口屏顯配置

systick_init();//systick時(shí)鐘配置

TP_Init();//時(shí)鐘I2C初始化

TIMR_Init(TIMR4, TIMR_MODE_TIMER, CyclesPerUs, 1000, 1);//定時(shí)器初始化

TIMR_Start(TIMR4);//啟動(dòng)定時(shí)器

GT_Font_Init();//字庫(kù)初始化

gt_init();

gt_ui_init();

while (1) {

gt_task_handler();//gt-hmi engine 任務(wù)調(diào)度

swm_delay_ms(1);

// WDT_Feed(WDT);

if(uart_status)//uart3串口數(shù)據(jù)接收完標(biāo)記

{

uart_status=0;

Refresh_New_Page(UART_BUF); //處理串口數(shù)據(jù)將串口數(shù)據(jù)顯示到對(duì)應(yīng)的屏上面。

memset(UART_BUF,0,8);

}

#if _RUNNING_PRINT

if (_cnt >= 1000) {

_cnt = 0;

GT_LOGI(GT_LOG_TAG_TEST, "tick: %d s", gt_tick_get() / 1000);

}

#endif

}

}

diy 串口屏,嵌入式硬件,人機(jī)交互,stm32,開(kāi)源,單片機(jī),硬件工程,開(kāi)源軟件

4、程序下載到高通GTC-480272TFT43XP 顯示模塊效果:

串口屏初始界面:

diy 串口屏,嵌入式硬件,人機(jī)交互,stm32,開(kāi)源,單片機(jī),硬件工程,開(kāi)源軟件

串口助手發(fā)送如下圖命令:

diy 串口屏,嵌入式硬件,人機(jī)交互,stm32,開(kāi)源,單片機(jī),硬件工程,開(kāi)源軟件

發(fā)送命令之后顯示的界面:

diy 串口屏,嵌入式硬件,人機(jī)交互,stm32,開(kāi)源,單片機(jī),硬件工程,開(kāi)源軟件

?發(fā)送的數(shù)據(jù)為AA 01 02 01 38 37 08 25 (發(fā)送數(shù)據(jù)格式:頭(0xAA)+設(shè)備啟動(dòng)狀態(tài)+間隔時(shí)間+重復(fù)次數(shù)+工作溫度+等待速度+包長(zhǎng)度+校驗(yàn)和)其中第二個(gè)數(shù)據(jù)“01”代表設(shè)備啟動(dòng)狀態(tài),我們可以考到設(shè)備啟動(dòng)開(kāi)關(guān)被打開(kāi),第三個(gè)數(shù)據(jù)”02”代表間隔時(shí)間,我們可以看到間隔時(shí)間被設(shè)置成2min, 第四個(gè)數(shù)據(jù)工作溫度“38”是16進(jìn)制的,換算成10進(jìn)制就是56,我們可以看到工作溫度被改成56。

測(cè)試命令:AA 01 02 08 46 54 08 57

我們?cè)俅伟l(fā)送測(cè)試命令,可以看到其中重復(fù)次數(shù)和工作溫度都被改變了。

diy 串口屏,嵌入式硬件,人機(jī)交互,stm32,開(kāi)源,單片機(jī),硬件工程,開(kāi)源軟件

總結(jié)

您可以嘗試自己制作串口屏硬件,或者使用高通GT-HMI開(kāi)發(fā)板/顯示模塊。我們提供了相應(yīng)的軟硬件資料供您參考。您需要注意的是,制作硬件需要一定的電子技術(shù)知識(shí)。
如果您是初學(xué)者,我們建議您先從使用高通的開(kāi)發(fā)板開(kāi)始。利用高通GT-HMI開(kāi)發(fā)框架,您也可以快速實(shí)現(xiàn)串口屏的顯示控制。歡迎分享您的創(chuàng)作經(jīng)驗(yàn)!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-743823.html

到了這里,關(guān)于【開(kāi)源串口屏方案】五步教你設(shè)計(jì)串口屏,5分鐘快速上手的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 幾步教你安裝 Android x86

    幾步教你安裝 Android x86 Android x86 是一個(gè)開(kāi)源項(xiàng)目,旨在將 Android 操作系統(tǒng)移植到 x86 架構(gòu)的計(jì)算機(jī)上。通過(guò)安裝 Android x86,你可以在電腦上體驗(yàn) Android 的各種功能和應(yīng)用程序。本文將介紹如何安裝 Android x86,并提供相應(yīng)的源代碼。 第一步:準(zhǔn)備工作 首先,你需要下載 Androi

    2024年02月06日
    瀏覽(27)
  • 教你用五步讓千年的兵馬俑跳上現(xiàn)代的科目三?

    教你用五步讓千年的兵馬俑跳上現(xiàn)代的科目三?

    教你用五步讓千年的兵馬俑跳上現(xiàn)代的舞蹈科目三? 上面這個(gè)“科目三”的視頻,只用了一張我上月去西安拍的兵馬俑照片生成的。 使用通義千問(wèn),只要5步就能它舞動(dòng)起來(lái),跳上現(xiàn)在流行的“科目三”舞蹈。 第1步 打開(kāi)通義千問(wèn)App,我使用的是華為手機(jī),蘋果版的沒(méi)試;

    2024年01月16日
    瀏覽(15)
  • 四步教你徹底關(guān)閉Win10自動(dòng)更新

    四步教你徹底關(guān)閉Win10自動(dòng)更新

    目錄 一、禁用Windows Update服務(wù) 二、在組策略里關(guān)閉Win10自動(dòng)更新相關(guān)服務(wù) 三、禁用任務(wù)計(jì)劃里邊的Win10自動(dòng)更新 ?編輯四、在注冊(cè)表中關(guān)閉Win10自動(dòng)更新 一、禁用Windows Update服務(wù) ? ? win+R調(diào)出運(yùn)行 ? ? services.msc ? ? ????Windows Update ? ? ?停止 ? ? 禁用 ? ?? ?恢復(fù) ? ? 重新

    2024年02月13日
    瀏覽(21)
  • 6步教你輕松畫出流程圖

    6步教你輕松畫出流程圖

    推薦一款好用的思維導(dǎo)圖軟件:ProcessOn思維導(dǎo)圖,只需簡(jiǎn)單6步即可完成流程圖。 ProcessOn是一款強(qiáng)大的思維導(dǎo)圖軟件,它可以幫助用戶輕松地繪制出各種類型的流程圖。下面是使用ProcessOn繪制流程圖的六個(gè)簡(jiǎn)單步驟: 第一步: 打開(kāi)ProcessOn軟件并創(chuàng)建一個(gè)新的畫布 。在Process

    2024年02月05日
    瀏覽(17)
  • 三步教你輕松安裝配置 Linux Anaconda 環(huán)境

    三步教你輕松安裝配置 Linux Anaconda 環(huán)境

    1.進(jìn)入Anaconda官網(wǎng)獲取下載鏈接: 2.遠(yuǎn)程拉取安裝腳本 1.運(yùn)行腳本 之后按照提示回答相應(yīng)問(wèn)題即可(有選項(xiàng)的都是填 yes,閱讀協(xié)議使用空格跳過(guò),有回車的按回車) 2.配置生效 配置文件 .condarc 在用戶的家目錄(windows: C:\\\\users\\\\username\\\\ ,linux: /home/username/ )。但對(duì)于 .cond

    2024年02月09日
    瀏覽(29)
  • ChatGPT“保姆級(jí)教程”——手把手教你5分鐘快速AI智能文字轉(zhuǎn)爆款視頻(剪映+百度AIGC平臺(tái))

    ChatGPT“保姆級(jí)教程”——手把手教你5分鐘快速AI智能文字轉(zhuǎn)爆款視頻(剪映+百度AIGC平臺(tái))

    在這個(gè)數(shù)字時(shí)代,視頻已經(jīng)成為了最流行的內(nèi)容形式之一。而如何自動(dòng)將文字轉(zhuǎn)化為引人注目的視頻內(nèi)容呢?本教程將為你提供兩個(gè)不同的方法:一個(gè)是利用ChatGPT和剪映,另一個(gè)是利用ChatGPT和百度AIGC平臺(tái)。無(wú)論你是一名內(nèi)容創(chuàng)作者、社交媒體經(jīng)營(yíng)者還是企業(yè)營(yíng)銷人員,都會(huì)

    2024年02月09日
    瀏覽(102)
  • 20分鐘了解物聯(lián)網(wǎng)開(kāi)源數(shù)據(jù)庫(kù)部署解決方案

    20分鐘了解物聯(lián)網(wǎng)開(kāi)源數(shù)據(jù)庫(kù)部署解決方案

    本文針對(duì)物聯(lián)網(wǎng)數(shù)據(jù)存儲(chǔ)提供解決方案的思路,項(xiàng)目特點(diǎn):結(jié)構(gòu)化數(shù)據(jù)、傳感器節(jié)點(diǎn)多(100)、傳感器類型多(30)、采樣頻率高(1HZ),在此背景下,一般的關(guān)系型數(shù)據(jù)庫(kù)已經(jīng)不能夠支撐數(shù)據(jù)存儲(chǔ),基于免費(fèi)開(kāi)源的軟件完成數(shù)據(jù)存儲(chǔ)工作,提高數(shù)據(jù)的讀寫能力。 1)多源異構(gòu)

    2023年04月11日
    瀏覽(25)
  • Android一步一步教你實(shí)現(xiàn)Emoji表情鍵盤

    Android一步一步教你實(shí)現(xiàn)Emoji表情鍵盤

    背景: 說(shuō)到聊天,就離不開(kāi)文字、表情和圖片,表情和圖片增加了聊天的趣味性,讓原本無(wú)聊的文字瞬間用表情動(dòng)了起來(lái),今天給大家?guī)?lái)的是表情鍵盤,教你一步一步實(shí)現(xiàn),先來(lái)看下效果圖: 效果圖 功能: 1、如何控制表情鍵盤與輸入法的切換 2、如何解析表情 3、如何處

    2024年02月16日
    瀏覽(18)
  • 6步教你封殺惡意登錄服務(wù)器的ip

    6步教你封殺惡意登錄服務(wù)器的ip

    Jun 5 10:25:56 localhost sshd[10165]: pam_unix(sshd:session): session opened for user root by (uid= Jun 5 10:25:59 localhost sshd[10184]: Accepted password for root from 192.168.10.1 port 58528 ssh2 Jun 5 10:25:59 localhost sshd[10184]: pam_unix(sshd:session): session opened for user root by (uid= Jun 5 12:51:19 localhost sshd[10394]: Accepted password for r

    2024年04月28日
    瀏覽(21)
  • Python 一步一步教你用pyglet制作漢諾塔游戲

    Python 一步一步教你用pyglet制作漢諾塔游戲

    目錄 漢諾塔游戲 1. 抓取顏色 2. 繪制圓盤 3. 九層漢塔 4. 繪制塔架 5. 疊加圓盤 6. 游戲框架 ? 漢諾塔(Tower of Hanoi),是一個(gè)源于印度古老傳說(shuō)的益智玩具。這個(gè)傳說(shuō)講述了大梵天創(chuàng)造世界的時(shí)候,他做了三根金剛石柱子,并在其中一根柱子上從下往上按照大小順序摞著64片黃

    2024年03月12日
    瀏覽(25)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包