吴忠躺衫网络科技有限公司

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

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

3天內不再提示

單色BMP位圖的顯示方法

英創(chuàng)信息技術 ? 作者:英創(chuàng)信息技術 ? 2019-09-29 13:56 ? 次閱讀

在工控領域的實際應用中,客戶經常需要使用LCD顯示屏進行一些簡單的文字和圖形顯示操作,如顯示公司的LOGO和開機畫面、顯示一些重要的參數指標等。英利嵌入式Linux工控主板可以直接支持6種單色點陣LCD顯示屏,分別是KS0108控制器的128x64點陣LCD、T6963C控制器的240x128點陣LCD、SED1335控制器的320x240點陣LCD、KS0108控制器的192x64點陣LCD、UC1698U控制器的160x160點陣LCD、YXD控制器的128x64點陣LCD。

對于文字的顯示,英利公司已有例程進行介紹,本文將詳細介紹單色BMP位圖的顯示方法。

1、制作符合顯示需要的單色BMP位圖

使用圖形編輯軟件制作用來顯示的圖片,并保存為位圖格式,然后使用Windows中的“畫圖”工具打開該圖片,另存為單色位圖(注:一定要存為單色位圖,否則無法顯示)。注意圖形的尺寸大小,如果待顯示圖形大于LCD的尺寸,則無法正確顯示。

2、使用英利提供的示例程序進行圖形顯示

英利提供了一個名為“test_bmp”的測試例程,其中包括了測試程序“test_bmp”以及用于圖形顯示的API函數。其中,API函數DisplayBmp( . . )中實現了對BMP文件的讀取、解析和顯示操作,客戶將制作好的圖片和測試程序test_bmp一同放在英利工控主板的/mnt/nandflash目錄中,通過命令行輸入如下命令:

[root@EM9X60 /mnt/nandflash]# ./test_bmp logo.bmp 3 30 10

即可以在LCD顯示屏上看到顯示效果。

該命令的4個參數說明如下:
logo.bmp:英利測試時使用的圖片。客戶實際使用的時候填寫自己的圖片名字
3:英利測試使用的是320x240點陣的顯示屏,定義為3號屏,因此此處的參數為3。如果使用其他分辨率的LCD,則填寫相應的
參數,參數與LCD對應關系如下:
1:KS0108控制器的128x64點陣LCD
2:T6963C控制器的240x128點陣LCD
3:SEED1335控制器的320x240點陣LCD
4:KS0108控制器的192x64點陣LCD
5:UC1698U控制器的160x160點陣LCD
6:YXD控制器的128x64點陣LCD
30:顯示屏x方向的起始顯示位置。如果不填,默認為0
10:顯示屏y方向的起始顯示位置。如果不填,默認為0

需注意的是:
1、用于顯示的圖片必須是單色位圖,且圖片的長寬尺寸必須小于LCD相應方向(x和y軸)的點陣數,否則無法顯示。
2、前兩個參數(圖片名、顯示屏分辨率)必須設置,否則系統(tǒng)報錯退出。
3、顯示屏參數中,只有數字1-6有效,其余輸入均視為無效參數,系統(tǒng)報錯退出。
4、后兩個參數是用于控制圖片顯示位置的,如果都不設置,則默認從左上角第一個點開始顯示。這兩個參數必須同時設置或者
留空,不能只設置一個。同時,如果設置的起始位置造成了圖片的溢出(即如果從起始位置開始顯示,圖片在x或者y軸方向的
尺寸已經大于了該方向剩余的LCD點陣數),也無法正確顯示。

3、圖形顯示示例程序說明

能夠使用示例程序進行單色位圖顯示以后,客戶可以以測試程序為藍本,針對自己的應用設計自己的圖形顯示程序。test_bmp的代碼和說明如下:

