4D Systems 概览
最近有一个项目需要做一个培训课程计时器。该项目要求使用独立的触摸屏显示器,且能够与多个用户的加密狗配对。这意味着所考虑的解决方案需要支持在器件上进行编程、对加密狗进行无线控制并能够在显示器上指示课程状态。它还将包括一些支持元器件,如实时时钟和网状网络收发器,这些不在本文的探讨范围内。
了解所需的功能后,有许多选项可以满足要求。可以使用任意数量的微控制器,包括 Arduino 和 PIC 型微控制器。或者,可以使用单板计算机,例如 Raspberry PI。无论哪种方式,控制器还需要足够的 I/O,以便与显示器、实时时钟、用于信息存储的微型 SD 卡以及所选择的网状网络收发器通信。除微控制器之外,还需要触摸屏显示器。显示器必须足够大,以便为时间表提供空间,首选尺寸为 7 英寸左右。
上述每个选项都会以某种方式发挥作用,但也会因某种方式而受到限制。选择较小的 Arduino 和 PIC 虽然具有操作这类项目的足够处理能力,但很快就会耗尽 I/O。对应用来说,Raspberry PI 或类似的单板计算机很可能太过大材小用,但与基本的微控制器相比具有一些优势。无论哪种方式,所有这些选项都遇到了相同的困难,即图形用户界面 (GUI) 设计。有一些选项可以帮助构建微控制器和单板计算机的 GUI,但易用性和直观性均不如所选产品。
4D Systems 的 Gen4-uLCD-70DCT-CLB(DigiKey 零件编号 1613-1277-ND)结合 4D Systems 的 Gen4-PA(DigiKey 零件编号 1613-1210-ND)和 4D Workshop(DigiKey 零件编号),对于该项目而言是最佳解决方案。显示器由 Diablo16 处理器运行,该处理器还提供全套 I/O,并可与 SPI、I2C、串行、数字和模拟器件连接。最重要的是,显示器使用板载微型 SD 卡进行图像存储,可在编程中访问以存储数据。
该项目从 4D Workshop 开始。第一步是创建一个新的 4D Systems 项目并选择正确的显示类型。此时的问题是选择在哪个环境中设置显示器。选择包括 Designer、ViSi、ViSi Genie 和 Serial。对于此项目,在 ViSi Genie 中设置显示图形,然后将代码移植到 ViSi 以便访问 4DGL 代码。
ViSi Genie 允许以简单直观的方式进行全面的图形开发。该软件将以单页或表格开始。在这里,可将显示背景、按钮、数字、量表、I/O、输入、标签、magic、基元和系统/媒体对象放置并集成到项目中。选择对象并将其放入表单后,对象检查器可以进一步编辑对象。可以重命名对象,并在对象检查器的默认视图中编辑其属性。如果需要来自对象的简单命令,例如切换屏幕 LED 的按钮,则可以在称为“事件”的对象检查器的第二页上完成。如果需要多个表单,可以从设计器顶部的系统/媒体工具栏轻松添加。可以从顶部工具栏随时编译项目,并将其加载到显示器以检查功能性。在测试中,最好将默认目标设置为“Run RAM”(运行 RAM),以免浪费闪存写入周期。这可以在 Project(项目)选项卡上更改。
在开发所有图形并设置所有表单之后,项目被移植到 ViSi,以“所见即所得”的方式展现显示器和 4DGL IDE 编码环境。所有“主体”编码就是在这里使用 Diablo16 内部函数编写的。I2C 总线已设置为运行 RTC,以保留时间和日期。用于与网状网络收发器通信的所有 I/O 均在此环境中进行了编程,并且有多个事件驱动这些引脚。该特定项目需要保留一组变量,这些变量被写入位于显示器上的板载微型 SD 卡,以便在经过一个电源周期后保留下来。此外,所有运行定时器的比较代码均在此环境中编程。
总之,4D Systems 软件和显示器是一个功能强大且易于使用的选项。ViSi Genie 和 ViSi 的简单程序界面和自动生成代码的能力,使得图形开发工作能够快速完成。集成的 Diablo16 处理器提供了大量 I/O 和通信方法,可以在板上运行代码,也可以针对更深入的项目与其他器件连接。
Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum