【在esp32的3D打印机主板上配置marlin固件OLED】

这篇具有很好参考价值的文章主要介绍了【在esp32的3D打印机主板上配置marlin固件OLED】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在esp32控制器的3D打印机主板上配置marlin固件的OLED

先给出结论:在marlin固件中开启I2C OLED只能使用GPIO22->SCL GPIO21->SDA
因为marlin固件关于OLED的驱动都来自U8glib-HAL这个库。这个库是arduino的库。
而arduino的底层配置文件将GPIO22和GPIO21设置为了I2C接口

想着给es32的3D打印机主板的marlin中配置OLED。一开始的OLED的scl引脚连接的是IO17 sda引脚连接的是IO16,本想着在固件中去改io口.先是按照marlin官网Home | Marlin Firmware -> configure ->Configuration.h->LCD Controller->I2C Graphical LCDs->使能OLED_PANEL_TINYBOY2当前的定义。使能之后就可以使用oled 编码器,蜂鸣器。

DIY Tiny OLED I2C full graphics controller 详情见这篇帖子。这篇帖子的第7页给出了具体的修改方法。不过给出的是BTT SKR V1.4这个板子。不过问题不大。照着改就是了。
具体配置情况如下:
1、Configuration.h 文件中使能定义 OLED_PANEL_TINYBOY2

--- Marlin/Configuration.h 	
 // Tiny OLED 128x64 OLED, see [reprap.org]
 #define OLED_PANEL_TINYBOY2 

2、Marlin/src/inc/Conditionals_LCD.h配置如下代码(这个好像不用搞就行)

#define IS_U8GLIB_SSD1306
#define IS_ULTIPANEL

+ #elif ENABLED(OLED_PANEL_TINYOLED)
+  
+    #ifndef U8GLIB_SSD1306   // define U8GLIB_SSD1306 in Configuration.h if not using SH1106 version
+      #define U8GLIB_SH1106 // SSD1306 and SH1106 are similar, but have slightly different horizontal shift
+    #endif
+    #define ULTIPANEL
+    #define NEWPANEL
+    #define ULTRA_LCD
+    #define DOGLCD
+    #define REVERSE_ENCODER_DIRECTION
+    #define REVERSE_MENU_DIRECTION

3、在对应的pins文件夹中配置相关的板子的文件中的引脚,我选择的ESP32板子为 BOARD_ESPRESSIF_ESP32这板子对应的引脚为:Marlin\src\pins\esp32\pins_ESP32.h然后配置相应的引脚:

+    #define BTN_EN1                        16 //这个引脚定义自己的
+    #define BTN_EN2                        17
+    #define BTN_ENC                        18  
+    #define BEEPER_PIN                     19

如果不使用蜂鸣器的话可以将BEEPER_PIN注释掉或者引脚改为-1。

但是,配置中有编码器的引脚,有蜂鸣器的引脚就是没有scl和sda的引脚,那我的OLED屏幕怎么办。这让我百思不得其解,于是就开始了漫长的百度之旅。

直到我看到了(开源)ESP32 3D打印机主板的OLED显示屏,只能用4线OLED显示屏,专为我开源的主板设计的,其它主板不支持_哔哩哔哩_bilibili这个视频。简直如获至宝,赶紧下下来查阅一番。大体配置和上面相似,并且也没有配置scl和sda引脚,这不禁让人怀疑,两个板子都没有配置i2c的引脚,并且在祈-FPV开源的板子中这不禁让人怀疑是不是引脚的问题。
于是就开始查esp32nodemcu arduino的引脚图我发现仅有io22和io21标注了i2c标识。

我又搜索esp32 i2c arduino 于是我又发现了这篇文章:esp32 在arduino1.8下的I2C引脚

于是破案了。Arduino底层调用了io21和io22作为i2c引脚然后esp32的u8g2 oled图形库又sda和scl作为驱动oled。所以在marlin的引脚定义中没有定义关于I2C的引脚。因此得出结论,在marlin固件中esp32想要使用I2C OLED屏幕必须使用IO21和IO22引脚。文章来源地址https://www.toymoban.com/news/detail-409194.html

