www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 電源 > 數(shù)字電源
[導讀]本文介紹基于SOPC的液晶屏接口組件的設計方法。利用SOPC Builder中的組件編輯器(Component Editor)實現(xiàn)液晶屏接口設計。

摘要:本文介紹基于SOPC液晶屏接口組件的設計方法。利用SOPC Builder中的組件編輯器(Component Editor)實現(xiàn)液晶屏接口設計。文中系統(tǒng)介紹組件的硬件和軟件的設計方法,該方法可將硬件抽象為軟件,讓開發(fā)者不必了解硬件結構就可以使用硬件,以標準C語言函數(shù)來操作組件,使用方便,具有靈活性、高效性和低成本的特點。
關鍵字:SOPC;組件編輯器;液晶屏

1  引言

傳統(tǒng)的外設操作使用I/O接口方式,在硬件工程中,需要設計與外設相連的I/O接口,在軟件工程中,需要用戶編寫I/O接口程序對外設進行初始化,設置相應的外設寄存器,這樣的工作在每次新建一個工程后,都得重復進行,因此增加了開發(fā)的成本。

利用Altera公司提供的Component Editor工具可以設計符合時序要求的外設接口,并且可以將用戶開發(fā)驅動程序與Nios II HAL(硬件抽象層)系統(tǒng)庫集成在一起,形成Nios II的接口組件,在系統(tǒng)生成的時候,對外設進行初始化設置。這樣在建立新工程時,只需將接口組件添加到系統(tǒng)就可以了,對組件的訪問也變得輕松,使得代碼可重復利用。

Nios II HAL系統(tǒng)庫是一個輕量級實時環(huán)境,提供一個組件驅動接口,使得程序與底層硬件通信。HAL API(應用程序接口)與ANSI C標準庫集成在一起,允許用戶通過類C庫函數(shù)訪問設備和文件,例如printf()、fopen()和fwrite()等,這樣其他開發(fā)者無需知道底層硬件結構就可以對組件進行操作。

2  硬件設計

在SOPC Builder中打開Component Editor,在HDL Files標簽下添加硬件描述語言編寫的文件,將其設定為頂層模塊,該文件描述了組件與Avalon總線的接口以及組件與液晶屏的接口,系統(tǒng)自動對文件進行分析和模擬。

點擊Signals標簽,系統(tǒng)自動讀取硬件描述語言文件中的信號,用戶只需設置接口信號和信號類型。接口信號包括主端信號和從端信號,主端信號與Avalon總線相連,包括iDATA、iADDRESS、iWR_N和iCS_N等,信號類型依次為writedata、address、write_n和chipselect_n等,從端信號與LCD相連,包括LCD_DATA、LCD_ADDRESS、LCD_RD_N、LCD_WR_N和LCD_CS_N等,信號類型均為export。

從端信號與主端信號的連接用硬件描述語言描述:

assign     LCD_DATA           =     iDATA;

assign     LCD_ADDRESS    =     iADDRESS;

assign     LCD_RD_N           =     1;

assign     LCD_WR_N          =     iWR_N;

assign     LCD_CS_N           =     iCS_N;

由于始終對液晶屏進行寫操作,不進行讀操作,所以信號LCD_RD_N置1。

點擊Interfaces標簽,將接口設置為從類型,地址選擇Registers類型,Avalon Slave Timing可以設置接口的時序,如圖1所示。

圖1  液晶屏寫時序

點擊SW Files標簽,添加系統(tǒng)所需要的文件,包括兩個頭文件,一個C文件,選擇文件類型,將它們包含在不同的文件夾下,這樣就可以通過標準的C語言函數(shù)來訪問組件了。

最后一步點擊Component Wizard,為組件取名,點擊Finish完成設計。

3  軟件設計

組件生成后,組件文件夾的結構如圖2所示。

圖2 液晶屏接口組件

lcd_3224inc文件夾下包含_regs.h文件,該文件定義硬件接口,例如:

#define    IOWR_ LCD_DATA(base, data)           IOWR(base, 0, data)

