генератор на 1мгц (помогите упаковать в блок)

Создаем свой блок. Вопросы, помощь знатоков.
Ответить
Аватара пользователя
fefar51702
Сержант
Сообщения: 248
Зарегистрирован: 26 июн 2022, 07:35
Имя: Валера
Благодарил (а): 1 раз
Поблагодарили: 5 раз

генератор на 1мгц (помогите упаковать в блок)

Сообщение fefar51702 »

Код: Выделить всё

void setup() {
  // Настройка таймера 1 для генерации сигнала 1 МГц
  pinMode(9, OUTPUT); // Устанавливаем вывод 9 как выход

  // Сбрасываем настройки таймера 1
  TCCR1A = 0;
  TCCR1B = 0;

  // Устанавливаем режим CTC (Clear Timer on Compare Match)
  TCCR1B |= (1 << WGM12);

  // Устанавливаем предделитель на 1 (без деления частоты)
  TCCR1B |= (1 << CS10);

  // Устанавливаем значение для сравнения (OCR1A)
  // Частота тактирования Arduino Uno 16 МГц
  // Для генерации 1 МГц: OCR1A = (16,000,000 / (2 * 1,000,000)) - 1 = 7
  OCR1A = 7;

  // Включаем режим сравнения для вывода OC1A (вывод 9)
  TCCR1A |= (1 << COM1A0);
}

void loop() {
  // Основной цикл пустой, так как таймер работает в фоновом режиме
}
код рабочий проверил немного врёт на 2-4 нс но пойдёт
dstrufanov
Сержант
Сообщения: 195
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: генератор на 1мгц (помогите упаковать в блок)

Сообщение dstrufanov »

Сообщение удалено
Последний раз редактировалось dstrufanov 13 июн 2025, 23:28, всего редактировалось 1 раз.
Aleks21
Рядовой
Сообщения: 19
Зарегистрирован: 05 май 2021, 07:26
Откуда: Армавир
Имя: Алексей
Поблагодарили: 8 раз

Re: генератор на 1мгц (помогите упаковать в блок)

Сообщение Aleks21 »

fefar51702 писал(а): 16 мар 2025, 15:11 код рабочий проверил немного врёт на 2-4 нс но пойдёт
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Re: генератор на 1мгц (помогите упаковать в блок)

Сообщение ecoins »

Aleks21 писал(а): 16 мар 2025, 16:56
fefar51702 писал(а): 16 мар 2025, 15:11 код рабочий проверил немного врёт на 2-4 нс но пойдёт
Проверил на Nano - удивился, все работает как Вы написали. На 16мГц.
Неожиданный подход к реализации автономного генератора.
Вы просто молодец.
Успехов.
С уважением, ecoins.
dstrufanov
Сержант
Сообщения: 195
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: генератор на 1мгц (помогите упаковать в блок)

Сообщение dstrufanov »

Сообщение удалено
Последний раз редактировалось dstrufanov 13 июн 2025, 23:28, всего редактировалось 1 раз.
Аватара пользователя
fefar51702
Сержант
Сообщения: 248
Зарегистрирован: 26 июн 2022, 07:35
Имя: Валера
Благодарил (а): 1 раз
Поблагодарили: 5 раз

Re: генератор на 1мгц (помогите упаковать в блок)

Сообщение fefar51702 »

ecoins нет это ии молодец я мало что понял из его обьяснения кода даже

Aleks21 вон значит как а я всё пытался приделать ему пин на выход
dstrufanov
Сержант
Сообщения: 195
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: генератор на 1мгц (помогите упаковать в блок)

Сообщение dstrufanov »

Сообщение удалено
Ответить

Вернуться в «Разработка пользовательских блоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя