在线免费观看成年人视频-在线免费观看国产-在线免费观看国产精品-在线免费观看黄网站-在线免费观看精品

產品分類

當前位置: 首頁 > 傳感測量產品 > 信號處理產品 > 信號轉換器

類型分類:
科普知識
數據分類:
信號轉換器

EM335x支持低成本單色LCD顯示方案

發布日期:2022-04-27 點擊率:203

  • 關鍵詞: EM335x LCD顯示方案
  • 摘要:EM335x板卡的標準應用是采用的raster模式LCD驅動,支持多種分辨率彩色液晶顯示接口,最高分辨率到1024X768。在此基礎上英創公司在EM335x上還實現了基于LIDD模式的LCD驅動,可滿足部分工業場合對于單色點陣屏的需求。本文以單色點陣屏160X160 LCD為例,介紹該屏在EM335x上的應用。

1、簡述


  英創公司嵌入式板卡EM335x是一款高性能的Cortex-A8硬件平臺,板卡帶有豐富的硬件接口,非常適用于工業應用開發。


  EM335x板卡CPU采用了Ti公司的AM3354,AM3354的LCD控制器包括有兩種獨立的控制器:一種是行掃(raster)模式,一種是LCD接口驅動(LIDD)模式,raster 模式用于處理同步LCD,用于支持彩色液晶顯示屏,而LIDD模式可以用來支持低成本的單色點陣LCD模塊。


  EM335x板卡的標準應用是采用的raster模式LCD驅動,支持多種分辨率彩色液晶顯示接口,最高分辨率到1024X768。在此基礎上英創公司在EM335x上還實現了基于LIDD模式的LCD驅動,可滿足部分工業場合對于單色點陣屏的需求。本文以單色點陣屏160X160 LCD為例,介紹該屏在EM335x上的應用。




2、單色LCD接線


  EM335x的LCD接口請參見EM335x數據手冊中CN3的信號定義。下面是通過EM335x CN3連接HGO160160 LCD模塊(UC1698U控制器,160x160點陣)的信號對應表:




  LCD的第19腳為背光電源正,EM335x CN3的第30腳為PWM信號輸出,低電平有效。這兩個引腳在物理上并不是直接相連,而是應該將PWM作為LCD的背光控制信號,通過控制一個電子開關實現LCD背光的打開與關閉,具體連接可參考下圖。