到了这里,关于【在esp32的3D打印机主板上配置marlin固件OLED】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DIY 3D打印机——【有啥用啥版】

    3D打印已经非常普及,手搓3D打印机的也很普遍了,不幸的是多年前买的三角洲(delta型)打印机年前罢工了,幸好它完成了一项重要使命:让手搓的铣床动起来,从而能够让铣床把受力部分的PLA零件自己加工电木板进行替换,所以有一台三轴铣床可以用来加工一些零件。即便

    2023年04月26日
    浏览(46)
  • 20个最流行的3D打印机切片软件

    3D 打印切片机(Slicer)通过生成 G 代码为你的 3D 打印机准备 3D 模型,G 代码是一种广泛使用的数控 (NC) 编程语言。 3D打印切片软件的选择范围很广。 因此,为了帮助你找到最合适的工具,本文列出了20个顶级 3D 打印切片软件工具。 推荐:用 NSDT设计器 快速搭建可编程3D场景

    2024年02月07日
    浏览(90)
  • 3D 打印机 G 代码命令:完整列表和教程

    查看原文 了解 G 代码命令将开启 3D 打印的下一个层次。继续阅读以快速了解此代码的基础知识! 内容 它是什么? 3D 打印的重要命令 G0 G1:直线运动 G90 G91:绝对和相对定位 G28 和 G29:汽车家庭和床调平 M104、M109、M140 和 M190:设定温度 M106 M107:风扇控制 程序结构 阶段 1:初

    2024年02月03日
    浏览(54)
  • STM32热敏打印机V1

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 生活中随处可见热敏打印机的身影,例如:小票打印机,标签打印机,热敏打印具有速度快、噪音低,打印清晰,使用方便的优点。本文记录从硬件设计到软件实现,动手做一个热敏打印机。 热敏打印

    2024年02月21日
    浏览(36)
  • 【花一周,打造属于自己的一台DIY3D打印机1.0】

    读者你们好!这是DIY系列的第一次,我希望这个系列能一直更新,也希望你们能从我的文章中有所收获。我也是小白,还需要继续努力,所以这篇文章会不定期更新,总结给大家相关的知识,将来这个系列也会更新别的DIY产品,这个系列并不局限于硬件,而是所有的DIY产品哦

    2023年04月13日
    浏览(41)
  • 如何在安卓端的SAP里配置打印机

    1、转到 SPAD 事务(“假脱机管理”屏幕)。单击“设备/服务器”选项卡,输入输出设备的名称,然后点击显示按钮。 2、如果打印机已配置,它将显示设备属性、输出设备属性和纸盒信息的所有详细信息。如果输入新的打印机名称,则将导航到以下屏幕。然后,单击 “更改

    2024年03月13日
    浏览(46)
  • C# 实现打印机队列监控Win32_PrintJob,Win32_Printer

    实现一个检测系统发出的打印队列文件,打印的状态,打印机状态的模块。 先上效果图 要用到Win32_PrintJob,Win32_Printer。 其中,Win32_Printer是打印机的各种状态和控制。 Win32_Printer 类 - Win32 apps | Microsoft Learn Win32_PrintJob是打印队列的各种数据和状态。Win32_PrintJob 类 - Win32 apps |

    2024年02月04日
    浏览(80)
  • 使用Vue @media print在JavaScript中插入不同尺寸的打印页面,可自定义尺寸大小和打印机配置

    本文介绍了如何在Vue项目中使用@media print和JavaScript来插入不同尺寸的打印页面,并提供了代码编写、使用教程、注意事项和避坑点,最后进行了总结。 在开发Web应用程序时,经常需要提供打印功能。Vue框架提供了@media print媒体查询,可以根据打印需求自定义打印页面的样式

    2024年02月05日
    浏览(110)
  • 惠普打印机---共享打印机安装 --连接

    输入 win+R ,再输入共享打印机的连接的IP 2.进入 连接 界面 3.右击打印机 ,点击连接 ,就可以添加打印机设备 方法二、 添加打印机

    2024年02月03日
    浏览(134)
  • Windows11连接共享打印机失败,提示以下错误:Windows 无法连接到打印机。请检查打打印机名并重试。如果这是网络打印机,请确保打印机已打开

    1.在确定打印机所在的主机是开机状态且局域网内其他电脑连接打印机正常情况下; 2.检查所需安装打印机的电脑打印服务运行状态; 2.1 按住Win+R键输入 services.msc 点击确 定后,打开服务; 2.2 Print Spooler、DCOM Server Process Launcher、RPC Endpoint Mapper,将其运行状态设置为自动启动

    2024年02月04日
    浏览(247)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包