Генератор из arduino

Обсуждаем контроллеры компании Atmel.
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

В pdf указан с рекомендуемыми clock. Соответственно и цифры с ним. Если используете другой, то будут другие варианты.
Последний раз редактировалось veso74 Ср окт 30, 2024 06:23:16, всего редактировалось 4 раза.
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

veso74 писал(а):1 Hz будет: d = 10, freq -> 0,931322574615478515625 Hz.
0,1 Hz будет: d = 1, freq -> 0,0931322574615478515625 Hz.
:shock:
Шоб вас в магазине так обвешивали :))

:beer:
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

Не только на Ардуино :P. И на PIC, и на STM8, и на STM32, и на Teensy 3.6...
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

veso74 писал(а):Моя AD с FXTAL = 32000386 Hz.
/ 2^28 = 0,119210727512836456298828125

Хрен редьки не слаще :))
veso74 писал(а):Не только на Ардуино . И на PICе, и на STM8, и на STM32, и на Teensy 3.6...
И на машинке вышивать...

Да причём тут ваши платформы) Вы на AD9833 не получите целого с таким тактированием :))
Последний раз редактировалось shonty Вт окт 29, 2024 13:22:55, всего редактировалось 1 раз.
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

Ошибка DDS от целочисленного деления для случайных выходных частот, и не будем ее здесь анализировать.
Последний раз редактировалось veso74 Вт окт 29, 2024 13:27:06, всего редактировалось 1 раз.
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

Смеётесь? Нет ошибки, и нет случайных выходных частот. Есть формула расчёта выходной от частоты тактирования.
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

Для анализа частоты посмотрите используемый тактовый генератор, какая у него температурная стабильность и dF. Ставлю на 100 или 50 ppm. Поэтому любая подобная полемика бессмысленная.
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

[uquote="veso74",url="/forum/viewtopic.php?p=4642252#p4642252"]Для анализа частоты посмотрите используемый тактовый генератор, какая у него температурная стабильность и dF. Ставлю на 100 или 50 ppm. Поэтому любая подобная полемика бессмысленная.[/uquote]
dF/F х10-6 = 50

Полемика конечно бессмысленна, если вы пытаетесь выдать 0,931322574615478515625 Hz за 1 Hz
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

Наверное, догадались: нажал: "копировать" на Windows калькуляторе. Принять какие цифры после десятичной точки хотите.
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

Я любые цифры могу на вывести дисплей и сфотографировать.

Допустим у вас генератор на AD9850. Вопрос: чем вы его тактируете?

Добавлено after 53 seconds:
:dont_know: аа... вы уже удалили фото

Добавлено after 2 minutes 32 seconds:
и тем не менее, вопрос, чем вы тактируете генератор AD9850, что у вас на выходе ровно 3 500 000 Hz
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

С генератор на напр. 124998975 Hz, ориг. монт. на китайской модуль AD9850. Из-за своей цены - дешевый, температурные параметры не оч. хорошие, но работает без нареканий.
Последний раз редактировалось veso74 Вт окт 29, 2024 15:34:13, всего редактировалось 1 раз.
akl
Друг Кота
Сообщения: 4444
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Генератор из arduino

Сообщение akl »

[uquote="prizrack*",url="/forum/viewtopic.php?p=4642197#p4642197"]Таймеры обычно очень медленные и МГц не вытянут(на сколько я почитал) или я ошибаюсь? ну и хотелось бы готовое решение, чтобы не заморачиваться навеской на контролер а все решить одной платой или микросхемой.[/uquote]Готовое решение вряд ли найдете. Для начала, вариант генерации меандра 1МГц на лапе PD5.

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

	.INCLUDE "m328Pdef.inc"

.equ	Fo=16000000

.def	ZERO	=R15
.def	_FF		=R19
;*************************************************
.CSEG

.org	0x0000

RESET:
	RJMP	START		; On Reset
;*************************************************
;*************************************************
;*************************************************
START:
; Reset Watchdog Timer
	WDR

	CLR	ZERO
	OUT	MCUSR,ZERO
; Start timed sequence
	LDI	R16,1<<WDCE|1<<WDE
	STS   WDTCSR, R16
	CBR	R16,1<<WDE
	STS	WDTCSR,R16

	SER	_FF

	OUT	DDRD,_FF
	OUT	DDRC,_FF
	OUT	DDRB,_FF

	LDI	R16,1<<ACD
	OUT	ACSR,R16	; выключить аналоговый компаратор

	LDI	R16,1<<SE		; разрешить SLEEP IDLE
	OUT	SMCR,R16

	LDI	R16,Fo/1000000-1		;1MHz
	OUT	OCR0A,R16
	LDI	R16,Fo/2/1000000-1		;8-1
	OUT	OCR0B,R16