#include
#include
#include
#include 'lcd_api.h'
#include 'bmpdisplay.h'
int main( int argc, char** argv )
{
// 如果只設置了圖片名和顯示屏尺寸,則默認從左上角第一個點開始顯示
if( argc == 3 )
{
InitLcd( atoi(argv[2]) );
DisplayBmp( argv[1], 0, 0 );
}
// 如果設置了4個參數,則完全按照參數設置進行配置
else if( argc == 5 )
{
InitLcd( atoi(argv[2]) );
DisplayBmp( argv[1], atoi(argv[3]), atoi(argv[4]) );
}
else
{
printf( 'Parameter fail!\n' );
return -1;
}
sleep( 1 );
LCD_DeInit( );
return 0;
}

該例程很簡單,解析命令行傳入的參數以后調用英利提供的函數DisplayBmp即可以進行顯示。實際應用中,客戶用于顯示的圖片有可能只是一個,顯示屏也會固定一種型號,并不需要從命令行傳入參數進行解析,此時可以簡化上述程序,整個過程只需要如下四條語句:

InitLcd( 3 );
DisplayBmp( 'logo.bmp', 0, 0 );
sleep( 1 );
LCD_DeInit( );

對該示例程序感興趣的英利公司客戶可以來電或通過電子郵件索取相關代碼。

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

    關注

    4

    文章

    3569

    瀏覽量

    89293
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6086

    瀏覽量

    35609
