Публикации по теме 'avr'
Сделайте свою собственную плату AVR
Плата AVR является важным устройством разработки для многих разработчиков микроконтроллеров. А иногда по какой-то причине это может быть дорого. Но хорошая новость заключается в том, что сделать эту доску не так уж сложно. Вы можете создать свою собственную плату для разработки AVR с некоторыми электронными запасными частями в своей лаборатории.
Предварительный
Чтобы следовать этой инструкции, вам необходимо иметь базовые знания о пайке, прототипировании с помощью перфорированной..
Вопросы по теме 'avr'
Предотвращение случайной перезаписи прошивки
Сначала немного предыстории. Когда прошивка по какой-либо причине дает сбой (например, переполнение стека, поврежденный указатель функции...), может случиться так, что она куда-то прыгнет и начнет выполнять какой-то код. Это рано или поздно приведет...
365 просмотров
schedule
09.06.2024
Переменная numTicks не увеличивается
У меня есть следующий скетч, и переменная numTicks не увеличивается, скетч отлично компилируется в Arduino, но по какой-то причине переменная «numTicks» не увеличивается.
/*
* kegboard-clone-4-KegCop
* This code is public domain
*
* This...
1293 просмотров
schedule
27.04.2024
Сборочный проект Atmega128
Я пытаюсь немного изучить сборку, играя с платой Atmega128. Я пытаюсь сделать так, чтобы набор из 8 светодиодов включался/выключался индивидуально при нажатии соответствующей кнопки.
.INCLUDE "m128def.inc"
.CSEG
.ORG $0
initialize:
ldi...
799 просмотров
schedule
04.12.2022
Почему не компилируется функция с входными данными, у которых есть ссылка на указатель?
Я протестировал это на своей Linux-системе с gcc и отлично компилируется.
void myFunc(int* &input);
Который компилируется без ошибок.
На моем авре объявляю ту же функцию:
void myFunc(int* &input);
Выдает ошибку компиляции:...
106 просмотров
schedule
16.12.2023
значение pwm не меняется
Я написал pwm-код для Atmega128. Я использую быстрый режим ШИМ с неинвертирующим импульсом при сравнении совпадений, и мне нужно в определенное время изменять значение OCR0. Но это не меняется. Кто-нибудь знает, в чем тут проблема ??
#include...
341 просмотров
schedule
25.11.2022
Сборка AVR: Как продолжить с инструкции ветки?
скажем, у вас есть инструкция ветвления, которая ведет вас к какой-то другой подпрограмме, возможно ли затем вернуться к вызывающей подпрограмме и продолжить?.. Что-то вроде этого:
prog:
cp r16,r17
breq true
...
true:
out PORTA,r16
HOW DO I...
2099 просмотров
schedule
07.12.2022
Режимы программирования Arduino, загрузчик, Arduino как ISP
В настоящее время я работаю над проектом с использованием платы Arduino Uno (rev3). В конце концов, я мог позволить ему работать независимо от Arduino, и это заставило меня задуматься о том, как работает все программирование и загрузчик.
Вот что я...
1449 просмотров
schedule
26.11.2023
как установить переполнение таймера для ATmega328p в сборке?
Я пытался создать программу на ассемблере, которая поворачивает один бит влево или вправо каждый раз, когда происходит прерывание по переполнению таймера. Вот мой код, но он почему-то не работает. Я новичок в этом мире программирования сборки, и я...
3916 просмотров
schedule
01.05.2024
Монтаж 2-разрядный 7-сегментный дисплей
У меня есть небольшая проблема с пониманием того, как это должно работать. В основном все, что мне нужно, это зажечь светодиод на каждой стороне 7-сегментного дисплея. Они перекрывают друг друга или видны только слева или справа. Если кто-то может...
1342 просмотров
schedule
03.11.2022
AVR Аналого-цифровое преобразование Atmega32
Я делаю некоторую систему, которая измеряет окружающий свет и включает или выключает свет. Для этого я должен использовать микроконтроллер Atmega. Измерение освещенности выполняется с помощью LDR. LDR всегда выводит аналоговое значение, и мне...
514 просмотров
schedule
14.11.2022
C исполняемый файл в шестнадцатеричном формате
Я использую CLion в качестве IDE. После сборки на выходе получается исполняемый файл example . Чего я хотел бы добиться, так это сделать из него файл .hex и загрузить его на мой AVR через avrdude . Я прочитал и попробовал некоторые...
469 просмотров
schedule
11.01.2024
Элемент инициализатора ошибки AVR GCC не является постоянным
Я использую Atmel Studio 6.2, чип xmega64D3, и у меня проблема с инициализацией некоторых полей структуры:
typedef struct
{
uint32_t val;
uint32_t inv;
uint32_t xor;
}SPROTU32;
typedef struct
{
SPROTU32 SerialNr;
SPROTU32...
318 просмотров
schedule
22.09.2022
Почему структура в C кажется размещенной только во флэш-памяти (ПЗУ)?
Я написал простой тестовый код и случайно обнаружил, что таблица поиска в структуре, похоже, размещена во Flash-памяти, и я не знаю, как это объяснить. Вот простой код:
#include <avr/io.h>
#include <avr/delay.h>
#include...
350 просмотров
schedule
28.05.2024
невозможное ограничение в ассемблере при компиляции
В моем проекте Atmel ASF я пытаюсь создать следующий встроенный ассемблерный код. Однако при компиляции я получаю невозможное ограничение.
Компилятор указывает на эту строку __asm__ __volatile__ , я что-то пропустил?
#define OUTPORT PORTD...
1155 просмотров
schedule
01.12.2023
ISR для Timer Compare Match не работает
так что в основном я пытаюсь настроить ISR (подпрограмма прерывания), чтобы просто включить свет, но ISR, похоже, не работает. Я много просматривал техническое описание микроконтроллера, чтобы понять, делаю ли я что-то не так, но ничего не нашел....
253 просмотров
schedule
28.11.2023
Пользовательская функция задержки с использованием arduino IDE
Я учусь в классе микропроцессоров, и мы пишем собственные функции задержки, которые действительно точны. Наш профессор дал нам, как я предполагаю, функцию задержки 4 мс. Я действительно не понимаю, как перевести это в задержку 0,25 с или 1 с,...
414 просмотров
schedule
25.10.2022
Осциллирующий сигнал на цифровом выходе AVR ATmega32U4
Я настроил свой Atmel ATMega32U4 с реле (используя NPN-транзистор для управления подачей 5 В на реле, а не управляя им напрямую с микроконтроллера). Я хочу использовать PD4 в качестве цифрового выхода для управления состоянием реле. Поскольку позже...
168 просмотров
schedule
08.11.2022
Код АЦП ATmega16 не работает
#define F_CPU 1000000UL
#include <avr/io.h>
volatile uint8_t adcvalue;
int main(void)
{
DDRA =0x00;
DDRC = 0xff;
// enable adc
ADCSRA |= (1<<ADEN);
// using division factor 8
ADCSRA |= (1<<ADPS0) |...
2924 просмотров
schedule
20.12.2023
Ограничения операнда Fsin встроенной сборки AVR
я кодирую в arduino, но я также использую ассемблерный код между моим кодом c. Я хочу вычислить грех значения. пока у меня есть этот код:
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here,...
149 просмотров
schedule
19.01.2024
Как инициализировать массивы внутри структуры
Я пытаюсь инициализировать этот тип структуры, но это просто не сработает. Есть идеи, в чем проблема?
#include <stdint.h>
#define txBufLen 3
struct {
uint8_t Buf[txBufLen];
uint16_t out;
uint16_t len;...
63 просмотров
schedule
02.06.2024