日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > ZYNQ



這個(gè)小型圖形庫(kù)提供點(diǎn)、線和字符繪圖命令,用于 ATtiny85 上的 I2C 128x64 OLED 顯示器。


它通過(guò)避免顯緩沖器來(lái)支持RAM有限的處理器,并且可以與基于SH1106驅(qū)動(dòng)芯片的I2C OLED顯示器配合使用。


我用 Banggood [3] 提供的 Geekcreit 1.3 英寸 I2C OLED 顯示器測(cè)試了這個(gè)庫(kù):


由于 I2C 只需要兩條 I/O 線,因此圖形顯示可在 ATtiny85 上留出三行空閑線路供您自己的應(yīng)用程序使用:


請(qǐng)注意,此庫(kù)僅適用于具有四個(gè)引腳的 I2C 顯示器。它不適用于SPI顯示器或基于SSD1306或SSD1309驅(qū)動(dòng)程序芯片的顯示器,因?yàn)檫@些都不支持讀回顯示器內(nèi)存。

顯示器分為 8 個(gè) 8 像素高帶(稱為頁(yè)面),一個(gè)字節(jié)對(duì)應(yīng)于 8 個(gè)像素的垂直列,位的排序如下圖所示:



這是一個(gè)基于ST7735和ST7789驅(qū)動(dòng)芯片的小型彩色TFT顯示器系列的圖形庫(kù)。

此庫(kù)允許您使用可選比例因子繪制點(diǎn)、繪制線條、繪制填充矩形和打印文本。項(xiàng)目中包括了一個(gè)演示直方圖繪圖程序,該程序可以調(diào)整自身以適應(yīng)支持的每個(gè)顯示器。
與大多數(shù)其他TFT顯示庫(kù)不同,該庫(kù)不需要內(nèi)存緩沖區(qū),允許它在任何處理器上運(yùn)行,直到ATtiny85。
這些顯示器是SPI的,需要四個(gè)引腳來(lái)驅(qū)動(dòng)顯示器,在ATtiny85上留出一個(gè)引腳以連接到另一個(gè)器件,例如溫度傳感器。如果需要更多引腳,請(qǐng)選擇更大的芯片,例如ATtiny84;
測(cè)試源碼:
const int Now = 1547; // To set the time; eg 15:47unsigned long StartMins = (unsigned long)((Now/100)*60 + (Now%100)); void loop () { unsigned int SampleNo = StartMins/15; // Plot temperature graph int x1 = 16, y1 = 11; int yscale = 2; // Points per degree MoveTo(26, 56); PlotText(PSTR("Temperature ~C")); // Horizontal axis MoveTo(x1, y1); DrawTo(x1+96, y1); for (int i=0; i<=24; i=i+4) { int mark = x1+i*4; MoveTo(mark, y1); DrawTo(mark, y1-2); int tens = i/10; if (tens != 0) { PlotChar(tens+'0', mark-6, y1-12); PlotChar(i%10+'0', mark, y1-12); } else PlotChar(i%10+'0', mark-3, y1-12); } // Vertical axis MoveTo(x1, y1); DrawTo(x1, y1+50); for (int i=5; i<=25; i=i+5) { int mark = y1+i*yscale-10; MoveTo(x1, mark); DrawTo(x1-2, mark); int tens = i/10; if (tens != 0) PlotChar(tens+'0', x1-15, mark-3); PlotChar(i%10+'0', x1-9, mark-3); } for (;;) { // Now start plotting the temperature every 15 mins while ((unsigned long) ((StartMins + millis()/60000)/15)%96 == SampleNo); // Time to take a new reading SampleNo = (SampleNo+1)%96; int Temperature = (analogRead(A2)*25)/233; // In half degrees  PlotPoint(SampleNo+x1, Temperature-10+y1); }}

項(xiàng)目源碼都可以在以下兩個(gè)鏈接中找到,這里就不過(guò)多介紹了,感興趣的可以直接看看。
Tiny Graphics Library:http://www.technoblogy.com/show?23OS

Tiny TFT Graphics Library:http://www.technoblogy.com/show?L6I


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