小编Cli*_*ord的帖子

对于嵌入式程序,CORBA/RPC是否有轻量级的类似物?

我正在为不同的硬件(avr,arm7,tms55xx ......)和不同的rtoses(freeRTOS,rtx,dsp/bios)编写嵌入式应用程序.而且他们每一秒都需要与PC或其他数字设备进行通信.有时,交互逻辑非常先进.所以我对常用的方法(如状态机编程风格),协议规范或库感兴趣,可以简化开发这样的事情.

embedded networking rtos

5
推荐指数
1
解决办法
3982
查看次数

从USB Virtual Com Port设备检测打开的PC COM端口

我正在使用带有STM32_USB-FS-Device_Lib_V3.2.1 USB库的STM32F105微控制器,并根据我们的目的调整了VCP示例(与RTOS和串行API集成).

问题是如果连接了USB电缆,但是Windows主机上没有打开端口,几分钟后设备会永久重新进入USB ISR,直到端口打开然后一切正常开始工作.

我已经检测了中断处理程序并且可以看到当故障发生时,ISR处理程序退出然后立即重新进入.发生这种情况是因为在退出中断时,OTG_FS_GINTSTS中的IEPINT标志不清楚.此时OTG_FS_DAINT包含0x00000002(IEPINT1设置),而DIEPINT1包含0x00000080(TXFE).调用清除TXFE的OTGD_FS_Handle_InEP_ISR()中的行,但该位不清除或立即重新置位.当主机上的COM端口重新打开时,中断结束时OTG_FS_GINTSTS和OTG_FS_DAINT的状态始终为零,并且以正常速率发生进一步的中断.请注意,只有在输出数据但主机没有打开端口时才会出现此问题.如果端口打开或没有输出数据,系统将无限期运行.我相信输出的数据越多,问题就越早出现,但目前这是轶事.

VCP代码有一个状态变量,它接受以下枚举值:

  UNCONNECTED,
  ATTACHED,
  POWERED,
  SUSPENDED,
  ADDRESSED,
  CONFIGURED
Run Code Online (Sandbox Code Playgroud)

我们使用CONFIGURED状态来确定是否将数据放入驱动程序缓冲区以进行发送.但是,当连接电缆而不是主机打开端口并连接应用程序时,将设置CONFIGURED状态.我看到当Windows打开端口时,会出现一连串的中断,所以似乎在这个事件上发生了一些通信; 我想知道是否有可能检测主机是否打开了端口.

我或许需要两件事之一:

  1. 防止USB代码在第一个实例中卡在ISR中
  2. 确定主机是否从设备端打开端口,并且仅在打开时推送数据以进行发送.

embedded usb device cdc stm32

5
推荐指数
1
解决办法
9379
查看次数

C++ python扩展数组大小问题(C2133)

我正在创建一个游戏扩展,将游戏api暴露给嵌入式python解释器,我在PyMethodDef中得到C2133数组未知大小错误:

static PyMethodDef pyTTPlayerMethods[] = {
{"Get_Player_Name", pyTTGet_Player_Name, METH_VARARGS, "Returns the nickname of a client."},
{"Get_Player_Type", pyTTGet_Player_Type, METH_VARARGS, "TODO: Returns the player type of a client."},
{"Get_Bandwidth", pyTTGet_Bandwidth, METH_VARARGS, "Returns a player's bandwidth."},
{"Get_Ping", pyTTGet_Ping, METH_VARARGS, "Returns the ping of a client."},
{"Get_Kbits", pyTTGet_Kbits, METH_VARARGS, "Return kbits of a client."},
{"Get_Ip", pyTTGet_Ip_Address, METH_VARARGS, "Returns the IP of a client."},
{"Get_Port", pyTTGet_Ip_Port, METH_VARARGS, "Returns the port of a client."},
{"Get_Team", pyTTGet_Team, METH_VARARGS, "Returns the team ID of a client."},
{"Get_Translated_Team", pyTTGet_Translated_Team, …
Run Code Online (Sandbox Code Playgroud)

c++ python arrays

5
推荐指数
1
解决办法
356
查看次数

在C程序中调用默认的Windows可执行文件

我用system()函数来调用certmgr.exe我的C代码.启动可执行文件后,会出现一个命令promt,显示已成功安装证书.

但我不希望打开命令promt.怎么做??

用C语言调用"exe"的任何其他方法

谢谢,,,

c windows winapi

5
推荐指数
1
解决办法
818
查看次数

Delphi Chromium Embedded带来的麻烦

我是StackOverflow的新手,通常会在这里找到我想要的答案.除了这个时间.我很困惑.开始:

几周前,我下载了Delphi Chromium Embedded的 Revision 306 ,并将其安装在Delphi XE的新版本上.现在,这是从DCEF Google Code页面的"下载"部分抓取的.

我注意到的第一件事是该网站提到支持Delphi XE,但没有专门为XE包含的项目包.当然,我安装了适用于Delphi 2010的软件包,因为XE2的软件包不能用于FMX,也许还有其他一些东西(?).

在过去使用过D7的旧版本时,我自然会在表单上删除TChromium,将默认URL设置为http://foundry-local/assist/node/,然后运行应用程序.这是我受到的欢迎:

libcef.dll中的异常EExternal异常...外部异常80000003.

无法在新的Google群组中发布任何内容(他们在"代码"页面上禁用了问题跟踪器),所以我想我会来这里弄清楚发生了什么.但就在此之前,我决定从主干中检出最新的代码构建.成功安装(仍然没有XE包),在空白表单上删除TChromium,然后运行应用程序.这次我受到如下欢迎:

在0004BE24的模块FoundryAssistNodeManager.exe中出现异常EReadError.读取Chromium1.Options.AcceleratedCompositingEnabled时出错:无效的属性路径.

因此:我真的很困惑.

(编辑:该应用程序可以看到核心库,它们正在被选中.)

有没有其他人在Delphi XE上使用DCEF时遇到问题?如果是这样,任何人都有某种解决方案?

看,我正在为我即将发布的产品构建一个定制的帮助平台.使用IE是不可靠的,Gecko的组件不再开发.

任何提示,指导都会很棒.提前感谢你们.

delphi chromium

5
推荐指数
1
解决办法
2862
查看次数

嵌入式Keil C支持多线程吗?

我正在使用Keil C编译器在LM3S6965评估板上开发嵌入式应用程序.有没有创建多线程嵌入式应用程序的选项?

c embedded multithreading keil

5
推荐指数
2
解决办法
2231
查看次数

为什么在带有Qt加载项的Visual Studio Qt项目中添加自定义构建步骤会停止自动MOC和UIC步骤?

我有一个使用Visual Studio Qt加载项的Visual Studio Qt项目.外接程序自动为.ui文件和每个头文件创建一个自定义构建工具规则,该头文件具有带有Q_OBJECT声明的类,分别运行UIC和MOC.

这一切都完美无缺,直到我为整个项目添加自定义构建工具规则.在此实例中,该规则特定于Release构建并调用代码签名,并设置为Execute after:Build.使用此配置,Debug构建正常工作,但Release不会自动执行MOC或UIC.我可以在项目浏览器中右键单击Q_OBJECT标头和.ui文件,并手动强制编译所有必需的文件,然后它们正确MOC和UIC,然后可以构建,但是清理后重建或构建总是失败.

为什么添加项目项目的定义生成规则似乎已禁止关联.ui和Q_OBJECT标题的自定义生成工具规则?

qt custom-build-step visual-studio-2010

5
推荐指数
1
解决办法
1388
查看次数

SVG xmlns属性有什么作用?

我见过嵌入式SVG的源代码,如下所示:

<svg>...</svg>
Run Code Online (Sandbox Code Playgroud)

和其他看起来像:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">...</svg>
Run Code Online (Sandbox Code Playgroud)

具体指定xmlns/xmlns:xlink属性是做什么的?

xml html5 svg

5
推荐指数
1
解决办法
5841
查看次数

创建spring嵌入式kafka实例时出错


这与spring提供的嵌入式kafka服务器有关。在运行测试用例时,嵌入式kafka实例化(如下所示)失败。

公共静态KafkaEmbedded EmbeddedKafka = new KafkaEmbedded(1,true,KAFKA_TOPIC);

实例化失败,并出现以下错误。

1> C:\ Users \ r2dev \ AppData \ Local \ Temp \ kafka-1587343850239557903 \ version-2 \ log.1:该进程无法访问该文件,因为该文件正在被另一个进程使用

2> C:\ Users \ r2dev \ AppData \ Local \ Temp \ kafka-7315008084340411800.lock:该进程无法访问该文件,因为该文件正在被另一个进程使用。

我正在使用“ 1.2.0.RELEASE”春季kafka版本和Java 8。

任何人都可以解决此问题,并且能够解决此问题。请告诉我

提前致谢。

broker apache-kafka spring-kafka

5
推荐指数
0
解决办法
452
查看次数

ARM Cortex M7未对齐访问和memcpy

我正在使用GCC为Cortex M7编译此代码:

// copy manually
void write_test_plain(uint8_t * ptr, uint32_t value)
{
    *ptr++ = (u8)(value);
    *ptr++ = (u8)(value >> 8);
    *ptr++ = (u8)(value >> 16);
    *ptr++ = (u8)(value >> 24); 
}

// copy using memcpy
void write_test_memcpy(uint8_t * ptr, uint32_t value)
{
    void *px = (void*)&value;
    memcpy(ptr, px, 4);
}

int main(void) 
{
    extern uint8_t data[];
    extern uint32_t value;

    // i added some offsets to data to
    // make sure the compiler cannot
    // assume it's aligned in memory

    write_test_plain(data …
Run Code Online (Sandbox Code Playgroud)

c embedded memory-alignment memcpy cortex-m

5
推荐指数
1
解决办法
846
查看次数