導航:首頁 > 操作系統 > oled51單片機

oled51單片機

發布時間:2022-10-30 09:45:11

A. 0.96寸OLED屏怎麼和51單片機接線

看說明書呀,和1602液晶屏類似,用一個完整的埠作為數據囗,另外三根控制線接單片機三個任意IO口即可。也有OLED屏是串口傳輸的。

B. OLED怎樣實時顯示51單片機測得的數據

先實現劃線的函數,把相鄰的采樣點轉化為屏幕坐標之後,連接起來就可以了,下面劃線函數可以作為參考

void Line(char x1,char y1,char x2,char y2)
{
char xdelta; // width of rectangle around line
char ydelta; // height of rectangle around line
char xinc; //increment for moving x coordinate
char yinc; //increment for moving y coordinate
char rem; //current remainder
//Bool bit = 0;//used for dashed lines
char s,e; //Start,End
//See if the line is horizontal or vertical. If so, then call special routines.
if (y1 == y2)
{ //draw a horizontal line
if(x1 > x2 ) s = x2,e = x1;
else s = x1,e = x2;
for(; s <= e; s++) SetPixel(s,y1,1);
}
else if (x1 == x2)
{//draw a vertical line
if(y1 > y2 ) s = y2,e = y1;
else s = y1,e = y2;
for(; s <= e; s++) SetPixel(x1,s,1);
}
else
{// The line may be partially obscured. Do the draw line algorithm
// checking each point against the clipping regions.
xdelta = x2 - x1;
ydelta = y2 - y1;
if (xdelta < 0) xdelta = -xdelta;
if (ydelta < 0) ydelta = -ydelta;
xinc = (x2 > x1)? 1 : -1;
yinc = (y2 > y1)? 1 : -1;
// draw the first point
//SetPixel( x1, y1, 1);
if (xdelta >= ydelta)
{
rem = xdelta / 2;
for (;x1 != x2; x1 += xinc)
{
SetPixel(x1, y1,1);
rem += ydelta;
if (rem >= xdelta){
rem -= xdelta;
y1 += yinc;
}
}
}
else
{
rem = ydelta / 2;
for (;y1 != y2; y1 += yinc)
{
SetPixel(x1, y1,1);
rem += xdelta;
if (rem >= ydelta) {
rem -= ydelta;
x1 += xinc;
}
}
}
}
g_nCoordinateX = x2;//
g_nCoordinateY = y2;
}

C. 新手51單片機OLED使用請教

LED 屏的操作;與所用的處理器平台沒有關系。 因為大家對 C51 單片機相對都比較熟悉;大學里基本上都學習過;在此我以 C51 的程序來作簡單說明

D. 怎樣用oled12864畫一個點我的是淘寶上常見的0.96『的OLED。求51單片機的程序。

首先建個顯存數組,將要顯示的數據寫入顯存里,再將整個顯存通過顯示圖片的方式寫入5110的RAM里顯示就OK啦!我的12864OLED也讀不出內部的DDRAM,但我剛用這種方法給12864OLED打點了。

unsignedcharxdatamemory[128];//顯存


//在隨意坐標上畫點
voidOLED_Drawpoint(unsignedcharx,unsignedchary,bitdat)
{//x,y,行列坐標;dat,1寫,0擦除
unsignedcharrdata;
rdata=memory[y/8*128+x];//先將對應的位元組數據從顯存數組讀出來
if(dat==1){
memory[y/8*128+x]=rdata|(0x01<<(y%8));//將讀出來的數據加上添加點的數據
}
else{
memory[y/8*128+x]=rdata-(0x01<<(y%8));
}
}


OLED_DrawBMP(0,0,128,8,memory);//(顯示圖片函數)將顯存的數據導入顯示屏

E. 怎麼用51單片機控制OLED 顯示屏

你可以參考這篇文字:51單片機OLED顯示時鍾

F. keil實現oled屏不能顯示

字元錯誤。
使用51單片機驅動oled顯示屏,提供字元串顯示和浮點數顯示函數,提供主函數供參考調用方法。將OLED 模塊連接在PB6與PB7所在的埠上。打開STM32CubeMx,配置好SYS和RCC,然後將PB6配置為I2C1_SCL,PB7配置為I2C1_SDA,然後在左側I2C1選項中使能I2C。

G. 51單片機oled怎樣增快清屏函數的刷屏速度

序肯定是有問題了,現讓液晶顯示出來內容,這樣就說明1602的驅動是對的,
#include<stc.h>#define uchar unsigned char
#define uint unsigned int
uchar code table[]="SHUZILEIDA"; //讓液晶顯示這兩行字
uchar code table1[]="IIS80.COM!";

sbit lcdrs=P1^5; //數據/命令選擇端sbit lcdrw=P1^6;
sbit lcden=P1^7; //液晶使能信號

sbit an=P1^0; // 數碼管段控制sbit wei=P1^1; // 數碼管位控制
sbit rst=P3^4;//DS1302復位端,低電平關閉 uchar num;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

void write_com(uchar com) //命令{
lcdrs=0; //選擇寫命令
P0=com;
delay(5);
lcden=1; //使能信號
delay(5);
lcden=0; //關閉使能
}

void write_data(uchar date) //數據{
lcdrs=1; //選擇寫數據
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}

void init(){
lcden=0;
write_com(0x38); //00111000 設置16*2顯示,5*7點陣 8為數據介面
write_com(0x0c); //00001100 設置開顯示,不顯示游標
write_com(0x06); // 00000110 寫一個字元後地址指針加 1
write_com(0x01); //00000001 顯示清0,數據指針清零 /* */

}

void main(){
P0=0XFF;
wei=0;
P0=0X00;
an=0; //關閉數碼管

lcdrw=0; //lcd寫操作
init();
write_com(0x80+0x10+0x03); // 數據行位置

for(num=0;num<10;num++) {
write_data(table[num]);
delay(20);
}
write_com(0x80+0x40);// 數據行位置 for(num=0;num<10;num++)
{
write_data(table1[num]);
delay(20);
}
/* for(num=0;num<16;num++) //屏幕左移
{
write_com(0x18);
delay(2000);
} */
while(1);
}

H. 51單片機oled 怎麼調節字體大小

要看你程序所使用的庫函數,如果庫函數支持調節字體 改相應參數就行了, 如果不支持建議去找相應庫函數,自己寫比較麻煩 每一個字都需要取模 然後利用顯示bmp圖片的函數顯示出來

I. 51單片機,我買了個OLED屏,他們說這樣用 我不懂 誰幫幫我,秋秋2812388789

關鍵是你怎麼用,選OLED模塊沒什麼問題的,和單片機完全可以介面,當然,OLED模塊3.3V居多,51單片機是5V的,如果你買的是3.3V的當然會有問題。

J. 0.91寸oled顯示屏怎麼顯示32x32點陣的漢字

顯示32x32點陣的方法和顯示16x16點陣的方法是一樣的;
16x16點陣就是要在同一行或者同一列中連續讀取並輸出2位元組數據;
同理,32x32點陣就是要在同一行或者同一列中連續讀取並輸出4位元組數據;
至於位元組數據是先輸出低位或者高位,就看你的字模選擇了;

閱讀全文

與oled51單片機相關的資料

熱點內容
相機卡滿了沒文件夾 瀏覽:747
如何批量快速壓縮視頻 瀏覽:432
我的世界如何加入ice伺服器 瀏覽:873
兄弟cnc編程說明書 瀏覽:204
php閃電入門教程學習 瀏覽:152
金岳霖邏輯pdf 瀏覽:938
linuxtomcat線程 瀏覽:77
pboc長度加數據加密 瀏覽:187
英雄聯盟國際服手游怎麼下安卓 瀏覽:297
程序員的思路 瀏覽:234
只能用命令獲得的四種方塊 瀏覽:358
怎麼用命令方塊防止開創造 瀏覽:807
掃描版的pdf 瀏覽:790
編程貓怎樣做3d游戲 瀏覽:207
怎麼查找雲伺服器上的ftp 瀏覽:156
我的世界伺服器如何注冊賬號 瀏覽:934
統計英文字元python 瀏覽:424
linux信息安全 瀏覽:910
壓縮機接線柱爆 瀏覽:1001
程序員自主創業 瀏覽:586