数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 1174|回复: 0

[C51] 贴一个SSD1306的打点程序

[复制链接]
发表于 2021-11-16 15:03:10 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
SSD1306,0.96寸OLED,128x64点阵,用于显示波形图
void Write_Waveform(unsigned char n,unsigned char dat)//写波形,n:x坐标,dat:y坐标数据
{
    unsigned char H,L,x,y,i;
    H=(n>>4)|0x10;
    L=n&0x0f;
    if(n<128&&dat<64)//只接受横向坐标0-127,纵向坐标0-63
    {
        x=dat%8;//取余,判断数据的纵向坐标位置
        if(dat>=8)
        {
            y=dat/8;//取整 判断数据所在页
            y=7-y;               
        }
        else
        {
            y=7;
        }
        for (i=0;i<8;i++)
        {
            SSD1306_Writecom(0xb0+i);//set page address设置页面地址
            SSD1306_Writecom(L);    //set lower column address设置列地址低位      
            SSD1306_Writecom(H);    //set higher column address设置列地址高位                        
            if(y==i)
            {
                switch(x)
                {
                    case 0:
                        SSD1306_Writedat(0x80);
                        break;
                    case 1:
                        SSD1306_Writedat(0x40);
                        break;
                    case 2:
                        SSD1306_Writedat(0x20);
                        break;
                    case 3:
                        SSD1306_Writedat(0x10);
                        break;
                    case 4:
                        SSD1306_Writedat(0x08);
                        break;               
                    case 5:
                        SSD1306_Writedat(0x04);
                        break;
                    case 6:
                        SSD1306_Writedat(0x02);
                        break;
                    case 7:
                        SSD1306_Writedat(0x01);
                        break;
                    default:
                    break;
                }        
            }
            else
            {
                SSD1306_Writedat(0x00);
            }        
        }
    }
}



打赏

参与人数 1家元 +40 收起 理由
ke1986150 + 40

查看全部打赏

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-10 05:44 , Processed in 0.390001 second(s), 13 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表