Goodil написал(а):Во-первых, наушников нет совсем. Я наматываю отдельную катушку для генерации магнитного поля. Катушку рассчитываю по программе Coil (здесь на форуме ссылку на неё я уже давал).
Во-вторых, сигнал задания магнитного поля (напряжение) я синтезирую в программе-аудиоредакторе Audacity (под Linux Ubuntu). Всё сразу синтезирую. И несущую 10 кГц прямоугольной формы и огибающую заданной частоты.
Все же считаю, что должно быть не магнитное, а электромагнитное поле (то есть на выходе не катушка, а контур). Если можно выложите пожалуйста ссылку на Ваш генератор Audacity только под XP.
Попробуйте все таки проверить на точность формируемые программой частоты. Сдается мне, что получите Вы например не 100Гц, а 101Гц, потому что программа Audacity универсальная для всех компьютеров и в ней калибровка по частоте не предусмотрена.
Goodil написал(а):Опубликовать "АЛГОРИТМ ПРОГРАММЫ выбора и генерации" программ задания режимов работы Вашей квазиДЭТА.
Алгоритма как такого нет привожу машинный коды цикла генерации несущей 10кГЦ, промодулированной лечебной частотой. Написана на ассемблере (так как в машинных кодах получается наиболее гибкое программирование) в AVR STUDIO
Принятые обозначения:
prom1 - r21, prom2 - r22, prom3 - r23, prom4 - r24, r11($f0) - включение прибора на излучение,
r9, r15 -счетчики секунд
r0, r1, r2, r3, - код частоты
r4, r5- промежуточные регистры
r6 - присвоена константа $f0
r7 - присвоена константа $0f
nul:
cbi portd, $4;portb, $6
cbi portd, $7
mov r11, r6;
wyx_oco_no_run:
pop prom4
pop prom3
pop prom2
pop prom1
out sreg, r10
reti
;прерывание счетчика 0 период 100мкс
OC0adress:
in r10, sreg
push prom1
push prom2
push prom3
push prom4
inc r9
brne no_inc_r15
inc r15
no_inc_r15:
cp r11, r7;r6
breq wyx_oco_no_run;oco_pr_run
oco_pr_run:;
LOOP1:
mov r26, r4
mov r27, r5
clc
add r26, r0 ; 1
adc r27, r1 ; 1
adc r28, r2 ; 1
adc r29, r3
;5f5d773 для выносного варианта с аккумкляторами
ldi prom1, $57;57;00;ba;0a;e8;00;80;00;f0
ldi prom2, $d0;d0;f8;e7;fc;5d;e1;f0;e1;89
ldi prom3, $f5;5;f5;fa;f5;fd
ldi prom4, $05;02;05;05
clc
sub r26, prom1
sbc r27, prom2
sbc r28, prom3
sbc r29, prom4
brcc ggg
clc
add r26, prom1
adc r27, prom2
adc r28, prom3
adc r29, prom4
ggg:
mov r4, r26
mov r5, r27
clc
ldi prom1, $f0;48;f0
ldi prom2, $fa;7d;fa
ldi prom3, $02;01;02
sub prom1, r27;
sbc prom2, r28;
sbc prom3, r29
brcs nul
sbi portd, $4;rtb, $6
sbis pind, $7;pinb, $7
rjmp gen1
rjmp gen0
gen1:
mov prom1, r11
cpi prom1, $08;4
brsh gen_100mkc
inc r11
rjmp no_gen
gen_100mkc:
mov r11, r8
sbi portd, $7;portb, $7
rjmp no_gen
gen0:
cbi portd, $7;portb, $7
no_gen:
pop prom4
pop prom3
pop prom2
pop prom1
out sreg, r10
reti