FA130開發板包括非常豐富的開發實例,不僅包括FPGA開發實例,還包括單片機開發實例和VS.NET開發實例。FPGA開發實例提供VHDL,Verilog兩個版本。單片機開發實例包括彙編和C語言兩個版本。VS.NET開發實例編程語言為C#,VS.NET和C#也是WINCE.NET平台支持的開發工具和編程語言。
FPGA開發實例如下:
n 流水燈
定時輪流點亮開發板上的8位LED,產生流動的顯示效果,定時信號由開發板上有源晶振輸出分頻得到。
n 6位十進制計數器
計數器的最低(左)位為0.1s,低位與相鄰高位間十進制進位,用開發板上的6位七段數碼管顯示計數器的當前計數值。
n 數字鍾
用開發板上的6位七段數碼管顯示小時,分鐘,秒。小時,分鐘,秒各佔用2位數碼管。
n LCD顯示
開發板上包括一個16列2行的LCD顯示屏,本實例定時顯示0~9和A~F在LCD顯示屏上面,定時間隔為1s。
n 鍵盤陣列-數碼管顯示
定時掃瞄鍵盤陣列,延時去抖動後讀取按鍵狀態,將當前按鍵值顯示在6位七段數碼管的最低位,當有新的按鍵按下時新按鍵值進入最低位數碼管,原來最低位左移一位成為次低位。可識別的按鍵值包括0~9和A~F。
n 鍵盤陣列-LCD屏顯示
定時掃瞄鍵盤陣列,延時去抖動後讀取按鍵狀態,將當前按鍵值顯示在-LCD屏上。可識別的按鍵值包括0~9和A~F。
n 串口發送
定時發送字符』0』~』9』,以及』A』~』F』到接收方,串口的波特率,數據位數,奇偶位,停止位等參數均可通過外部設置,本實例中這些參數的一部分通過撥碼開關來設置。串口的工作時鐘為開發板上的有源晶振輸出的時鐘信號,可以實現常用串口波特率。
n 串口接收-數碼管顯示
可接收字符』0』~』9』和』A』~』F』並顯示在數碼管上,串口的波特率,數據位數,奇偶位,停止位等參數均可通過外部設置,本實例中這些參數的一部分通過撥碼開關來設置。串口的工作時鐘為開發板上的有源晶振輸出的時鐘信號,可以實現常用串口波特率。
n 串口接收-LCD顯示
可接收字符』0』~』9』和』A』~』F』並顯示在LCD屏上,串口的波特率,數據位數,奇偶位,停止位等參數均可通過外部設置,本實例中這些參數的一部分通過撥碼開關來設置。串口的工作時鐘為開發板上的有源晶振輸出的時鐘信號,可以實現常用串口波特率。
n 蜂鳴器
由撥碼開關設置蜂鳴器輸入信號的頻率,使蜂鳴器發出不同的音調。
n 獨立按鍵
4個獨立按鍵通過兩級反向器連接到4位LED上,當有按鍵按下時對應位LED會被點亮。
n 撥碼開關
撥碼開關的8位開關通過兩級反向器連接到8位LED上,當有開關位撥向「ON」時對應位LED會被點亮。
n 晶振測試
開發板上包括1個66MHz有源晶振和1個可外接有源晶振的插座,在本實例中外接有源晶振為40MHz,分別通過66000000/40000000分頻,產生2個獨立的週期為1s的方波脈衝信號,用來點亮2位LED,以測試66MHz有源晶振及外接有源晶振工作是否正常。
n PWM信號輸出
產生指定週期和占空比的PWM信號,週期和占空比由原理圖中參數設置,同時將這些PWM信號參數通過串口發送到PC上顯示。
n PWM信號測量
測量開發板上PWM插座輸入的PWM信號的頻率和占空比,並將測量結果顯示在開發板的8位LED上。
n I2C讀寫
開發板上的I2C設備為1片24C02,本實例實現了24C02的讀出和寫入時序,同時將讀出或寫入數據顯示在數碼管上。
n PS2鍵盤-數碼管顯示
FA130上有標準PS2接口,將PS2鍵盤接在FA130上後,本實例可以將按鍵對應的字符顯示在數碼管上,可識別的按鍵值包括0~9。(註:本實列可靠性方面存在問題,如果應用於產品開發需做些改進)
n PS2鍵盤-LCD屏顯示
FA130上有標準PS2接口,將PS2鍵盤接在FA130上後,本實例可以將按鍵對應的字符顯示在LCD屏上,可識別的按鍵值包括0~9。(註:本實列可靠性方面存在問題,如果應用於產品開發需做些改進)
n VGA
FA130上有標準VGA接口,將支持VGA接口的顯示器接在FA130上後,本實例在顯示器上顯示彩色方塊。
n SPI讀寫
開發板上的SPI設備為1片93C46,本實例實現了93C46的讀出和寫入時序,同時將讀出或寫入數據顯示在數碼管上。
單片機開發實例如下:
n 第一個程序-P1口輸出
將8位2進制數通過單片機P1口輸出,FA130上的8位LED綠色發光管連接在單片機P1上,這樣LED會按照P1口輸出的數據點亮或熄滅。
n 軟件定時器流水燈
通過單片機Timer0定時中斷方式輪流點亮FA130上的8位LED綠色發光管中的一位,產生流動的效果。Timer0定時中斷時間間隔為1s。
n 硬件定時器流水燈
通過軟件延時的方式輪流點亮FA130上的8位LED綠色發光管中的一位,產生流動的效果。
n 6位十進制計數器
使用了Timer0和Timer1兩個定時器,Timer0用作時間計數,Timer1用於刷新數碼管。計數器的最低(左)位為0.1s,低位與相鄰高位間十進制進位,用開發板上的6位七段數碼管顯示計數器的當前計數值。。
n 數字鍾
使用了Timer0和Timer1兩個定時器,Timer0用作時間計數,Timer1用於刷新數碼管。開發板上的6位七段數碼管顯示小時,分鐘,秒。小時,分鐘,秒各佔用2位數碼管。
n LCD顯示
開發板上包括一個16列2行的LCD顯示屏,本實例定時顯示「Welcome to FA130!」字符串在LCD顯示屏上面。
n 鍵盤陣列-數碼管顯示
定時掃瞄鍵盤陣列,延時去抖動後讀取按鍵狀態,將當前按鍵值顯示在6位七段數碼管的最低位,當有新的按鍵按下時新按鍵值進入最低位數碼管,原來最低位左移一位成為次低位。可識別的按鍵值包括0~9和A~F。定時器Timer0用於掃瞄鍵盤陣列,定時器Timer1用於刷新數碼管。
n 鍵盤陣列-LCD屏顯示
定時掃瞄鍵盤陣列,延時去抖動後讀取按鍵狀態,將當前按鍵值顯示在LCD屏上。可識別的按鍵值包括0~9和A~F。定時器Timer0用於掃瞄鍵盤陣列。
n 蜂鳴器-按鍵聲
蜂鳴器的驅動腳連接到單片機的P4.0腳,在P4.0上輸出一小段脈衝信號,使蜂鳴器發聲。按鍵聲聽起來像「嘟,嘟」的聲音。
n 蜂鳴器-警報聲
蜂鳴器的驅動腳連接到單片機的P4.0腳,在P4.0上輸出一小段脈衝信號,使蜂鳴器發聲。使用定時器Timer2定時調用發聲程序產生警報聲效果。
n 串口收發-數碼管顯示
用開發板上的鍵盤陣列產生並通過串口發送字符』0』~』9』和』A』~』F』,同時也可通過串口接收字符』0』~』9』和』A』~』F』並顯示在數碼管上。Timer2用作串口波特率時鐘。
n 串口收發-LCD顯示
用開發板上的鍵盤陣列產生並通過串口發送字符』0』~』9』和』A』~』F』,同時也可通過串口接收字符並顯示在LCD屏上。Timer2用作串口波特率時鐘。
n LCD1602控制
運行於PC上的聯華眾科通信通軟件中集成了LCD1602顯示屏的測試程序,可以通過串口控制FA130上的LCD屏,實現清屏,顯示/關閉光標,寫入字符串,移動光標,換行等操作。
n I2C讀寫
開發板上的I2C設備為1片24C02,運行於PC上的聯華眾科通信通軟件中集成了24C02顯示屏的測試程序,可以通過串口到24C02進行讀取控制。
n SPI讀寫
開發板上的SPI設備為1片93C46,運行於PC上的聯華眾科通信通軟件中集成了93C46顯示屏的測試程序,可以通過串口到93C46進行讀取控制。
n WatchDog
單片機的WatchDog功能用於在程序跑飛或陷於死循環時,自動產生復位操作,以恢復系統功能。使用STC89LE52單片機時,通過讀寫寄存器WDT_CONTR設置和使用WatchDog功能。
n 外部中斷
STC89LE52可用外部中斷有4個,分別為INT0~3,可設置成邊沿觸發或電平觸發。FA130開發板上4個獨立按鍵連接到這4個中斷引腳,通過按鍵動作為中斷輸入信號,中斷服務程序中改變P1口0~3的輸出電平,從而改變LED的亮滅狀態,以便於觀察。
n 定時器T0-T1-T2
定時器中斷服務程序改變P1.0~P1.2的輸出電平,可以用示波器直接觀察,或觀察LED0~2的亮滅狀態表明中斷是否到來。
n 軟件仿真器
軟件仿真器的功能是在PC上實時查看開發板單片機上存儲器值,用以輔助調試之用。PC上使用的軟件為[聯華眾科通信通],可以查看單片機的內存地址範圍為0x30~0x7F,可查看的外部存儲器地址從0x0000開始字節長度可以任意設置。
單片機-FPGA通信開發實例
n 讀取撥碼開關狀態
FA130上的8位撥碼開關連接到EP1C3上,與單片機沒有直接連接。本實例單片機通過讀寫FPGA方式得到撥碼開關狀態,並顯示在8位LED上。本實例的通信方式也是單片機與FPGA通信最常見的方式。
n PS2鍵盤
由FPGA完成PS2鍵盤信號的分析,單片機讀取FPGA中PS2鍵盤按鍵值,顯示在LCD顯示屏上。
n FPGA串口接收-MCU_LCD顯示
連接到FPGA上的串口接收PC發來的數據,單片機從FPGA中讀到這些數據,並顯示在LCD屏上。本實例測試的開發板設備最多,包括FPGA串口,FPGA芯片,單片機,電平轉換芯片3245,以及LCD1602顯示屏。
n 上位機控制單片機-FPGA輸出PWM
上位機設定PWM的頻率和占空比,通過單片機串口發送到單片機,單片機驅動FPGA產生指定頻率和占空比的PWM信號。
VS.NET開發實例如下:
n Hello World
演示VS.NET 2005環境中新建工程,製作界面,編譯,調試運行等,本實例為基於對話框的Windows應用程序,顯示「Hello World」字樣。
n 文本框TextBox控件示例
演示TextBox控件文本的讀取,修改等。
n 列表框ComboBox控件示例
演示列表框ComboBox控件列表項的修改,列表選擇項的讀取等。
n 串口SerialPort控件示例
演示為應用程序添加串口SerialPort控件,設置串口參數,使用串口SerialPort控件收發數據。
n 繪圖GDI+示例
演示VS.NET 2005開發環境,C#編程語言,GDI+繪圖包的使用方法,將會在PictureBox控件上繪製一個矩形框,以及一個填充了的圓形。