3、單色屏LCD應用程序開發


  在Linux操作系統中,與彩色屏的設備節點不同,對于單色LCD的設備節點定義為:'/dev/em335x_lcd',因此Linux應用程序操作單色LCD時,一般為以下幾個步驟:

  1、打開LCD設備文件:

  fd = open('/dev/em335x_lcd', O_RDWR);

  2、調用標準的write( )函數對LCD屏進行操作。

  3、關閉LCD設備文件。


  為了方便客戶使用,我們設計了一套通用的漢字及LCD顯示接口函數,這些接口函數定義和實現分別在lcd_api.h lcd_api.cpp中,函數中包括畫點、畫線、畫Bar條、寫塊數據、輸出漢字及字符等操作。關于各個函數的定義說明,可參見lcd_api.h頭文件中的中文注釋。其中的漢字支持為標準一級全漢字,為16×16點陣字模,西文(字母、數字和符號)為8×14點陣字模,這兩個字模文件分別為cclib、cclib12.fnt、ascii.chr,放置在EM335x嵌入式主板的根文件系統“/usr”目錄中。各個函數定義如下:


  // 功能描述: 啟動對LCD屏的操作功能,并初始化LCD顯示屏

  // 返回值 > 0: 啟動LCD成功

  // = -1: 啟動LCD失敗

  int LCD_Init( );


  // 功能描述: 釋放對LCD顯示屏的操作功能

  // 輸入參數: 無

  // 返回值 > 0: 初始化LCD成功,并返回LCD的類型

  // = -1: 初始化LCD失敗

  int LCD_DeInit( );


  // 功能描述: 對LCD顯示屏的清屏操作

  // 輸入參數: 無

  // 返回值 = 0: LCD清屏成功

  //<0 : LCD清屏失敗

  int LCD_Clearup( );


  // 功能描述: 獲取LCD顯示屏的X方向最大分辨率

  // 輸入參數: 無

  // 返回值 : LCD顯示屏的X方向最大分辨率

  int LCD_GetMaxX( );


  // 功能描述: 獲取LCD顯示屏的Y方向最大分辨率

  // 輸入參數: 無

  // 返回值 : LCD顯示屏的Y方向最大分辨率

  int LCD_GetMaxY( );


  // 功能描述: 設置LCD顯示漢字字模:16點陣、12點陣

  // 輸入參數: FontWidth = 16 : 16點陣漢字

  // FontWidth = 12 : 12點陣漢字

  // 返回值 : 字模的類型16或12

  int LCD_SetFont( int FontWidth );


  // 功能描述: 對LCD顯示屏進行描點操作

  // 輸入參數:

  // int x0: 描點的列坐標(x坐標),范圍0~(MaxX-1)

  // int y0: 描點的行坐標(y坐標),范圍0~(MaxY-1)

  // int color: 描點的顏色:BK_COLOR或者TEXT_COLOR

  // 返回值 0: 成功

  int LCD_PutPixel( int x0, int y0, int color );


  // 功能描述: 對LCD顯示屏進行寫多個字節操作

  // 輸入參數:

  // int x: 寫字節的列坐標(x坐標),范圍0~(MaxX-1),不可大于或等于MaxX

  // int y: 寫字節的行坐標(y坐標),范圍0~(MaxY-1),不可大于或等于MaxY

  // unsigned char* hfont: 需要寫的字節組

  // int xsize: x方向的大小,最大不超過8

  // int NumOfBytes: 需要寫的字節數,最大不超過16

  // 返回值 0: 成功

  int LCD_WriteByteBlock( int x, int y, unsigned char* hfont, int xsize,

  int NumOfBytes );


  // 功能描述: 對LCD顯示屏畫直線操作

  // 輸入參數:

  // int x0: 直線開始列坐標(x坐標),范圍0~(MaxX-1),不可大于或等于MaxX

  // int y0: 直線開始行坐標(y坐標),范圍0~(MaxY-1),不可大于或等于MaxY

  // int x1: 直線結束列坐標(x坐標),范圍0~(MaxX-1),不可大于或等于MaxX

  // int y1: 直線結束行坐標(y坐標),范圍0~(MaxY-1),不可大于或等于MaxY

  // int color: 顏色設置:BK_COLOR或者TEXT_COLOR

  int LCD_DrawLine( int x0, int y0, int x1, int y1, int color );


  // 功能描述: 對LCD顯示屏畫Bar條操作

  // 輸入參數:

  // int x0: 直線開始列坐標(x坐標),范圍0~(MaxX-1),不可大于或等于MaxX

  // int y0: 直線開始行坐標(y坐標),范圍0~(MaxY-1),不可大于或等于MaxY

  // int x1: 直線結束列坐標(x坐標),范圍0~(MaxX-1),不可大于或等于MaxX

  // int y1: 直線結束行坐標(y坐標),范圍0~(MaxY-1),不可大于或等于MaxY

  // int color: 顏色設置:BK_COLOR或者TEXT_COLOR

  int LCD_FillBar( int x0, int y0, int x1, int y1, int color );


  // 功能描述: 對LCD顯示屏進行寫字符串的操作

  // 輸入參數:

  // int x0: 字符寫入的列坐標(x坐標),范圍0~(MaxX-1)

  // int y0: 字符寫入的行坐標(y坐標),范圍0~(MaxY-1)

  // int color: 字符寫入的顏色設置:BK_COLOR或者TEXT_COLOR

  // 返回值 0: 成功

  int LCD_WriteString( int x0, int y0, char* pStr, int color );


  以test_lcd為例,介紹利用eclipse / Sourcery G++工具進行應用程序開發時,如何使用lcd_api.h函數庫來實現對LCD的顯示操作。


  首先需要在應用工程項目文件test_lcd中導入API函數相關的幾個文件:lcd_api.h、lcd_api.cpp 以及DotLib.CPP(主要實現了西文、漢字顯示功能)。在eclipse / Sourcery G++ IDE下導入不僅僅是將這些文件加入到項目工程中,同時也會把這幾個文件復制到項目工程所在的目錄下。以下為測試代碼:


  // 對LCD屏進行初始化操作

  i1 = LCD_Init( );

  if( i1<0 )

  {

    printf( 'LCD Init fail! ' );

    return -1;

  }


  MaxX = LCD_GetMaxX( );

  MaxY = LCD_GetMaxY( );

  LCD_Clearup( );


  LCD_PutPixel( 0, 0, 1 );

  LCD_PutPixel( MaxX-1, 0, 1 );

  LCD_PutPixel( 0, MaxY-1, 1 );

  LCD_PutPixel( MaxX-1, MaxY-1, 1 );


  LCD_SetFont( 12 );


  // 顯示中文、字符操作

  strcpy( BufStr, '** 歡迎測試 **' );

  x = (MaxX-strlen(BufStr)*8)/2;

  y = 8;

  LCD_WriteString( x, y, BufStr, TEXT_COLOR );


  strcpy( BufStr, '嵌入式Linux主板' );

  x = (MaxX-strlen(BufStr)*8)/2;

  y = 24;

  LCD_WriteString( x, y, BufStr, BK_COLOR );

  sleep( 2 );


  // 畫線

  LCD_DrawLine( 0, 42, MaxX-1, 42, TEXT_COLOR );

  LCD_DrawLine( 0, 63, MaxX-1, 63, TEXT_COLOR );


  // 畫曲線

  for( x=0; x  {

    y = 53 - 10.0*sin( 2.0*M_PI*x/24.0 );

    LCD_PutPixel( x, y, XOR_WRITE );

  }

  sleep( 2 );


  for( x=0; x  {

    y = 53 - 10.0*sin( 2.0*M_PI*x/24.0 );

    LCD_PutPixel( x, y, XOR_WRITE );

  }

  sleep( 2 );


  LCD_Clearup( );

  LCD_DrawLine( 0, 0, MaxX-1, MaxY-1, TEXT_COLOR );

  LCD_DrawLine( 0, MaxY-1, MaxX-1, 0, TEXT_COLOR );

  // 畫Bar條

  start = time(NULL);

  for( i1=0; i1<9; i1++)

  {

    LCD_FillBar( MaxX/2-20, MaxY/2-20, MaxX/2+20, MaxY/2+20, XOR_WRITE );

    sleep(1);

  }

  end = time(NULL);

  printf('The pause used %f seconds. ',difftime(end,start)/10);//


  LCD_DeInit( );

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多
丝瓜秋葵草莓香蕉榴莲绿| 人妻无码中文字幕一区二区三区 | 我偷偷跟亲妺作爱H| 亚洲成A人片在线观看无码不卡| 在线天堂网WWW天堂在线| 薄先生突然黏她上瘾TXT下载| 国产成人果冻星空传媒| 激情内射日本一区二区三区| 男人的天堂在线视频| 帅气小鲜肉自慰VIDEO| 亚洲欧美一区二区成人片| AV老司机福利精品导航| 国产精品国语对白露脸在线播放| 久久国产乱子伦免费精品| 琪琪电影午夜理论片YY6080| 午夜不卡AV免费| 中国无码人妻丰满熟妇啪啪软件| 儿子比老公更大更硬朗| 久99久无码精品视频免费播放 | av 成人 亚洲无码| 国产裸拍裸体视频在线观看 | 花火と在线观看动漫免费| 女人被躁到高潮嗷嗷叫小说百度| 偷拍农村老熟妇XXXXX7视频| 亚洲色成人网一二三区| 久久久久久久久精品成人| 欧美成人免费观看在线看| 无码AV熟妇素人内射vr在线| 在线观看成人无码中文AV天堂| 粉嫩av一区二区精品爆乳| 久久精品人妻一区二区三区| 日韩GAY小鲜肉啪啪18禁| 亚洲精品无码永久电影在线| 成人毛片100部免费看| 精品无码国产自产野外拍在线 | 国产又爽又粗又猛的视频 | 精品国产AV无码专区亚洲AV| 秋霞AV鲁丝片一区二区| 亚洲国产精品久久久就秋霞| 不什么不什么的成语| 久久久99精品成人片中文字幕| 少妇高潮惨叫喷水正在播放| 影音先锋AⅤ无码资源网| 国产精品JIZZ在线观看无码| 妺妺窝人体色WWW在线小说| 羞羞漫画十八禁啪啪漫画免费| CHINESEMATURE性老| 激情内射日本一区二区三区| 少妇高清一区二区免费看| 中国猛少妇色XXXXX| 国产一区二区三区无码免费| 人人妻人人澡人人爽人人精品浪潮 | 秋霞无码AⅤ一区二区三区| 亚洲卡5卡6卡7卡2021入口| 丰满的女房东6剧情| 久久综合九色欧美综合狠狠 | 香港三级精品三级在线专区| WWW亚洲精品久久久| 久久精品夜色噜噜亚洲A∨| 挽起裙子迈开腿坐下去的图片高清 | 末发育娇小性色XXXXX视频| 亚洲SSS整片AV在线播放| 俄罗斯女人与马Z00Z视频| 妺妺窝人体色WWW精品| 亚洲精品TY久久久久久久久久 | 亚洲AV永久精品无码| 东京热加勒比视频一区| 欧美成人精品三级网站视频| 亚洲色一色鲁一鲁鲁| 国产精品永久免费| 揉着我的奶从后面进去视频| 999在线视频精品免费播放观看| 精产国品一二三产品区别在哪里| 玩弄肥美高大的熟妇| 波多野结衣AV高清中文字幕| 免费视频成人片在线观看| 亚洲色18禁成人网站WWW永久| 国产九九久久99精品影院| 三级在线看中文字幕完整版| 99久久精品国产一区二区三区| 久久久久久精品免费免费999 | 精品人妻视频一区二区三区| 五月香丁激情欧美啪啪| 高清国产AV一区二区三区| 人妻AV一区二区三区AV免费| 12孩岁女A处破娇小| 久久久久久精品免费免费| 亚洲国产成人久久综合一区77| 国产精品无码素人福利| 熟妇人妻中文字幕| 厨房玩丰满人妻HD完整版视频| 欧美日韩国产成人高清视频| 中文字幕在线无码一区二区三区 | 亚洲一区二区三区在线网址| 极品丰满熟妇人妻无码| 性欧美丰满熟妇XXXX性| 国产精品久久久久乳精品爆| 少妇久久久被弄到高潮| 大胸年轻继拇HD无码| 日本强伦姧人妻69影院| 阿娇13分钟视频无删减MP4| 欧美极品小妇另类xXXX性| 337P日本欧洲亚洲大胆| 免费无码AⅤ片在线观看| 永久免费AV无码不卡在线观看 | 国产未成满18禁止免费看| 忘忧草在线社区日本WWW| 国产 | 欧洲野花视频欧洲1| 少妇粉嫩小泬喷水视频| 丰满熟妇大肉唇张开| 少妇爆乳无码AV无码波霸| 公交车上摸到花蒂进去了视频| 色妞AV永久一区二区国产AV开 | 综合无码成人AⅤ视频在线观看| 麻豆成人精品国产免费| 中文天堂在线WWW最新版官网| 免费A级毛片无码韩国| 99RE久久精品国产| 欧美亚洲国产精品久久蜜芽直播| FREEZEFRAME丰满老妇| 人妻内射一区二区在线视频| 爸爸入狱以后妈妈双人桥小权| 人妻少妇偷人精品视频| 城中村快餐嫖老妇对白| 双乳被一左一右的吸着| 国产精品爽爽ⅴa在线观看| 性丰满ⅩXXOOO性HD亚洲| 好男人好社区好资源在线| 亚洲精品色午夜无码专区日韩| 久久发布国产伦子伦精品| 一本一本久久A久久精品综合| 林静公交车被做到高C| 97色偷偷色噜噜男人的天堂| 欧美三级三级三级爽爽爽| 成年无码AV片在线| 无码成人H动漫在线网站| 国色天香精品一卡2卡3卡老狼| 亚洲精品中文字幕乱码| 两个奶被揉的又硬又翘是怎么回事 | 亚洲AV福利天堂在线观看| 精品无码一区二区三区水蜜桃| 浴室人妻的情欲HD三级| 欧美成人片一区二区三区| 成人免费777777被爆出| 无码人妻在线视频| 精品人妻少妇一区二区三区在线| 伊人色综合久久天天小片| 欧美激情视频一区二区三区免费| 成人特黄A级毛片免费视频| 无码人妻精品一区二区三区66| 狠狠色婷婷久久一区二区| 中国少妇内射XXXXX-百度| 青青草无码精品伊人久久蜜臀| 国产ww又大又粗又刺激孕妇| 亚洲成AV人片在线观看无 | 在线播放免费人成毛片软件| 人妻被黑人与白人巨大中出| 国产成人精品A∨一区二区| 亚洲AV元码天堂一区二区三区| 老师穿着旗袍肉色丝袜让我玩| А∨天堂一区一本到| 无遮挡啪视频APP| 久久棈精品久久久久久噜噜| WWW夜插内射视频网站| 无码国产色欲XXXX视频| 久久久精品国产免大香伊| IJZZIJZZIJ亚洲大全| 污污污WWW精品国产网站| 久久99热狠狠色精品一区| TPU色母和子色母的性能| 无码免费无线观看在线视频| 久久久久精品日韩久久久 | 中文字幕无码免费久久| 色老头精品午夜福利视频| 激情伊人五月天久久综合| 99久久亚洲综合精品成人网| 玩弄漂亮少妇高潮大叫| 久久久亚洲AV成人网站| 成人免费AⅤ视频一区二区| 亚洲AV中文乱码一区二| 欧美成人精品视频一区二区三区| 国产成人久久精品一区二区三区| 亚洲中文字幕无码久久2020| 日本夜爽爽一区二区三区| 红桃视频成人传媒| YW尤物AV无码点击进入福利| 亚洲av网站在线| 女BBBB槡BBBB槡BBBB| 国产日韩AV在线播放| 91久久精品www人人做人人爽| 无码中文精品视视在线观看| 毛卡5卡6卡7卡8入口| 国产成人片无码视频在线观看| 一本大道无码AV天堂| 少妇人妻好深好紧精品无码| 久久精品无码专区免费| 给丰满少妇按摩到高潮| 中国女人黑森林毛耸耸| 五月天久久久噜噜噜久久| 欧美成人片在线观看网站|