问题标签 [atmelstudio]
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++ - 从 Atmel Studio 6 运行单元测试
我目前正在 Atmel Studio 6 中开发一个嵌入式 c++ 项目。该项目具有相当重要的嵌入式部分和重要的业务逻辑部分。理想情况下,我想为业务逻辑代码运行一些单元测试。能够方便地构建然后运行这些测试将更有可能使用单元测试。
如果我尝试使用默认的 avr-gcc 编译器使用 Boost 单元测试进行编译,则会出现错误,因为找不到各种头文件。我知道这些头文件不是为我使用的 AVR 芯片组实现的,因为在那种情况下它们太贵了。但是,这些标头仅用于对非嵌入式部分进行单元测试,因此已放置在它们自己的专用单元测试项目中。
我是否需要设置不同的编译器来编译单元测试?是否可以使用与安装的默认 avr-gcc 不同的编译器工具链来编译单元测试,还是我必须在其他地方编译单元测试?有没有更简单的方法来做到这一点?
assembly - MOV 到宏参数指定的寄存器中
我正在尝试mov
在 AVR 程序集中的宏中执行操作。我想通过宏的数字参数指定目标。我正在使用 Atmel Studio 汇编程序。
我正在尝试做这样的事情:
但是当这样做时,我收到错误“无效的寄存器”。相反,使用r@0
会给出错误“意外(”。尝试(r@0)
导致“意外注册”。
我该怎么做呢?
c++ - 调用此函数时无法编译代码
我正在使用 Atmel Studio 6.1 和 ANDLoad 来刷新 ATMega16 MCU。如果我用这个调用的函数编译代码,ANDLoad 会给我“Flash Hex File 359 中的错误”。359 行是十六进制文件末尾的第三行。如果我调用没有代码的函数,它工作得很好,但我没有意义。只添加一行代码再次给我错误。
我这样称呼它:
}
有谁知道我做错了什么?谢谢你。大卫
assembly - Atmel 运行解决方案 - 启动失败。缺少文件:AssemblerApplication1.obj
对于学校任务,我必须在 Atmel Studio 6.0 中编写一个简单的汇编应用程序。它可以毫无问题地构建,但是当我尝试运行它时,它返回以下错误:14:46:11: [ERROR] Failed to launch。缺少文件:C:\Users\Administrator\Documents\Atmel Studio\AssemblerApplication1\AssemblerApplication1\Debug\AssemblerApplication1.obj
我没有任何组装经验,我找不到任何人在同样的问题上苦苦挣扎。
assembly - 我如何更优雅地进行此 AVR 组装
我目前有这个代码:
如您所见,重复了许多非常相似的代码。
如果没有办法以更短的方式编写它,例如 with.irp
或 may .if
s,那将是荒谬的。但是,我无法让它发挥作用。因为.irp
我试过这个:
虽然 Atmel Studio 确实突出显示.irp
(它没有突出显示以 a 开头的所有内容.
)但它不起作用:Invalid directive: '.irp'
另请参阅我的另一个相关问题:MOV into a register specified by macro argument。
ld - 将静态库答案放在闪存部分的开头
我正在使用 atmelstudio 编译固件映像,并希望将静态库(包括 gnu 的 libc.a 和 libgcc.a)中的函数放在 .text 部分的开头,然后 .text 属于我的项目源代码。现在发生的事情恰恰相反。
这是我的链接器脚本
avr - Atmel AVR Studio 6 使用 Arduino Uno (ATmega328p) 和 FreeRTOS
大家好,
我想使用我的 Arduino Uno 开始使用 freeRTOS,它在 Atmel AVR Studio 6 上使用 ATmega328p。
我正在使用 Windows 7。
我进入了本教程:
http://www.jayconsystems.com/tutorial/atmerpt1/
其中描述了如何安装和准备 Atmel AVR Studio 6 以使用 ATmega328p。
我不明白我应该在步骤 5A 中做什么,它告诉我要执行以下操作:
转到工具 -> 外部工具...使用以下设置创建新工具:
标题:串行程序
命令:C:\arduino-1.0.1\hardware\tools\avr\bin\avrdude.exe
(更改它以匹配您的 arduino 安装文件夹并找到 avrdude.exe)
-CC:\arduino-1.0.1\hardware\tools\avr\etc\avrdude.conf -patmega328p -carduino -P\.\COM3 -b57600 -Uflash:w:"$(ProjectDir)Debug\$(ItemFileName)。十六进制“:我 // *
注意:我的计算机上确实安装了 avrdude.exe,位于以下位置:
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe
所以我的问题是:
1)在*行上, -CC 是什么意思,它是否需要在参数或初始目录中(在外部工具对话框中)?
2)正如它所提到的,avrdude.conf的路径(在我的情况下确实如此)通过X86文件夹,那么我需要输入的行应该如何(因为它提到了一些关于双引号的东西)?
3) 在我将解决所有这些问题之后,AVR Studio 6 如何/在哪里/是否有一个“简单的通用模板”项目来开始使用 freeRTOS?
我遇到了本教程(使用不同的板),尽管我使用的是另一块板(我的 ATmega328p),但我可以“跟随”它吗?
感谢提前分配,
家伙。
arduino - 如何使用 Atmel Studio Version.6.2 调试 Arduino Duemilanove 板
我正在使用 Arduino Duemilanove,并按照此链接http://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/inoredr中的教程使用来自Atmel Studio 6.2的闪存程序,因此我能够创建和刷新示例程序。
但问题是,如何通过设置断点来调试程序,是否需要使用任何调试器如STK500来调试
有什么想法吗?
c - C 表达式在两个不同的编译器上计算不同
我的代码在 GCC 和 Atmel Studio 之间运行不同:
在 GCC 上,结果tc
是 1700,正如预期的那样。
使用 AtmelStudio,输入的结果tc
是 132772,这是不正确的。
问题似乎是m*1800
使用 AtmelStudio 以 m 的有限精度计算该术语。
我的问题是,哪个编译器做得正确?
谢谢你。
embedded - 将引导加载程序 HEX 文件编程到 Xmega256A3BU avr 板的程序是什么?
我开发了 ATXMEGA256A3bu 开发板。现在我需要通过编程引导加载程序 HEX 文件来运行它。我不知道如何使它工作。我需要将加载器与 JTAG 编程器或 PDI 或 SPI 放在一起。任何人都可以帮我解决这个问题。非常感谢任何有用的信息。