寫參數(shù)有三個,base為組件的基地址,0表示地址偏移量,data為要寫入的數(shù)據(jù),重新定義后在源代碼中可以使用自定義的名字對組件進行操作。

lcd_3224hdl文件夾下包含.v文件,該文件描述組件的接口信號。

lcd_3224HALinc文件夾下包含.h文件,該文件描述組件的結構、函數(shù)聲明和驅動程序與標準C函數(shù)的接口等,示例如下:

#include  "sys/alt_dev.h"              //包含定義組件結構的頭文件

typedef    struct      alt_LCD_dev   alt_LCD_dev;         //定義組件結構

struct      alt_LCD_dev

{

  alt_dev        dev;

  int            base;

};

……

void        alt_lcd_init(alt_LCD_dev * dev);          //聲明初始化函數(shù)

int          alt_lcd_write(alt_fd * fd, const char* ptr, int len);              //聲明寫函數(shù)

……

#define ALTERA_AVALON_LCD_INSTANCE(name, device)

static alt_LCD_dev device =

{

  {

    ALT_LLIST_ENTRY,

    name##_NAME,

    NULL, /* open */          //fopen可以訪問lcd

    NULL, /* close */

    NULL, /* read */

    alt_lcd_write,         //fprintf將調用寫函數(shù)訪問液晶屏

    NULL, /* lseek */

    NULL, /* fstat */

    NULL, /* ioctl */

  },

  name##_BASE

}

lcd_3224HALsrc文件夾下包含源代碼,mk文件是自動生成的,源代碼主要包括初始化程序、.h文件所聲明的alt_lcd_write和一些子程序,例如:

static void lcd_write_data(alt_LCD_dev * dev, unsigned char data)           //子程序

{

  unsigned int base = dev->base;         //基地址由SOPC Builder自動生成

  IOWR_ LCD_DATA(base, data);      //訪問底層硬件

}

初始化程序和寫函數(shù)調用這些子程序完成對組件的初始化和各種操作。

4  應用

根據(jù)液晶屏的功能及所使用的開發(fā)板,應用系統(tǒng)的硬件結構框圖如圖3所示。

圖3 硬件結構框圖

在SOPC Builder中添加組件生成硬件系統(tǒng),將結果下載到開發(fā)板。打開Nios II IDE創(chuàng)建軟件工程,進行軟件的編寫,其中部分程序如下:

#include  <stdio.h>

int    main(void)

{

FILE * fd;

fd = fopen(/dev/lcd”, “w”);              //lcd為SOPC Builder中的名字

if(fd)

{

fprintf(fd, “parameter”);        //調用alt_lcd_write

fclose(fd);

}

……

return 0;

}

通過標準C函數(shù)訪問液晶屏,程序編寫簡單,可以顯示各種圖像及字符。如果還有特殊要求,用戶可以繼續(xù)在驅動程序中添加需要的功能。

5  總結

本文詳細介紹了液晶屏接口組件的設計方法,核心部分是硬件描述語言文件的編寫、時序的設計以及驅動程序的編寫。調試成功后,可以把組件文件夾放到系統(tǒng)組件文件夾下,這樣就可以重復使用。對于應用程序開發(fā)者,不用了解硬件結構就可以使用標準C函數(shù)操作組件,使得開發(fā)簡便快捷,節(jié)省了時間和成本,是一種高效、靈活和低成本的開發(fā)方法。

本文作者創(chuàng)新點:和傳統(tǒng)的外設接口方式相比,接口組件的使用極大地方便了接口的硬件和軟件設計,是高效靈活的接口方式。

參考文獻

[1]   任愛芬、初秀琴、常存等,基于FPGA的嵌入式系統(tǒng)的設計,西安:西安電子科技大學出版社,2004
[2]   郭書軍、王玉花、葛紉秋,嵌入式處理器原理及應用,北京:清華大學出版社,2004
[3]   李洋洋,基于CPLD的DSP和液晶模塊接口設計,微計算機信息,2004年,第1期

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

隨著13代酷睿處理器的上市,銘瑄本次同步發(fā)布了四款Z790主板,包括兩款ATX、一款mATX,以及一款ITX迷你小板。其中,包括新款MS-終結者Z790M D5主板,售價僅1499元。將在10月20日21點隨13代酷睿處...

關鍵字: 酷睿 ATX 接口 DDR

(全球TMT2022年10月17日訊)上海安勢信息技術有限公司的清源SCA工具在騰訊成功部署。清源?SCA可進行代碼片段識別、文件識別、組件識別、依賴識別和容器鏡像掃描。清源SCA擁有海量數(shù)據(jù)儲備,其中包含24萬漏洞數(shù)...

關鍵字: 騰訊 組件 開源 互聯(lián)網(wǎng)

上海2022年10月14日 /美通社/ -- 近日,上海安勢信息技術有限公司的清源SCA工具在騰訊成功部署。 開源軟件在促進全球的技術創(chuàng)新方面發(fā)揮著越來越重要的作用,企業(yè)越來越依賴開源軟件來加速開發(fā)與創(chuàng)新,根據(jù) Gar...

關鍵字: 開源 開源軟件 組件 數(shù)據(jù)庫

9月22日, 第三方檢驗檢測認證機構DEKRA德凱在上海舉行了可再生能源測試中心落成典禮。落成的DEKRA德凱上海可再生能源測試中心占地2600平方米,融合全球頂尖的光伏領域的專業(yè)檢驗檢測技術團隊,覆蓋光伏產(chǎn)業(yè)從材料到零...

關鍵字: 可再生能源 光伏產(chǎn)業(yè) 零部件 組件

腦機接口(Brain Computer Interface,BCI [4] ),指在人或動物大腦與外部設備之間創(chuàng)建的直接連接,實現(xiàn)腦與設備的信息交換。這一概念其實早已有之,但直到上世紀九十年代以后,才開始有階段性成果出現(xiàn)...

關鍵字: 腦機 接口 設備

北京2022年9月13日 /美通社/ -- 隨著數(shù)據(jù)的爆炸式增長和算力需求的急劇攀升,由開放計算引領的數(shù)據(jù)中心基礎設施創(chuàng)新,正影響著越來越多的公司爭相學習和效仿。在近日舉行的OCP China Day 2022(開放計算...

關鍵字: 數(shù)據(jù)中心 邊緣計算 組件 BSP

(全球TMT2022年9月6日訊)9月5日,思靈機器人發(fā)布“Agile Core & Diana”系列產(chǎn)品。本系列產(chǎn)品包括軟件Agile Core,和兩個智能力控機器人diana7系列。其中,思靈自主研發(fā)的操作...

關鍵字: 機器人 CORE AN 接口

(全球TMT2022年9月6日訊)近日,軟通動力信息技術(集團)股份有限公司與中國—東盟信息港股份有限公司達成生態(tài)合作伙伴框架協(xié)議,雙方將基于各自在數(shù)字經(jīng)濟和數(shù)字產(chǎn)業(yè)中的資源優(yōu)勢,通過平臺合作與資源共享的方式在業(yè)務領域...

關鍵字: 信息技術 數(shù)據(jù)管理 組件 數(shù)字平臺

上海2022年9月5日 /美通社/ -- 2022年8月,第七屆易貿(mào)生物產(chǎn)業(yè)大會(EBC)盛大落幕。本屆大會聚焦分子診斷、抗體藥物、細胞與基因治療、mRNA等熱門話題,匯聚了政府、學術、產(chǎn)業(yè)、投資等一線領域的科學家、學者...

關鍵字: 過濾器 集成 研發(fā)中心 組件

在DDR4出現(xiàn)十年之后,DDR5翩翩來遲。作為十年之久的換代,DDR5的設計上實現(xiàn)了諸多突破:新的通道設計、片內ECC、片上PMIC、更多溫度傳感器乃至插槽缺口的位移等。新的設計規(guī)范和標準,讓內存容量、帶寬和傳輸速率得以...

關鍵字: SPD DDR5 DIMM Rambus 接口

數(shù)字電源

15504 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