问题标签 [winavr]

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.

0 投票
2 回答
839 浏览

avr - 在 ATMEGA32 中使用 USART 发送十进制

我在通过 USART 发送串行数据时遇到问题,它发送的是 ASCII 而不是十进制。

这是我的代码:

这是标题:

如何发送十进制数据,我想从 ADC 读取并使用 USART 发送...

非常感谢

0 投票
1 回答
114 浏览

avr - RPM 计和通过串行通信发送值

我有一个关于如何读取 RPM 并使用串行发送值的问题这是我的代码:

我们可以在中断计数器和定时器时发送串行数据吗,我尝试时出错?

什么是读取 RPM 并使用串行发送值的最佳方法

0 投票
1 回答
62 浏览

c - 为什么char在for循环中充当int?

请解释循环的工作,因为 z 是 char 并且充当 int

0 投票
1 回答
101 浏览

arduino - 使用 WinAVR 为 atmega2560 使用 freeRTOS 编译 Megablink 演示时出错

以下 RTOS .c 文件在“make”期间编译良好:

然后我收到以下错误:

serial.c:在函数“xSerialPortReInit”中

serial.c: 665:error: 'ulWantedBaud' undeclared (第一次在这个函数中使用)

serial.c: 665:error: (每个未声明的标识符对于它出现的每个函数只报告一次)

使:*** [serial.o]错误1


我已检查 serial.c 中标识的所有包含文件是否可用

0 投票
1 回答
339 浏览

c - 使用 WinAVR C 大小问题的 Proteus 中的数组

我有一个实验室任务,需要我使用 Atmega328P 进行 ADC,并使用 USART 将数字值传输到 MILFORD-4X20-BKP LCD 显示器。LCD 需要在第一行以 2 字节格式(十进制,0-255)显示值,在第三行以字格式(4 字节,0-1023)显示值。

我成功地做到了这一点,但是因为我不确定数组的大小,所以我最初让它们都足够大,不会有问题。当我将其更改为我认为必要的内容时,我遇到了一个奇怪的错误。这是下面显示的奇怪符号(或者我猜在底部)。该位置的符号取决于电位器的值。

所以这是我的想法。我为 buff 分配了 36 个(位置 0 为 +1)位置,这些位置被发送到 LCD。我将 3 分配给 buff2 用于字值(4 n 个位置),最后分配 4 用于 buff1 用于 2 字节值(5 n 个位置)

单词值的 3n 个位置有效,但是当我为 2byte 值放置 4n 时,出现了错误。看第一张图。

该错误还以出现在第 3 行末尾的 0-255 值的一部分的形式出现,具体取决于 buff 和 buff1 的不同数组值。第二张照片有 buff[37], buff1[2], buff2[3]

最后一点,如果我将值更改为buff1[5],则错误消失..但是为什么呢?2 字节的数组大小应小于 4 字节的数组大小。

奇怪的错误

液晶显示器

我正在尽力解释我的问题,但不知道我是否足够清楚。我知道我正在让我的数组交叉到彼此的内存地址,但我不知道如何以及在哪里。

0 投票
1 回答
64 浏览

c - 我的程序在 gnu-gcc 上运行良好,但在 gnu gcc for avr 上运行良好

我正在学习 C。所以我编写了这个距离计时器程序。它与 gnu-gcc 编译器一起运行良好。但是,但是使用 avr 的 gnu-gcc 它确实可以编译,但是当我运行它时,我只得到一个 cmd 会话,除了按任何按钮消失之外什么都不做。我想知道为什么。

我正在使用代码块,这是我的代码

0 投票
1 回答
2090 浏览

avr - 如何使用简单代码使用嵌入式c控制伺服电机?

我正在做一个学校项目“自动铁路系统”我的项目假设当火车到达车站时关闭大门,蜂鸣器打开,7 段显示 90 秒倒计时。和一个led闪烁。火车离开车站后,闸门打开,蜂鸣器关闭,指示灯关闭。我尝试使用直流电机打开和关闭门,但它没有给我我需要的准确角度我尝试使用伺服电机。所以我需要它在位置 0 打开门并在位置 90 关闭它。我在互联网上找到的所有代码,他们使用 PWM 和计时器,我在课程中没有使用,所以任何人都可以帮助我用简单的代码来做到这一点,好吗?

我正在使用以 16000000 HZ 运行的 Atmega32

0 投票
1 回答
105 浏览

avr - 代码不会加载到我的 attiny2313 微控制器

我正确连接了 USBasp 并更新了固件。没有构建错误,选择 USBasp 作为工具后,它说 avrdud 已准备好,但我的 led 不会打开。

这是使用 USBasp 加载后出现的内容:

我正在使用 atmel studio 7,笔记本电脑是 windows 10 64bits

0 投票
1 回答
1768 浏览

avr - 带保险丝的 Avrdude .hex

我使用了一个 makefile 来构建我的代码,并且我已经生成了一个 ELF 文件。

为了让我的 attiny85 可以理解,我通常使用avr-objcopy -O ihex -R .eeprom -R .fuse main.elf main_all.hex. 我得到一个包含保险丝设置的十六进制文件。我用 .flash 刷新十六进制文件avrdude -p t85 -c avrispmkII -P usb -U flash:w:main_all.hex。我正在使用通过工作和测试的 SPI 连接的 avrispmkII。

这次我出错了。

我想是因为我在代码中使用了保险丝,这就是问题所在。根据Contiki 编译错误,“ERROR: address 0x820003 out of range at line 1740 of ...”,我注意到你可以让 avrdude 创建一个没有保险丝的十六进制。

这也有效,现在让 attiny85 完全正常闪烁。

现在是真正的问题。

我如何仍然获得 attiny85 上的保险丝?

在设置保险丝之前,有什么方法可以查看我设置的保险丝如何?我之前明确问过,因为我没有用 12V (HV) 闪烁的经验,而且这个 arvmkII 的同义词不正确(是的,我应该在数据表中查看他是否可以)。

我主要关心的是把保险丝放在阁楼上。我是一名毕业的电气工程师,业余时间正在编程。所以我对特权链接和魔法命令很好。

德语原文的粗略翻译)

0 投票
1 回答
778 浏览

avr - 如何在 AVR studio-4 项目中包含外部 .C 和 .h 文件

我是 AVR 世界的新手。我找到了一个 LCD 文件可以在我的项目中使用。我有 .c 和 .h 文件可以使用。但我不知道如何将这些文件包含在我的新项目中。任何人都可以提供相关的教程或示例来解决这个问题。