當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]環(huán)境:主機:WIN10開發(fā)環(huán)境:MDK5.13MCU:STM32F103說明:gui庫的基礎(chǔ)是一個2D圖形庫,為控件提供繪圖功能此圖形庫還包括單色BMP圖像顯示函數(shù),為圖片控件提供支持源代碼:接口函數(shù):gui_interface.h/***Copyright(c),20

環(huán)境:

主機:WIN10

開發(fā)環(huán)境:MDK5.13

MCU:STM32F103


說明:

gui庫的基礎(chǔ)是一個2D圖形庫,為控件提供繪圖功能

此圖形庫還包括單色BMP圖像顯示函數(shù),為圖片控件提供支持


源代碼:

接口函數(shù):

gui_interface.h


/**

*Copyright(c),2015-2025

*@filegui_interface.h

*@briefgui接口頭文件

*@authorjdh

*@date2015/9/6

*@update2015/9/7

*/

#ifndef_GUI_INTERFACE_H_

#define_GUI_INTERFACE_H_

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

*頭文件

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

#include"inf_lcd.h"

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

*宏定義

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

/**

*@brief屏幕尺寸

*/

#defineLCD_WIDTH128

#defineLCD_HEIGHT64

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

*函數(shù)

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

/**

*@brief畫點

*@paramx:x坐標(biāo)

*@paramy:y坐標(biāo)

*@paramshow:0:不顯示,1:顯示

*/

voidgui_interface_draw_pixel(uint8_tx,uint8_ty,uint8_tshow);

#endif



gui_interface.c


/**

*Copyright(c),2015-2025

*@filegui_interface.c

*@briefgui接口主文件

*@authorjdh

*@date2015/9/6

*/

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

*頭文件

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

#include"gui_interface.h"

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

*函數(shù)

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

/**

*@brief畫點

*@paramx:x坐標(biāo)

*@paramy:y坐標(biāo)

*@paramshow:0:不顯示,1:顯示

*/

voidgui_interface_draw_pixel(uint8_tx,uint8_ty,uint8_tshow)

{

if(x>=LCD_WIDTH||y>=LCD_HEIGHT)

{

return;

}

inf_lcd_draw_pixel(x,y,show);

}



2D圖形庫:

gui_2d_lib.h


/**

*Copyright(c),2015-2025

*@filegui_2d_lib.c

*@brief2d圖形庫主文件

*@authorjdh

*@date2015/9/6

*@update2015/9/7

*@update2015/11/22

*/

#ifndef_GUI_2D_LIB_H_

#define_GUI_2D_LIB_H_

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

*頭文件

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

#include"gui_interface.h"

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

*函數(shù)

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

/**

*@brief繪制水平線條

*@paramy:y位置

*@paramx0:x起始位置

*@paramx1:x結(jié)束位置

*/

voidgui_draw_hline(uint16_ty,uint16_tx0,uint16_tx1);

/**

*@brief繪制垂直線條

*@paramx:x位置

*@paramy0:y起始位置

*@paramy1:y結(jié)束位置

*/

voidgui_draw_vline(uint16_tx,uint16_ty0,uint16_ty1);

/**

*@brief繪制線條

*@paramx0:x起始位置

*@paramy0:y起始位置

*@paramx1:x結(jié)束位置

*@paramy2:y結(jié)束位置

*/

voidgui_draw_line(uint16_tx0,uint16_ty0,uint16_tx1,uint16_ty1);

/**

*@brief繪制矩形

*@paramx0:左上角x坐標(biāo)

*@paramy0:左上角y坐標(biāo)

*@paramx1:右上角x坐標(biāo)

*@paramy2:右上角y坐標(biāo)

*/

voidgui_draw_rect(uint16_tx0,uint16_ty0,uint16_tx1,uint16_ty1);

/**

*@brief填充矩形

*@paramx0:左上角x坐標(biāo)

*@paramy0:左上角y坐標(biāo)

*@paramx1:右上角x坐標(biāo)

*@paramy2:右上角y坐標(biāo)

*@paramshow:0:不顯示,1:顯示

*/

voidgui_fill_rect(uint16_tx0,uint16_ty0,uint16_tx1,uint16_ty1,uint8_tshow);

/**

*@brief在指定位置顯示圖片

*@paramx:x坐標(biāo)

*@paramy:y坐標(biāo)

*@parambmp:圖片

*/

voidgui_draw_bitmap(uint16_tx,uint16_ty,constuint8_t*bmp);

#endif


gui_2d_lib.c

[cpp]view plaincopy

/**

*Copyright(c),2015-2025

*@filegui_2d_lib.c

*@brief2d圖形庫主文件

*@authorjdh

*@date2015/9/6

*@update2015/9/7

*@update2015/11/22

*/

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

*頭文件

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

#include"gui_2d_lib.h"

#include"string.h"

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

*數(shù)據(jù)結(jié)構(gòu)

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

#pragmapack(1)

/**

*@brief文件頭

*/

struct_Bmp_File_Header

{

//文件標(biāo)志

uint16_ttype;

//文件大小

uint32_tsize;

//保留

uint16_treserved1;

//保留

uint16_treserved2;

//位圖偏移量

uint32_toffbits;

};

/**

*@bri信息頭

*/

struct_Bmp_Info_Header

{

//信息頭大小

uint32_tsize;

//位圖寬度

uint32_twidth;

//位圖高度

uint32_theight;

//位圖的位面數(shù)

uint16_tplanes;

//每個像素點所需的數(shù)據(jù)位數(shù)(24)

uint16_toffbits;

//壓縮算法

uint32_tcompression;

//位圖數(shù)據(jù)字節(jié)數(shù)

u

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