问题标签 [blackfin]
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.
voice-recognition - 我正在尝试实现运行 uClinux 的 Pocketsphinx,但我不断收到“电话在声学模型中丢失”错误
我正在尝试在运行uClinux的微控制器上运行Pocketsphinx,我已经在控制器上安装了 pocketsphinx,但我不断收到关于声学模型和定义的几个不同错误。我目前面临的是:
“电话……在声学模型中丢失”
用所有可能的语音组合替换 ...。它从 A 开始,然后是 AE,然后进展到 B 等等。
我正在尝试将.wav文件作为输入,因此这是我用来运行软件的命令:
有没有人遇到过这个问题?如果是这样,您知道解决方法吗?
debugging - 在用户定义的命令期间禁用 GDB 输出
是否可以在用户定义的命令期间禁用 GDB 的输出?我有以下命令:
下面是一个命令示例:
我对输出“in ?? ()”不感兴趣。
我试图通过“设置日志重定向”来重定向输出,但这不起作用。
硬件断点(buggy)和 Python 脚本不是一个选项,因为它是一个带有旧 GDB 的嵌入式系统(blackfin)。
c - 启动黑鳍 (BF527)
我是 Blackfin 处理器的新手,我想为 Blackfin BF527 编写一个测试程序。该测试程序应测试板和 2 个外围 RAM 的连接。
到目前为止,我已经下载并安装了 VisualDSP++(90 天试用版)。
谁能帮我知道如何编写一个简单的程序来写入端口 G 并从端口 H 读取,包括初始化(最好在 C 中)。
我已经在互联网上寻找示例代码,但不幸的是所有代码都非常先进。
我浏览了数据表,但它是在汇编上而不是 C 上,我仍然找不到任何可靠的示例程序来满足我的目的。
windows - 为 blackfin 交叉编译 OPUS 编解码器
我已经成功地在 linux 上使用它在 2 台 linux pc 之间建立了一个流。在 OPUS 的 README 文件之后,这是直接的。
现在我需要在 Windows 上为 Blackfin ADSP-BF707 交叉编译 OPUS 编解码器。我试图通过 CrossCore Embedded Studio 进行编译,但是我没有所有的包含并定义了 make 文件正在设置。
我可以看到可以为 ARM 处理器设置定义,但我没有为 Blackfin 找到任何东西。他们的问答告诉我们,编解码器已经编译为 Blackfin。在 linux 中,“./configure”命令构建了 makefile,但我看不到交叉编译是如何完成的。我要构建自己的 makefile 还是我该怎么做?
c - 使用 blackfin 编写复分数方程
我正在尝试编写一个 32 位的 complexfraction32 方程。
我想测试小于 20% 和大于 20% 的值的 20%
我有一个函数mult_fr1x32x32 which
将复数乘以一个数字。但复分数来自-1,1。我将如何正确编写方程式。
c - 将分数转换为浮点数
我正在尝试将分数转换为浮点并将其用于比较。但值太小,对于布尔变量的结果返回 true。我的转换正确吗?还是我应该以另一种我不知道的方式来做?
一个测试用例:
这是代码的片段
c - 计算两个不动点分数的平方根的解释
我在 blackfin533 上找到了一段代码,它的 fract32 来自 -1, 1,格式为 1.31。
我不明白为什么计算复数(re,img)的幅度需要预移位。我知道如果你想将 1.31 乘以 1.31 小数格式,那么你需要右移 31 位。
GO_coil_D[0].re和GO_coil_D[0].im是两个fract32。
我无法得到以下代码在做什么:
round_
fr1x32` (fract32 f1) fract16 使用有偏舍入将 32 位分数舍入为 16 位分数。
norm_fr1x32
norm_fr1x32 (fract32) int 返回归一化输入变量所需的左移次数,使其位于 0x40000000 到 0x7fffffff 区间或 0x80000000 到 0xc0000000 区间内。换句话说,fract32 x;shl_fr1x32(x,norm_fr1x32(x)); 返回 0x40000000 到 0x7fffffff 范围内的值,或 0x80000000 到 0xc0000000 范围内的值
c - c char 数组复制和带有格式的 concat 离开 \n 并替换为 ÿ
我有一个小的 c 程序将输入从算法复制到最终的 char 数组中,然后通过串行(UART)发送到树莓派。问题是 char 数组中的最后一个字符始终是 ÿ (\xff) 的 latin-1 字符。
sprintf 格式效果很好,但是当我创建一个新的字符缓冲区来限制数组的大小并且只复制内容时,它似乎会剥离 \n 并附加 \xff 或 ÿ,具体取决于您在 pi 中使用的编码对于串行阅读器。
trunc_str 一直以 ÿ 结尾,而我希望它以“\n”结尾
帮助我哪里出错了。
更新 #2 我已经验证了 char 数组中任何位置的 '\n' 都被删除并替换为 ÿ。我查看了 char 数组上的 watch 变量,当它发送到 uart_write 时,\n 存在。在缓冲区被转换为 uart 代码中的 unit8_t 之后,它似乎剥离了 \n。我什至尝试了一个带有 '\n' 的 unit8_t,它在调用 uart_write 代码后被删除。我已经联系了analog.com,一旦有解决方案,我会更新这篇文章。
c - 无法在 while 循环之外保留数组
我目前正在编写下面的 C 代码。我需要while
在fclose
. 似乎每次我运行blackfin ADSP内核都会崩溃。我将需要它进一步执行 FFT。请帮忙!
好的,谢谢大家纠正我的错误,但问题仍然没有解决。我能够打印内部的所有值,但在循环之外它只打印数据集的最后一个值,有什么精确的解决方案吗?我用谷歌搜索了几个小时,但还没有成功。代码如下 >