;	LDI	R16,Fo/100000-1		;100kHz
;	OUT	OCR0A,R16
;	LDI	R16,Fo/2/100000-1		;80-1
;	OUT	OCR0B,R16

	LDI	R16,1<<COM0B1|1<<WGM01|1<<WGM00
	OUT	TCCR0A,R16
	LDI	R16,1<<CS00|1<<WGM02
	OUT	TCCR0B,R16
		
;************************************************
	SLEEP
	RJMP	PC
.EXIT
Вложения
GEN_M328.hex
(194 байт) 62 скачивания
prizrack*
Нашел транзистор. Понюхал.
Сообщения: 162
Зарегистрирован: Пт авг 21, 2015 12:01:25
Откуда: г. Орел

Re: Генератор из arduino

Сообщение prizrack* »

Starichok51, Вторая ардуинка нужна для решения остальных задач по этому не хочется ее задействовать в гене, у нее свои задачи которые она должна решать при работающем генераторе. Попробую раскачать китайскую Uno , давно не занимался контролерами по этому и вопросы возникают, в любом случае спасибо за советы.
К стати ни у кого нет желания написать прошивку за отдельную плату? Там еще дисплейчик будет, кнопочки, управление шаговиком, измерения. В общем ТЗ предоставлю. Если кому-то интересно - пишите в личку.
Аватара пользователя
Starichok51
Модератор
Сообщения: 19044
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Генератор из arduino

Сообщение Starichok51 »

а если ты хочешь этот генератор применить для импульсного преобразователя - то это очень плохая затея.
примени любой ШИМ-контроллер. и проблемы включить/выключить его не будет.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
prizrack*
Нашел транзистор. Понюхал.
Сообщения: 162
Зарегистрирован: Пт авг 21, 2015 12:01:25
Откуда: г. Орел

Re: Генератор из arduino

Сообщение prizrack* »

Starichok51, Генератор с последующим усилением Мосфетами для Эрозии и гальваники, паузы нужны для восстановления диэлектрической жидкости в зазоре. А есть ШИМ-генераторы на частоту до 1МГц? Мне попадались только до 150КГц.
На 150К установка уже работает, но эфективность так-себе, мощный одиночный импульс и большая пауза между ними, нужна пачка коротких импульсов 1-1000 мксек и пауза в 10-200мкс. Больше 1Мгц мощные мосфеты не вытянут, а до других типов генераторов пока еще не дорос)
veso74
Поставщик валерьянки для Кота
Сообщения: 1905
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Генератор из arduino

Сообщение veso74 »

ШИМ с частотой 1 MHz - может и подойдёт. Но по-другому.
Последний раз редактировалось veso74 Ср окт 30, 2024 07:11:39, всего редактировалось 3 раза.
akl
Друг Кота
Сообщения: 4444
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Генератор из arduino

Сообщение akl »

prizrack* Как вариант, 2 противофазных канала. Генерация пачки из 5 периодов с паузой

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

   .INCLUDE "m328Pdef.inc"

.equ   Fo=16000000

.def   ZERO   =R15
.def   _FF      =R19
;*************************************************
.CSEG

.org   0x0000

;RESET:
;	RJMP   START      ; On Reset
;*************************************************
;*************************************************
;*************************************************
START:
; Reset Watchdog Timer
   WDR

   CLR   ZERO
   OUT   MCUSR,ZERO
; Start timed sequence
   LDI   R16,1<<WDCE|1<<WDE
   STS   WDTCSR, R16
   CBR   R16,1<<WDE
   STS   WDTCSR,R16

   SER   _FF

   OUT   DDRD,_FF
   OUT   DDRC,_FF
   OUT   DDRB,_FF

   LDI   R16,1<<ACD
   OUT   ACSR,R16   ; выключить аналоговый компаратор

	STS	PRR,_FF

	LDI   ZH,HIGH(TB_FORM*2)
	LDI   ZL,LOW(TB_FORM*2)

FORM:
   NOP
   ANDI   ZL,$5F	;$4F	;
   LPM   R22,Z+
   OUT   PORTB,R22
   RJMP   FORM
.ORG   $20
TB_FORM:
.DB   $0F,$F0,$0F,$F0,$0F,$F0,$0F,$F0,$0F,$F0,$00,$00,$00,$00,$00,$00
.DB   $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
;.DB   $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
;.DB   $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
.EXIT
Вложения
TEST_M328.hex
(255 байт) 46 скачиваний
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

akl писал(а):LDI   R16,1<<ACD
   OUT   ACSR,R16   ; выключить аналоговый компаратор
akl, вопрос не по теме.
Зачем ACSR в процедуре старт? В ACSR 0x00 после ресета судя по даташиту.
Или я что то не знаю :dont_know:
akl
Друг Кота
Сообщения: 4444
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Генератор из arduino

Сообщение akl »

Из DS
Изображение
Вложения
AN_COMP.PNG
(47.9 КБ) 323 скачивания
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: Генератор из arduino

Сообщение shonty »

akl писал(а):Из DS
Точно.. Сорри.. не знал :dont_know:
Спасибо :beer:
Ответить

Вернуться в «AVR»