问题标签 [atmel]
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 - 如何在 avr-gcc 中定义一个计时器
我正在学习使用 avr-gcc,但我不知道如何解决以下任务:
来自端口 B 的 8 位应以 500 毫秒的间隔从 0 到 1 交替设置。
我感谢您的帮助。
arduino - 如何使用 Arduino 编译草图
我有一个使用ATmega168PV的定制板,我有一个 bin 文件,当我使用 Atmel Studio 6.0 时,我可以将它编程到我的板上。
我有二进制的源代码(草图格式),我想更改/编译代码并用它们对电路板进行编程。
我可以在 Arduino IDE 中打开我的 *.ino 文件,它正在验证它并说
但我搜索了文件存在的文件夹,但找不到任何二进制文件。
如何使用 Arduino IDE 编译代码?
linux - request_irq 成功但从未检测到中断
我在 ARM 处理器上运行嵌入式 linux 3.2.6。我正在使用修改版的 atmel 串行驱动程序来控制我设备上的 4 个 USART 端口。当我使用用内核编译的驱动程序时,一切正常。但我想将驱动程序作为内核模块运行。我进行了所有必要的更改并禁用了内部驱动程序,一切似乎都很好。4 个 tty 设备注册成功,我可以看到我的所有探测和初始化功能都正常工作。
所以这就是问题所在:当我尝试写入任何设备时,我的“开始传输”函数被调用,但随后等待来自 usart 的中断,该中断从未发生。所以写入只是挂起,使用逻辑分析仪我可以看到 RTS 被断言但 tx 线上没有字节显示。我知道我对 request_irq 的调用成功,但我从未在 /proc/interrupts 中看到任何 irq 条目。在驱动程序中,我还尝试使用 request_irq 为 gpio 线注册一个单独的中断处理程序,这工作正常。
我知道这是一个可能很难诊断的问题,但我正在寻找任何可能的建议,这些建议可以引导我朝着正确的方向寻找解决方案。如果您需要任何澄清,请告诉我。谢谢
arduino - 自由运行模式下 AVR ADC 中的 ADIE 位
我一直在编写自己的“库”来处理 AVR 芯片上的不同初始化。但是,我被 ADCSRA 寄存器中的 ADIE 位的作用所困扰(数据表中的第 261 页)。数据表并没有真正解释 ADIE 的工作原理。但是,每当 ADIE 设置为 0 时,我都无法读取 ADC 的读数。这是为什么呢?我认为 ADC 像定时器一样工作——即使没有启用中断,它仍然会用读数更新 ADC 寄存器。
这是罪魁祸首代码,只要“中断”设置为 1 以外的任何值,ADC 就无法工作。有趣的是,与其他中断不同,如果 ISR(ADC_vect) 例程中没有代码,则芯片不会卡住。
c# - Atmel 处理器或 AT91Boot dll 是否会导致我的 USB 端口崩溃
我正在调整一些用于通过 USB 将 .bin 文件上传到我们的产品之一的测试软件。该产品具有 Atmel AT91SAM7X256 处理器。该软件全部用 c# 编写,在 windows XP 机器上运行。
以前的程序员(不再与公司合作)使用名为 AT91BootDLL.dll 的 dll 文件来扫描 USB 端口以查找 ateml 处理器并获取其句柄。然后它可以打开 USB 连接并执行各种操作,例如读取、写入等。这一切正常,但时不时地它无法再找到任何连接的东西。发生这种情况时,我无法再通过 USB 将任何东西连接到 PC,因为 Windows 无法检测到它。然后我必须关闭 PC,并且在执行此操作时,Windows 决定冻结。
我需要深入了解它,因为我对这个 dll 或嵌入式编程都没有经验,所以我只有这些结论。处理器正在做某事导致 USB 端口锁定,或者这个 dll 文件正在做这件事。
我可以在程序中做些什么来帮助防止这种情况发生吗?
对于上传然后从这个处理器读回,有没有人知道另一种方法?
下面是一些用于扫描和打开的代码。
mono - 为什么 atmel 处理器上的单声道不能很好地与 LayoutKind.Explicit 配合使用?
我创建了一个如下结构:
然后我用下面的代码阅读了它:
我想知道在 x86、x64 和 cortex arm 处理器中一切正常,但在 Atmel ARM9 AT91SAM9G20 上的ushort
变量我得到了错误的值,例如第一个和第三个下一个字节值替换而不是第一个和第二个下一个字节,但是对于字节值一切都很好
avr - AVR 示例代码解释请
从
http://www.electronicsplanet.ch/mikrocontroller/source-code/ATMega16/ATmega16-ADC-Interrupt.htm
我尝试初始化mega16的AD。它有效,但线路
我不清楚。1000000 是从哪里来的,又是什么意思?
谢谢!
c++ - 跨 g++ 编译器链接器错误
我正在使用Eclipse为 ARM 处理器交叉编译一个 g++ 项目。我在 Windows 环境中使用 yagarto 工具链。我对 C 项目没有任何问题,但是对于 C++,我不断收到错误:
也:
环顾四周,我似乎遇到了链接器问题。我试图添加链接器 flash.ld。它来自 Atmel Studio 的 ARM 开发套件的 GCC 示例。这没有帮助。某处是否有用于 g++ 的链接器?我还有其他问题吗?
这是我的构建选项:
我有源文件 Main.cpp、HALTimer1.cpp 和头文件 Haltimer.h。主文件只包含头文件。头文件只定义了一个带有一个变量的 HALTimer 类。我不相信这些会影响错误。我相信这个错误完全是因为在没有正确链接器文件的情况下构建了一个 g++ 项目。
这是链接器文件的内容:
完整的编译器输出:
embedded - AT91SAM7X512 复位类型问题
我正在为我的应用程序使用 AT91SAM7X512。我在某些操作后执行软件重置。处理器复位。但是在读取RSTC_RSR
状态寄存器时,我得到了一个无效的复位类型寄存器值:RSTC_RSR = 0x700
它将RSTTYP
寄存器值转换为111
. 数据表中未定义此条件。我正在使用语句读取重置类型unsigned int buffer = AT91C_RSTC_RSTTYP;
。
linux - PHP Socket编程从MCU读取数据
快速提问,我是套接字新手,所以我想知道有没有办法从MCU(Atmel)读取数据?我正在运行 Linux,我可以通过RS232
或 USB 将 Atmel 连接到我的计算机(服务器)。有没有一种方法可以直接读取来自 MCU(USB/COM)的数据到我的计算机并进行处理?