dirty 发表于 2024-2-3 17:50

【安信可BW16-Kit】OLED显示

<div class='showpostmsg'> 本帖最后由 dirty 于 2024-2-3 17:52 编辑

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;本篇讲述在SDK上i2c驱动,实现oled显示。</p>

<p>一.硬件准备</p>

<p>oled模块---开发板</p>

<p>&nbsp; &nbsp; &nbsp; VCC---3V3</p>

<p>&nbsp; &nbsp; &nbsp; GND---GND</p>

<p>&nbsp; &nbsp; &nbsp; SDA---PA26</p>

<p>&nbsp; &nbsp; &nbsp; SCL---PA25</p>

<p>硬件连接如下图:</p>

<div style="text-align: center;"></div>

<div style="text-align: center;">图1:oled模块接线</div>

<p>二.代码准备</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.驱动源码oled.c,oled.h编写准备,并分别放在hp工程src_hp和inc_hp目录下,工程添加后如下</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>
</div>

<div style="text-align: center;">图2:工程源码添加</div>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;oled.c含oled初始化函数OLED_Init 和 显示函数OLED_Display ,供被调用。</p>

<p>2.Makefile修改</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;由于增加了oled.c源文件,需在src_hp下Makefile添加上.c文件如下</p>

<div style="text-align: center;"></div>

<div style="text-align: center;">图3:Makefile修改</div>

<p>3.创建并编写oled_task任务,且将user_rtos_init放在main函数 任务调度启动前。</p>

<div style="text-align: center;"></div>

<div style="text-align: center;">图4:创建并编写oled_task任务</div>

<p>4.编译,获取bin文件,烧录</p>

<p>&nbsp;</p>

<p>三.测验</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;上电可看到oled正常显示,效果如下:</p>

<div style="text-align: center;"></div>

<div style="text-align: center;">图5:oled显示效果</div>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至此,oled显示效果达成。在此也祝:2024龙年大吉</p>

<p>&nbsp;</p>
</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

12377777888 发表于 2025-1-5 10:50

<p>你好,可以提供一下oled.c和oled.h的源文件</p>
页: [1]
查看完整版本: 【安信可BW16-Kit】OLED显示