基于FPGA的具有數字顯示的水溫測控系統
2.3 數字顯示
該系統采用較先進的液晶顯示屏對結果進行顯示,形象直觀。這里采用的是有機電致發光器件(Organic Light Emitting Device。OLED)SSD1303T6。OLED相對于液晶顯示器LCD來說,其主要優勢在于驅動電壓低,功耗小,主動發光,平板超薄,響應速度快,工藝相對簡單等。 SSD1303是晶門公司采用TAB封裝的單色OLED模組。這種基于CMOS工藝的驅動IC集成了行、列驅動器、控制器和SRAM,可支持的最大分辨率為132×64,可以顯示4色區域色,并可編程實現256灰度.可實現水平滾動顯示。SSD1303提供有6800,8080,SPI等用于與微處理器(MCU)進行通信的顯示接口模式。該設計中采用SPI接口進行通信。由于OLED控制芯片中未包含字庫,這里自行設計了字庫,采用8×8點陣顯示。字庫設計范例如圖3所示,其為字符“C”的字庫模型。本文引用地址:http://www.104case.com/article/191770.htm
該設計中所需字符比較簡單,按照需要自行設計了字符“O~9”,“.”,“:”,“T”。由于字庫較小,采用數組方式存放數據。如下程序所示。
{0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x00}, //[1]
{0x00,0x00,0xf1,0x91,0x91,0x8f,0x00,0x00}, //[2]
{0x00,0x00,0x91,0x91,0x91,0xff,0x00,0x00}, //[3]
{0x00,0x00,0x1f,0x10,0x10,0xff,0x00,0x00}, //[4]
{0x00,0x00,0x9f,0x91,0x91,0xf1,0x00,0x00}, //[5]
{0x00,0x00,0xff,0x91,0x91,0xf1, 0x00, 0x00}, //[6]
{0x00,0x00,0x01,0x01,0x01,0xff,0x00,0x00}, //[7]
{0x00,0x00,0xff,0x91,0x91,0xff,0x00,0x00}, //[8]
{0x00,0x00,0x8f,0x89,0x89,0xff,0x00,0x00}. //[9]
{0x04,0x02,0x82,0xfe,0x82,0x02,0x04.0x00}, //T[10]
{0x00,0x60,0x60,0x00, 0x00,0x00,0x00,0x00}, //.[11]
{0x00,0x6c,0x6c,0x00,0x00,0x00.0x00.0x00}, //:[12]
};
3 系統設計
這里設計的溫度測控系統采用Actel公司的SoPC解決方案,它基于嵌入式軟核CortexM1核,在性能上CortexM1可滿足當前大部分嵌入式產品的設計。該系統的主電路采用Actel公司提供的Fusion系列FPGA,實現溫度控制,由于加熱和制冷部分條件的限制,只采用模擬方式。電路可實現溫度顯示,設置上、下限溫度,超出范圍報警以及與PC機通信的功能。系統測量精度和控制精度均良好。
評論