久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4520|回復: 1
打印 上一主題 下一主題
收起左側

基于MSP430F5529的OLED驅動程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:617067 發表于 2020-7-15 17:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
壓縮包中代碼

單片機源程序如下:
  1. /*
  2. * OLED_IIC.c
  3. *
  4. *  Created on: 2020年7月15日
  5. *      Author: 13293
  6. */
  7. #include "OLED_IIC.h"
  8. #include "stdlib.h"
  9. #include "OLED_FONT.h"
  10. #include <msp430.h>
  11. //OLED延時功能
  12. void delayms(uint x)
  13. {
  14.     uint i,j;
  15.     for(i=x;i>0;i--)
  16.         for(j=110;j>0;j--);
  17. }
  18. //IIC開始
  19. void oled_IIC_Start()
  20. {
  21.    oled_SCL_1;
  22.    oled_SDA_1;
  23.    oled_SDA_0;
  24.    oled_SCL_0;
  25. }
  26. //IIC停止
  27. void oled_IIC_Stop()
  28. {
  29.    oled_SCL_0;
  30.    oled_SDA_0;
  31.    oled_SCL_1;
  32.    oled_SDA_1;
  33. }
  34. //IIC寫字節
  35. void oled_Write_IIC_Byte(uchar IIC_Byte)
  36. {
  37.     uchar i;
  38.     for(i=0;i<8;i++)
  39.     {
  40.         if(IIC_Byte & 0x80)
  41.             oled_SDA_1;
  42.         else
  43.         oled_SDA_0;
  44.         oled_SCL_1;
  45.         oled_SCL_0;
  46.         IIC_Byte<<=1;
  47.     }
  48.     oled_SDA_1;
  49.     oled_SCL_1;
  50.     oled_SCL_0;
  51. }
  52. //IIC寫入數據
  53. void OLED_12864_Write_data(uint dat)
  54. {
  55.     oled_IIC_Start();
  56.     oled_Write_IIC_Byte(0x78);
  57.     oled_Write_IIC_Byte(0x40);
  58.     oled_Write_IIC_Byte(dat);
  59.     oled_IIC_Stop();
  60. }
  61. //IIC寫入命令
  62. void OLED_12864_Write_commomand(uint dat)
  63. {
  64.     oled_IIC_Start();
  65.     oled_Write_IIC_Byte(0x78);
  66.     oled_Write_IIC_Byte(0x00);
  67.     oled_Write_IIC_Byte(dat);
  68.     oled_IIC_Stop();
  69. }
  70. //OLED設置起始坐標
  71. void OLED_SetPos(uchar x, uchar y)
  72. {
  73.     OLED_12864_Write_commomand(0xb0+y);
  74.     OLED_12864_Write_commomand(((x&0xf0)>>4)|0x10);
  75.     OLED_12864_Write_commomand((x&0x0f)|0x01);
  76. }
  77. //IIC OLED屏幕填充
  78. void OLED_Fill(uchar bmp_dat)
  79. {
  80.     uchar y,x;
  81.     for(y=0;y<8;y++)
  82.     {
  83.         OLED_12864_Write_commomand(0xb0+y);
  84.         OLED_12864_Write_commomand(0x01);
  85.         OLED_12864_Write_commomand(0x10);
  86.         for(x=0;x<128;x++)
  87.         OLED_12864_Write_data(bmp_dat);
  88.     }
  89. }
  90. //OLED12864初始化
  91. void OLED_12864_Init()
  92. {
  93.     oled_IO_init;
  94.     delayms(500);                       //初始化之前的延時很重要!
  95.     OLED_12864_Write_commomand(0xae);
  96.     OLED_12864_Write_commomand(0x00);
  97.     OLED_12864_Write_commomand(0x10);
  98.     OLED_12864_Write_commomand(0x40);
  99.     OLED_12864_Write_commomand(0x81);
  100.     OLED_12864_Write_commomand(0xFF);//設置OLED亮度
  101.     OLED_12864_Write_commomand(0xa1);
  102.     OLED_12864_Write_commomand(0xc8);
  103.     OLED_12864_Write_commomand(0xa6);
  104.     OLED_12864_Write_commomand(0xa8);
  105.     OLED_12864_Write_commomand(0x3f);
  106.     OLED_12864_Write_commomand(0xd3);
  107.     OLED_12864_Write_commomand(0x00);
  108.     OLED_12864_Write_commomand(0xd5);
  109.     OLED_12864_Write_commomand(0x80);
  110.     OLED_12864_Write_commomand(0xd9);
  111.     OLED_12864_Write_commomand(0xf1);
  112.     OLED_12864_Write_commomand(0xda);
  113.     OLED_12864_Write_commomand(0x12);
  114.     OLED_12864_Write_commomand(0xdb);
  115.     OLED_12864_Write_commomand(0x40);
  116.     OLED_12864_Write_commomand(0x20);
  117.     OLED_12864_Write_commomand(0x02);
  118.     OLED_12864_Write_commomand(0x8d);
  119.     OLED_12864_Write_commomand(0x14);
  120.     OLED_12864_Write_commomand(0xa4);
  121.     OLED_12864_Write_commomand(0xa6);
  122.     OLED_12864_Write_commomand(0xaf);
  123.     OLED_Fill(0x00);                    //清屏
  124.     OLED_SetPos(0,0);
  125. }
  126. //IIC OLED顯示單個字符
  127. void OLED_8x16Str(uchar x, uchar y, uchar ch)
  128. {
  129.     uchar i=0;
  130.     if(x>120)
  131.     {
  132.         x=0;y++;
  133.     }
  134.     OLED_SetPos(x,y);
  135.     for(i=0;i<8;i++)
  136.     {
  137.         OLED_12864_Write_data(F8X16[ch*16+i]);
  138.     }
  139.     OLED_SetPos(x,y+1);
  140.     for(i=0;i<8;i++)
  141.     {
  142.         OLED_12864_Write_data(F8X16[ch*16+i+8]);
  143.     }
  144. }
  145. //IIC OLED顯示字符串
  146. void OLED_ShowStr(uchar x, uchar y, uchar ch[])
  147. {
  148.     uchar c = 0,i = 0,j = 0;
  149.     //'\0'位字符串結束標志
  150.     while(ch[j] != '\0')
  151.     {
  152.         c = ch[j] - 32;
  153.         if(x > 120)
  154.         {
  155.             x = 0;
  156.             y++;
  157.         }
  158.         OLED_SetPos(x,y);
  159.         for(i=0;i<8;i++)
  160.             OLED_12864_Write_data(F8X16[c*16+i]);
  161.         OLED_SetPos(x,y+1);
  162.         for(i=0;i<8;i++)
  163.             OLED_12864_Write_data(F8X16[c*16+i+8]);
  164.         x += 8;
  165.         j++;
  166.     }
  167. }

  168. //顯示16*32的坐標(x,y),y為頁范圍0~7---分四部分
  169. void OLED_16x32(uchar x, uchar y, uchar ch)
  170. {
  171.     uchar i=0;
  172.     if(x>120)
  173.     {
  174.         x=0;y++;
  175.     }
  176.     OLED_SetPos(x,y);
  177.     for(i=0;i<16;i++)
  178.     {
  179.         OLED_12864_Write_data(F16X32[ch*64+i]);
  180.     }
  181.     OLED_SetPos(x,y+1);
  182. ……………………

  183. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
OLED.rar (4.3 KB, 下載次數: 126)


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

使用道具 舉報

沙發
ID:822806 發表于 2020-9-24 14:37 | 只看該作者
這個oled是所有oled都適用嘛
回復

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品中文在线观看 | 日本啊v在线 | 五月婷婷婷 | 国产精品美女久久久久aⅴ国产馆 | 国产综合视频 | 精品久久久久久久久亚洲 | 国产欧美一区二区三区久久 | 天天操天天干天天爽 | av网站免费观看 | 亚洲成人网在线 | 亚洲视频一区 | 亚洲一区 中文字幕 | 成人网址在线观看 | 日韩中文字幕在线视频 | 中文字幕欧美一区 | 国产高清一区二区三区 | 国产性网| 国产日韩精品视频 | 免费天天干 | 成人欧美一区二区 | 国产精品美女一区二区 | 青青操av | 欧美日韩激情 | 久久国产精品一区二区 | av一区在线 | 最近日韩中文字幕 | 一级大片网站 | 亚洲激情综合 | 欧美精品1区2区3区 免费黄篇 | 久久成人免费观看 | 自拍偷拍第一页 | 国产福利在线 | 欧美黑人一级爽快片淫片高清 | 久久久这里都是精品 | www日本在线播放 | 欧美在线一区二区三区 | 风间由美一区二区三区在线观看 | 日韩一区二区三区在线视频 | 999免费视频| a爱视频| 色噜噜色综合 |