国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

英創信息技術EM335x支持低成本單色LCD顯示介紹

英創信息技術 ? 來源:英創信息技術 ? 作者:英創信息技術 ? 2020-02-03 10:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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( );

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

    關注

    88

    文章

    11759

    瀏覽量

    219013
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6107

    瀏覽量

    37073
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    OBOO鷗柏丨國產信顯示屏電容觸控廣告信息大屏展示終端發展趨勢

    信息技術應用創新(信)產業蓬勃發展的今天,顯示終端作為人機交互的核心窗口,其自主化、安全性與智能化水平至關重要。一款集成了國產化芯片與系統的43英寸電容觸控信
    的頭像 發表于 01-29 13:31 ?479次閱讀
    OBOO鷗柏丨國產信<b class='flag-5'>創</b><b class='flag-5'>顯示</b>屏電容觸控廣告<b class='flag-5'>信息</b>大屏展示終端發展趨勢

    龍芯中科成功舉辦2025信息技術應用創新產教融合交流會

    11月30日,在教育部教育管理信息中心、山東省電化教育館的支持和指導下,龍芯中科聯合浪潮集團、濟南幼兒師范高等??茖W校(以下簡稱“濟南幼高專”),成功舉辦信息技術應用創新產教融合交流會,并同步舉行
    的頭像 發表于 12-08 14:53 ?777次閱讀

    龍芯中科助力2025教育信息技術應用創新大賽成功舉辦

    2025年11月13日-15日,由中國教育技術協會主辦、浙江大學與中國教育技術協會網絡安全專業委員會聯合承辦,中國電子工業標準化技術協會信息技術應用創新工作委員會、浙江高校信
    的頭像 發表于 11-21 16:23 ?786次閱讀

    誠邁科技信電腦助力2025第二屆教育信息技術應用創新大賽圓滿收官

    11月15日,由中國教育技術協會主辦、浙江大學與中國教育技術協會網絡安全專業委員會聯合承辦,中國電子工業標準化技術協會信息技術應用創新工作委員會、浙江高校信
    的頭像 發表于 11-17 17:58 ?671次閱讀
    誠邁科技信<b class='flag-5'>創</b>電腦助力2025第二屆教育<b class='flag-5'>信息技術</b>應用創新大賽圓滿收官

    單色儀的原理介紹及典型應用

    單色儀核心原理 單色儀是一種從復色光中分離出單色光的光學儀器,核心依托光柵或棱鏡的色散作用:復色光經入射狹縫進入儀器后,通過準直鏡變成平行光,投射到色散元件(光柵 / 棱鏡)上被分解為不同波長
    的頭像 發表于 11-11 11:17 ?549次閱讀
    <b class='flag-5'>單色</b>儀的原理<b class='flag-5'>介紹</b>及典型應用

    寶馬南京信息技術有限公司開業

    今日,寶馬(南京)信息技術有限公司在南京正式“掛牌運行”。這家華晨寶馬全資子公司由領悅數字信息技術有限公司南京分公司“迭代”而來,代表著一次里程碑式的“進化”。這次升級不僅加速了寶馬在華數字化轉型進程,更通過深化本土創新,為“未來智慧出行”的發展譜寫了核心“代碼”。
    的頭像 發表于 10-29 15:17 ?617次閱讀

    【六岳微LY-F335開發板試用體驗】芯片數據手冊解讀

    :LQFP176、BGA176 型號示例 : LY-F335QFS:LQFP176,高可靠寬溫版 LY-F335QFA:LQFP176,工業低成本版 LY-F335BGS:BGA17
    發表于 09-26 16:06

    【RA-Eco-RA6M4開發板評測】spi驅動單色LCD顯示

    使用SPI驅動單色LCD顯示屏。 一、硬件部分 使用芯片的SPI0接口,使用的引腳如下 二、配置SPI 2.1、配置spi0引腳 2.2、配置spi0參數 三、程序部分 3.1、fun_spi.c
    發表于 08-10 17:39

    易華錄入選國家級信息技術應用創新典型解決方案

    近日,工業和信息化部網絡安全產業發展中心(工業和信息化部信息中心)公布了“2024年信息技術應用創新解決方案”評選結果。易華錄申報的“基于節能高效藍光的超級智能存儲解決方案”憑借顯著的
    的頭像 發表于 08-07 15:35 ?1614次閱讀

    信息技術應用產學協同人才培養行動計劃”正式發布,誠邁科技入選首批參與單位

    設在中國軟件評測中心。誠邁科技作為信技術先鋒企業,受邀成為首批參與單位,與國內頂尖高校、領軍企業和權威機構攜手,共同打造具有中國特色的信息技術人才培養新范式,為
    的頭像 發表于 08-06 17:29 ?1553次閱讀
    “<b class='flag-5'>信息技術</b>應用產學協同人才培養行動計劃”正式發布,誠邁科技入選首批參與單位

    佛瑞亞如何通過信息技術推動業務增長

    在數字化、信息化的浪潮下,信息技術已經不僅是后臺工具,更成為驅動企業發展的關鍵力量。本期Women Inspiring Mobility,我們采訪了佛瑞亞中國區信息技術總監馬瑛,了解她和團隊如何將
    的頭像 發表于 07-29 14:00 ?900次閱讀

    Texas Instruments CC335x SimpleLink?雙頻Wi-Fi? 6配套IC數據手冊

    ) 和Wi-Fi 5 (802.11ac)。這些CC335x是Texas Instruments的第10代連接組合芯片。因此,CC335x基于成熟的技術設計而成。這些器件非常適合配備運行TCP/IP的Linux或
    的頭像 發表于 07-23 11:37 ?1334次閱讀
    Texas Instruments CC<b class='flag-5'>335x</b> SimpleLink?雙頻Wi-Fi? 6配套IC數據手冊

    飛騰主板為信產業發展提高硬實力

    信息技術飛速發展的當下,信產業已成為我國實現科技自立自強、保障國家信息安全的關鍵領域。信,即信息技術應用創新,其核心目標是實現
    的頭像 發表于 07-22 18:20 ?707次閱讀

    DEKRA德凱成為沙特通信和信息技術設備技術法規認證機構

    近日,DEKRA德凱成功獲得沙特標準、計量和質量組織(SASO)認可,正式成為沙特通信和信息技術設備技術法規(Technical Regulation for Communications
    的頭像 發表于 07-15 14:27 ?917次閱讀

    科普|信是什么?一文讀懂“信息技術應用創新”戰略

    什么是信?信,即“信息技術應用創新”,是國家推動IT系統自主可控、安全可控的重要戰略工程。它不僅是技術層面的創新,更承載著保障國家網絡安全、推動產業升級和實現數字主權的重任。簡單來
    的頭像 發表于 06-13 10:06 ?8238次閱讀
    科普|信<b class='flag-5'>創</b>是什么?一文讀懂“<b class='flag-5'>信息技術</b>應用創新”戰略