问题标签 [mbed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 在每个类中使用 TFT 类作为 GUI(按钮、滑块...)
我正在为我的 mbed 微控制器开发一个 GUI,并且有一个小问题。我使用了一个 TFT 类,它具有 TFTobject->drawrect(x,y,height,width) 之类的功能
现在我想使用像 Button 和 Slider 这样具有抽象类 InterfaceElement 的类。但是每个 Button 或 Slider 都需要访问 drawrect 类。如果不为每个按钮/滑块使用指向 TFTobject 的指针,我怎样才能最简单地做到这一点(无法想象这将是这样做的方法)?
谢谢
c++ - 指向对象指针的空指针
我正在为 C++ 中的 mbed 微控制器开发 GUI,但遇到了一些问题。
情况是:具有小部件虚拟父功能的不同小部件类(按钮、滑块...)。然后是带有(gridLayout,...)等类的虚函数布局。布局具有类似 layout.add(*widget) 的功能,可将小部件指针添加到向量。然后我有一个控制器函数来处理触摸事件并使用当前活动布局来检查在触摸的 x,y 坐标处的布局中正确的小部件是什么。
现在我想在小部件类中添加一个指向布局的指针,以便控制器类可以在需要时更改 activeLayout。还有一个函数指针,因此控制器可以在使用小部件时运行某个函数。
现在的问题:我想做这样的事情:
但是后来我需要包含布局类,而布局类已经包含了小部件类-->错误!最简单的方法是什么?我已经尝试过 void* 指针,然后对 Layout 进行静态转换,但这没有用。
我还需要在每个小部件和布局中包含一个 TFT 类,最简单的方法是什么?现在我只有一个 Display.h :
但我真的不认为这是做这样的事情的正确方法。
非常感谢您的帮助!
c++ - mBed C++ 在 RtosThread 中使用 RtosTimer
我正在编写一些软件来控制四轴飞行器,并且完全被 RtosTimers 卡住了。我收到错误“错误:没有构造函数实例“rtos::RtosTimer::RtosTimer”与“flightController.h”中的参数列表匹配,行:13,列:29”
我查看了手册中的示例代码,我的代码似乎匹配。我也用谷歌搜索过,但我找不到在 RtosThreads 中使用 RtosTimers 的任何内容。
也许我正在以错误的方式解决这个问题,所以如果有人有任何建议,将不胜感激。
这是导致我出现问题的代码
}
我的程序可以在http://mbed.org/users/joe4465/code/QuadMK5/找到
问题出在 flightController.h 我认为应该清楚我要做什么,但如果有人不确定,请告诉我。
我还有另一个完全不相关的问题。我可以通过串行设置我的 PID 变量,然后将它们保存到配置文件中,但是如果在将数据保存到文件后会挂起,那么 3 次中有 1 次会挂起,我不知道为什么。有谁知道可能导致这种情况的原因?
谢谢乔
c - 使用 C 与 mbed 通信
如何在不使用 minicom 或 teraterm 等终端仿真器的情况下使用 C 与 mbed LPC1768 通信?
例如,如果我从我的 C 代码中发送一个整数,那么应该打开那个 led。
我怎样才能做到这一点?
android - 无法导入 com.android.future.usb.*
我正在按照步骤使用 ADK 通过 Android Studio 控制 mbed
但是他们的 mbed adkport 代码(向下滚动到 adkport 超链接)需要这些导入
我注意到另一个线程建议开发人员的解决方案是将其切换到 android.hardware.usb,但是当我这样做时,3 条不同的行将不起作用,因为基于硬件的包不支持 getAccessory和getInstance符号
这个问题有什么解决办法吗?无法理解它
我尝试按照替换代码的步骤来使用 android.hardware.usb 但我仍然遇到他们自己的android 开发人员例程的问题
但是现在它无法识别 getSystemService
这就是失败的地方。
embedded - 有软件问题的 VCO
我有一个带有 AD5791 和 LPC1768 的 VCO。我可以读写 AD5791 的 DAC 寄存器,但无法修改输出频率或电压。当 AD5791 直接连接到电源时,我可以按预期修改频率。因此,我认为这是一个软件问题。我的代码在这里:
任何输入将不胜感激!谢谢!
linux - 自定义网络堆栈发送 UDP 数据包的最低要求?
(编辑:已解决——见下文)
这是我的情况:
在网络上,我只希望他们使用端口 2225 上的 UDP 数据包交换消息。特别是,TL-MR3020 必须每秒定期向 192.168.2.16:2225 发送数据包,而 mbed 必须每 50 毫秒定期向 192.168.2.1 发送数据包:2225。
一切都很好,直到我从 mbed(lwIP,对我来说不是那么轻量级)中删除了网络堆栈库并编写了一个新的最小堆栈。
我的新堆栈在以太网链路启动后发送 5 个免费 ARP 回复,然后开始发送和接收 udp 数据包。
现在 TL-MR3020 没有收到任何 UDP 数据包。特别是,ifconfig
我可以看到数据包来了,但我的应用程序无法获取它们。
此外,如果我连接笔记本电脑而不是 TL-MR3020,我可以看到使用 Wireshark 的 UDP 数据包。没有任何问题,除了为我的应用程序完成。
我有一个 node.js 脚本必须接收数据包,但它什么也没有收到,但是如果我从本地发送 UDP 数据包到本地,脚本会接收它们。
我认为我的应用程序还可以,因为 SOCAT 都不能使用socat - UDP-LISTEN:2225
.
我已经检查过 TL-MR3020:
- arp 表具有正确的 ip-mac 关联
- 目标 MAC 地址与传入接口匹配
- 目标 IP 地址与传入接口匹配
- IP校验和:wireshark说好=假,坏=假
- UDP校验和:wireshark说好=假,坏=假
所以,我在问......自定义网络堆栈发送 UDP 数据包的最低要求是什么?
解决了:
- 您需要在 IP 标头中有一个好的校验和。
- UDP校验和,我的例子,可以设置为零。
tcpdump
非常有帮助(感谢 AndrewMcDonnell)
can-bus - 在 mbed LPC1768 上将模拟输入转换为 CAN 的数字输入
我需要代码帮助,将 mbed LPC1768 上的 AnalogIn 输入转换为 CAN 控制器使用的数字。我使用的示例语法是
其中“ counter
”是要传输的数据,我将其定义为带符号的 int(但示例将其定义为 char)。但我不断收到一条错误消息
控制器 CANMessage 语法是
我真的不明白控制器语法以及如何应用它。任何解释方面的帮助将不胜感激。谢谢
c++ - 仅红色 RGB 24 位 c
我正在使用以下代码使用 OV7670 相机、mbed 和激光
我希望程序Maximo[i]
从 RGB 24 位图像中存储最大强度像素,但在 OV7670 抓取器中(https://mbed.org/users/edodm85/code/OV7670_Test_Code/file/d0d4760d32b2/main.cpp)它只显示黑白图像。
你能给我一些建议吗?提前致谢!