找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2780|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

0.96寸OLED顯示屏STM32F1 SPI驅(qū)動程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:531397 發(fā)表于 2019-5-14 10:52 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 Yr~ 于 2019-5-16 14:20 編輯

包含字符顯示驅(qū)動、清屏驅(qū)動、數(shù)字顯示驅(qū)動、字符串顯示驅(qū)動、圖片顯示驅(qū)動、漢字顯示驅(qū)動
void OLED_ShowChar(u8 x,u8 y,u8 chr);
void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size);
void OLED_ShowString(u8 x,u8 y, u8 *p);         
void OLED_Set_Pos(unsigned char x, unsigned char y);
void OLED_ShowCHinese(u8 x,u8 y,u8 no);
void OLED_DrawBMP(unsigned char x0, unsigned char y0,unsigned char x1, unsigned char y1,unsigned char BMP[]);



//主函數(shù)
int main(void)
{        u8 t;
                delay_init();            
                NVIC_Configuration();
                OLED_Init();        
                OLED_Clear()          ;
                t=' ';
        while(1)
        {               
                OLED_Clear();
                OLED_ShowString(0,3,"1.3' OLED TEST");
                OLED_ShowString(0,6,"ASCII:");  
                OLED_ShowString(63,6,"CODE:");  
                OLED_ShowChar(48,6,t);
                t++;
                if(t>'~')t=' ';
                OLED_ShowNum(103,6,t,3,16);
                        
               
                delay_ms(8000);
                OLED_Clear();
                delay_ms(8000);
                OLED_DrawBMP(0,0,128,8,BMP1);
                delay_ms(8000);
                OLED_DrawBMP(0,0,128,8,BMP2);
                delay_ms(8000);
        }         
        
}
//在指定位置顯示一個字符
//x:0~127
//y:0~63
//mode:0,反白顯示  1,正常顯示                                 
//size:選擇字體 16/12
void OLED_ShowChar(u8 x,u8 y,u8 chr)
{              
        unsigned char c=0,i=0;        
                c=chr-' ';//μÃμ½Æ«òÆoóμÄÖμ                        
                if(x>Max_Column-1){x=0;y=y+2;}
                if(SIZE ==16)
                        {
                        OLED_Set_Pos(x,y);        
                        for(i=0;i<8;i++)
                        OLED_WR_Byte(F8X16[c*16+i],OLED_DATA);
                        OLED_Set_Pos(x,y+1);
                        for(i=0;i<8;i++)
                        OLED_WR_Byte(F8X16[c*16+i+8],OLED_DATA);
                        }
                        else {        
                                OLED_Set_Pos(x,y+1);
                                for(i=0;i<6;i++)
                                OLED_WR_Byte(F6x8[c],OLED_DATA);
                                
                        }
}

剩余程序源碼請下載附件

TIM圖片20190516141325.png (9.05 KB, 下載次數(shù): 40)

連線說明

連線說明

0.96OLED.7z

189.28 KB, 下載次數(shù): 92, 下載積分: 黑幣 -5

例程下載

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:1 發(fā)表于 2019-5-14 18:08 | 只看該作者
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復(fù)

使用道具 舉報

板凳
ID:286309 發(fā)表于 2019-8-5 14:54 | 只看該作者
和我想的不一樣
回復(fù)

使用道具 舉報

地板
ID:438950 發(fā)表于 2020-7-23 14:12 | 只看該作者
程序下不進板子
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表