收藏 人收藏

    評論

    相關推薦

    【安富萊】【STemWin教程】第11章 BMP圖片顯示

    `` 本帖最后由 硬漢Eric2013 于 2015-3-26 11:56 編輯 第11章 BMP圖片顯示 本期主要講emWin支持的BMP圖片顯示,官方支持的主要有兩種
    發(fā)表于 03-26 11:50

    第11章 BMP圖片顯示

    轉stemwin教程本期主要講emWin支持的BMP圖片顯示,官方支持的主要有兩種顯示方法,一種是從外部存儲器讀取數據到內部存儲器然后來顯示
    發(fā)表于 10-12 10:18

    【emWin實戰(zhàn)教程V2.0】第46章 BUTTON-按鈕控件顯示位圖和流位圖

    轉最新版本教程本章節(jié)為大家講解按鈕控件顯示位圖和流位圖方法,之所以做這章節(jié)是因為太多初學者問這方面的問題,所以專門做一下。學習本章節(jié)前,務必保證已經學習了第12章和第13章。46.1
    發(fā)表于 02-28 16:47

    請教下,讀取sd卡,u盤里面的bmp圖片解碼顯示

    本帖最后由 hpdell 于 2016-1-12 15:12 編輯 請教下,讀取sd卡、u盤里面的bmp圖片解碼顯示,sd卡與u盤里面的bmp圖片文件完全一樣,圖片的位圖也都
    發(fā)表于 10-24 08:10

    位圖顯示問題如何解決

    硬件:STM32F103VCt6程序是參照原子歌的位圖顯示這部分。只是改變了圖片的內容,其它的是拷貝位圖的源代碼,沒有操作系統(tǒng)。圖片是用BMPCVTST導的,存在內部FLASH里,工程包含了這個文件
    發(fā)表于 05-22 14:57

    怎樣在OLED或其他單色屏上顯示圖片

    在OLED或其他單色屏上顯示圖片,為減小Flash占用,需要轉換為單色位圖。對于主控是sdd1306的oled的取模方式:打開Image2Lcd。按照如圖左側進行配置,將圖片轉換為
    發(fā)表于 07-15 08:24

    MDA顯示接口引腳定義圖(單色)

    MDA顯示接口引腳定義圖(單色) MDA 即 Hercules(大力神)單色顯示卡,顯示卡端的接口為 9 針母插座:
    發(fā)表于 11-27 20:16 ?1889次閱讀
    MDA<b class='flag-5'>顯示</b>接口引腳定義圖(<b class='flag-5'>單色</b>)

    關于AD中如何添加LOGO的方法

    利用 Windows 畫圖工具,把片轉換成 單色BMP 位圖
    發(fā)表于 09-09 16:05 ?0次下載

    基于STM32芯片的LCD顯示屏的BMP圖片顯示

    基于STM32芯片的LCD顯示屏的BMP圖片顯示
    發(fā)表于 01-18 14:39 ?61次下載

    BMPtoPCB軟件的免費下載(bmp位圖轉PCB文件工具)

    BMPtoPCB是一個制作電路板PCB的小軟件,做logo的時候能夠用上,把bmp格式的圖片直接轉換成pcb的文件。 使用方法 1.首先制作一幅 BMP圖形,把你需要的漢字或記號包含在內。然后運行本
    發(fā)表于 11-29 15:24 ?29次下載
    BMPtoPCB軟件的免費下載(<b class='flag-5'>bmp</b><b class='flag-5'>位圖</b>轉PCB文件工具)

    Blackfin下載產品代碼的位圖圖像文件(BMP)解碼器

    Blackfin下載產品代碼的位圖圖像文件(BMP)解碼器
    發(fā)表于 06-08 11:46 ?1次下載
    Blackfin下載產品代碼的<b class='flag-5'>位圖</b>圖像文件(<b class='flag-5'>BMP</b>)解碼器

    嵌入式linux操作framebuffer顯示bmp圖片

    編譯后拷貝進開發(fā)板即可使用使用方法./fb_show_bmp test.bmp顯示的圖片由參數指定,上面指令中test.bmp為測試用的
    發(fā)表于 11-01 17:06 ?10次下載
    嵌入式linux操作framebuffer<b class='flag-5'>顯示</b><b class='flag-5'>bmp</b>圖片

    stm32單片機OLED顯示圖片 位圖轉換 Image2Lcd使用

    在OLED或其他單色屏上顯示圖片,為減小Flash占用,需要轉換為單色位圖。對于主控是sdd1306的oled的取模方式:打開Image2Lcd。按照如圖左側進行配置,將圖片轉換為
    發(fā)表于 11-18 15:51 ?16次下載
    stm32單片機OLED<b class='flag-5'>顯示</b>圖片 <b class='flag-5'>位圖</b>轉換 Image2Lcd使用

    Linux下BMP圖片添加水印

    BMP是英文Bitmap(位圖)的簡寫,它是Windows操作系統(tǒng)中的標準圖像文件格式,能夠被多種Windows應用程序所支持。隨著Windows操作系統(tǒng)的流行與豐富的Windows應用程序的開發(fā)
    的頭像 發(fā)表于 08-16 11:20 ?1303次閱讀
    Linux下<b class='flag-5'>BMP</b>圖片添加水印

    有關BMP位圖的原理和解析

    BMP是 Bitmap(位圖)的簡稱,是windows顯示圖片的基本格式。
    的頭像 發(fā)表于 05-20 16:15 ?2619次閱讀
    有關<b class='flag-5'>BMP</b><b class='flag-5'>位圖</b>的原理和解析
    百家乐里面的奥妙| 大发888官方网页| 3U百家乐官网游戏| 百家乐网络赌博地址| 桌上游戏| 代理百家乐最多占成| 莎车县| 百家乐大赢家客户端| 新利娱乐开户| 百家乐辅助分析软件| 修武县| A8百家乐娱乐网| 申博娱乐城官网| 百家乐是咋玩法| 富源县| 百家乐赌注| 澳门百家乐官网大小| 威尼斯人娱乐城线路| 试玩百家乐官网代理| 皇冠现金网骗钱| 百家乐游戏看路| 定州市| 新西兰百家乐的玩法技巧和规则| ez百家乐官网技巧| 大发888任务怎么做| 百家乐官网赚水方| 惠来县| 全迅网百家乐的玩法技巧和规则| 什么事百家乐官网的路单| 青岛人家棋牌室| 百家乐百家乐视频| 百家乐官网赔率技巧| 网上百家乐指| 百家乐官网14克粘土筹码| 略阳县| 金赞百家乐的玩法技巧和规则| 百家乐官网一般多大码| 海王星线上娱乐| 百家乐英皇娱乐场开户注册| 百家乐官网喜牛| 足球投注网站|