Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Невозможно, этот дисплей слишком медленный для AVR. Уже не раз говорилось.
- Реклама
- Altair
- Сверлит текстолит когтями
- Сообщения: 1276
- Зарегистрирован: Вс мар 01, 2009 17:49:41
- Откуда: Россия
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Так может сделать на STM32?
Ваше везение — в ваших руках: водите чёрную кошку на поводке.
Молчание не всегда означает согласие.
Молчание не всегда означает согласие.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Тогда это будет уже совсем другой проект и другой код: иначе доступ к портам, по-другому организована периферия, система таймеров, прерываний и т.д.
- Altair
- Сверлит текстолит когтями
- Сообщения: 1276
- Зарегистрирован: Вс мар 01, 2009 17:49:41
- Откуда: Россия
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Конечно, это совсем другой проект. 
Ваше везение — в ваших руках: водите чёрную кошку на поводке.
Молчание не всегда означает согласие.
Молчание не всегда означает согласие.
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
[uquote="WiseLord",url="/forum/viewtopic.php?p=3147622#p3147622"]Невозможно, этот дисплей слишком медленный для AVR. Уже не раз говорилось.[/uquote]
наверно правильнее сказать AVR слишком медленная для дисплея на ili 9341
DMA в ATMega сильно не хватает
наверно правильнее сказать AVR слишком медленная для дисплея на ili 9341
DMA в ATMega сильно не хватает
- Реклама
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Захотел сменить назначение выводов в проэкте на M8, скачал WinAVR 20100110 и avr-gcc-4.8_2013-03-06, сменил переменную, при попытке использовать команду "make" ошибка о том, что команда не является внутренней или внешней командой, переустановил winavr с совместимостью с winxp (установлена Win7x32), снова сменил переменную. Теперь при "make" выдаёт такое:
В папке flash hex файл не появляется. Подскажите что делать?
Спойлер
Код: Выделить всё
C:\1\ampcontrol-m8-20170109>make
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/adc.o -MF
build/./adc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA7439
-c -o build/adc.o adc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/display.o
-MF build/./display.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
TDA7439 -c -o build/display.o display.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/fft.o -MF
build/./fft.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA7439
-c -o build/fft.o fft.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/i2c.o -MF
build/./i2c.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA7439
-c -o build/i2c.o i2c.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/input.o -M
F build/./input.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA7
439 -c -o build/input.o input.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/main.o -MF
build/./main.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA743
9 -c -o build/main.o main.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/remote.o -
MF build/./remote.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TD
A7439 -c -o build/remote.o remote.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/rtc.o -MF
build/./rtc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA7439
-c -o build/rtc.o rtc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/spisw.o -M
F build/./spisw.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_TDA7
439 -c -o build/spisw.o spisw.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/ks0066.o -
MF build/display/ks0066.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X
-D_TDA7439 -c -o build/display/ks0066.o display/ks0066.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/audio.o -M
F build/audio/audio.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
TDA7439 -c -o build/audio/audio.o audio/audio.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/tda7439.o
-MF build/audio/tda7439.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X
-D_TDA7439 -c -o build/audio/tda7439.o audio/tda7439.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/tuner.o -M
F build/tuner/tuner.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
TDA7439 -c -o build/tuner/tuner.o tuner/tuner.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/rda580x.o
-MF build/tuner/rda580x.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X
-D_TDA7439 -c -o build/tuner/rda580x.o tuner/rda580x.c
avr-gcc -g -Wall -Werror -mmcu=atmega8 -Wl,-gc-sections -o build/ampcontrol_m8_4
bit_tda7439_rda580x.elf build/adc.o build/display.o build/fft.o build/i2c.o buil
d/input.o build/main.o build/remote.o build/rtc.o build/spisw.o build/display/ks
0066.o build/audio/audio.o build/audio/tda7439.o build/tuner/tuner.o build/tuner
/rda580x.o -lm
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: build/am
pcontrol_m8_4bit_tda7439_rda580x.elf section .text will not fit in region text
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: region t
ext overflowed by 468 bytes
make: *** [build/ampcontrol_m8_4bit_tda7439_rda580x.elf] Error 1I'am a Rock N' Roll-Aholic
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Всё же написано в выводе:
- попробовать взять avr-gcc посвежеее (например, 4.9)
- попробовать взять исходники поновее (там включены доп. оптимизации)
У меня оригинальные последние исходники собираются avr-gcc-5.4 без проблем, в варианте на TDA7439 ещё и 200 байтов свободных остаётся.
Кстати, есть подозрение, что у Вас сборка идёт avr-gcc-4.7 из комплекта WinAVR, который в плане оптимизации похуже будет. Версию можно проверить командой avr-gcc -v
Варианты:Ant-RG писал(а):ld.exe: region t
ext overflowed by 468 bytes
- попробовать взять avr-gcc посвежеее (например, 4.9)
- попробовать взять исходники поновее (там включены доп. оптимизации)
У меня оригинальные последние исходники собираются avr-gcc-5.4 без проблем, в варианте на TDA7439 ещё и 200 байтов свободных остаётся.
Кстати, есть подозрение, что у Вас сборка идёт avr-gcc-4.7 из комплекта WinAVR, который в плане оптимизации похуже будет. Версию можно проверить командой avr-gcc -v
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Спасибо, новый avrgcc и правда не подтягивался, теперь вроде подтянулось но всё равно ошибка, пробовал avrgcc 5.3.1 и 6.3.1, исходники последние для m8
Спойлер
Код: Выделить всё
C:\Users\Ant-RG>avr-gcc -v
Using built-in specs.
Reading specs from c:/program files/avrgcc/bin/../lib/gcc/avr/6.3.1/device-specs
/specs-avr2
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=c:/program\ files/avrgcc/bin/../libexec/gcc/avr/6.3.1/lto-wr
apper.exe
Target: avr
Configured with: ../../gcc.gnu.org/gcc-6-branch/configure --target=avr --prefix=
/local/gnu/install/gcc-6-avr-mingw32 --host=i386-mingw32 --build=x86_64-linux-gn
u --enable-languages=c,c++ --disable-nls --disable-shared --enable-lto --with-dw
arf2 --with-gnu-ld --with-gnu-as
Thread model: single
gcc version 6.3.1 20161222 [gcc-6-branch revision 243886] (GCC)
C:\Users\Ant-RG>cd C:\ampcontrol-m8-20170109
C:\ampcontrol-m8-20170109>make
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/adc.o -MF
build/./adc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/adc.o adc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/display.o
-MF build/./display.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
PT232X -c -o build/display.o display.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/fft.o -MF
build/./fft.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/fft.o fft.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/i2c.o -MF
build/./i2c.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/i2c.o i2c.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/input.o -M
F build/./input.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT23
2X -c -o build/input.o input.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/main.o -MF
build/./main.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X
-c -o build/main.o main.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/remote.o -
MF build/./remote.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT
232X -c -o build/remote.o remote.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/rtc.o -MF
build/./rtc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/rtc.o rtc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/spisw.o -M
F build/./spisw.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT23
2X -c -o build/spisw.o spisw.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/ks0066.o -
MF build/display/ks0066.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X
-D_PT232X -c -o build/display/ks0066.o display/ks0066.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/audio.o -M
F build/audio/audio.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
PT232X -c -o build/audio/audio.o audio/audio.c
audio/audio.c:47:22: error: 'grid_0_15_1' defined but not used [-Werror=unused-c
onst-variable=]
static const sndGrid grid_0_15_1 PROGMEM = { 0, 15, 1.00 * 8}; /* 0
..15dB with 1dB step */
^~~~~~~~~~~
audio/audio.c:46:22: error: 'grid_n12_12_3' defined but not used [-Werror=unused
-const-variable=]
static const sndGrid grid_n12_12_3 PROGMEM = { -4, 4, 3.00 * 8}; /* -
12..12dB with 3dB step */
^~~~~~~~~~~~~
audio/audio.c:45:22: error: 'grid_n12_15_3' defined but not used [-Werror=unused
-const-variable=]
static const sndGrid grid_n12_15_3 PROGMEM = { -4, 5, 3.00 * 8}; /* -
12..15dB with 3dB step */
^~~~~~~~~~~~~
audio/audio.c:44:22: error: 'grid_n66_20_2' defined but not used [-Werror=unused
-const-variable=]
static const sndGrid grid_n66_20_2 PROGMEM = {-33, 10, 2.00 * 8}; /* -
66..20dB with 2dB step */
^~~~~~~~~~~~~
audio/audio.c:41:22: error: 'grid_n96_31_1' defined but not used [-Werror=unused
-const-variable=]
static const sndGrid grid_n96_31_1 PROGMEM = {-96, 31, 1.00 * 8}; /* -
96..31dB with 1dB step */
^~~~~~~~~~~~~
audio/audio.c:39:22: error: 'grid_0_18d75_6d25' defined but not used [-Werror=un
used-const-variable=]
static const sndGrid grid_0_18d75_6d25 PROGMEM = { 0, 3, 6.25 * 8}; /* 0
..18.75dB with 6.25dB step */
^~~~~~~~~~~~~~~~~
audio/audio.c:38:22: error: 'grid_0_11d25_3d75' defined but not used [-Werror=un
used-const-variable=]
static const sndGrid grid_0_11d25_3d75 PROGMEM = { 0, 3, 3.75 * 8}; /* 0
..11.25dB with 3.75dB step */
^~~~~~~~~~~~~~~~~
audio/audio.c:37:22: error: 'grid_n18d75_18d75_1d25' defined but not used [-Werr
or=unused-const-variable=]
static const sndGrid grid_n18d75_18d75_1d25 PROGMEM = {-15, 15, 1.25 * 8}; /* -
18.75..18.75dB with 1.25dB step */
^~~~~~~~~~~~~~~~~~~~~~
audio/audio.c:36:22: error: 'grid_n78d75_0_1d25' defined but not used [-Werror=u
nused-const-variable=]
static const sndGrid grid_n78d75_0_1d25 PROGMEM = {-63, 0, 1.25 * 8}; /* -
78.75..0dB with 1.25dB step*/
^~~~~~~~~~~~~~~~~~
audio/audio.c:35:22: error: 'grid_0_30_2' defined but not used [-Werror=unused-c
onst-variable=]
static const sndGrid grid_0_30_2 PROGMEM = { 0, 15, 2.00 * 8}; /* 0
..30dB with 2dB step */
^~~~~~~~~~~
audio/audio.c:34:22: error: 'grid_n15_15_1' defined but not used [-Werror=unused
-const-variable=]
static const sndGrid grid_n15_15_1 PROGMEM = {-15, 15, 1.00 * 8}; /* -
15..15dB with 1dB step */
^~~~~~~~~~~~~
audio/audio.c:33:22: error: 'grid_n47_0_1' defined but not used [-Werror=unused-
const-variable=]
static const sndGrid grid_n47_0_1 PROGMEM = {-47, 0, 1.00 * 8}; /* -
47..0dB with 1dB step */
^~~~~~~~~~~~
cc1.exe: all warnings being treated as errors
make: *** [build/audio/audio.o] Error 1
C:\ampcontrol-m8-20170109>make clean
rm -rf build
C:\ampcontrol-m8-20170109>avr-gcc -v
Using built-in specs.
Reading specs from c:/program files/avrgcc/bin/../lib/gcc/avr/5.2.1/device-specs
/specs-avr2
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=c:/program\ files/avrgcc/bin/../libexec/gcc/avr/5.2.1/lto-wr
apper.exe
Target: avr
Configured with: ../../gcc.gnu.org/gcc-5-branch/configure --target=avr --disable
-nls --prefix=/local/gnu/install/gcc-5-avr-mingw32 --host=i386-mingw32 --build=i
686-linux-gnu --enable-languages=c,c++,lto --with-gnu-as --with-gnu-ld --disable
-shared --with-dwarf2
Thread model: single
gcc version 5.2.1 20150816 (GCC)
C:\ampcontrol-m8-20170109>make
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/adc.o -MF
build/./adc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/adc.o adc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/display.o
-MF build/./display.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
PT232X -c -o build/display.o display.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/fft.o -MF
build/./fft.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/fft.o fft.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/i2c.o -MF
build/./i2c.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/i2c.o i2c.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/input.o -M
F build/./input.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT23
2X -c -o build/input.o input.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/main.o -MF
build/./main.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X
-c -o build/main.o main.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/remote.o -
MF build/./remote.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT
232X -c -o build/remote.o remote.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/rtc.o -MF
build/./rtc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT232X -
c -o build/rtc.o rtc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/spisw.o -M
F build/./spisw.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_PT23
2X -c -o build/spisw.o spisw.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/ks0066.o -
MF build/display/ks0066.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X
-D_PT232X -c -o build/display/ks0066.o display/ks0066.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/audio.o -M
F build/audio/audio.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
PT232X -c -o build/audio/audio.o audio/audio.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/pt232x.o -
MF build/audio/pt232x.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -
D_PT232X -c -o build/audio/pt232x.o audio/pt232x.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/tuner.o -M
F build/tuner/tuner.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X -D_
PT232X -c -o build/tuner/tuner.o tuner/tuner.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT build/rda580x.o
-MF build/tuner/rda580x.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA580X
-D_PT232X -c -o build/tuner/rda580x.o tuner/rda580x.c
avr-gcc -g -Wall -Werror -mmcu=atmega8 -Wl,-gc-sections -o build/ampcontrol_m8_4
bit_pt232x_rda580x.elf build/adc.o build/display.o build/fft.o build/i2c.o build
/input.o build/main.o build/remote.o build/rtc.o build/spisw.o build/display/ks0
066.o build/audio/audio.o build/audio/pt232x.o build/tuner/tuner.o build/tuner/r
da580x.o -lm
c:/program files/avrgcc/bin/../lib/gcc/avr/5.2.1/../../../../avr/bin/ld.exe: bui
ld/ampcontrol_m8_4bit_pt232x_rda580x.elf section `.text' will not fit in region
`text'
c:/program files/avrgcc/bin/../lib/gcc/avr/5.2.1/../../../../avr/bin/ld.exe: reg
ion `text' overflowed by 60 bytes
collect2.exe: error: ld returned 1 exit status
make: *** [build/ampcontrol_m8_4bit_pt232x_rda580x.elf] Error 1
C:\ampcontrol-m8-20170109>^A
I'am a Rock N' Roll-Aholic
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Ух ты, шестой gcc ещё строже.
Ну а в пятом 60 байт лишних. Уже лучше.
Осталось исходники взять посвежее, там пара дополнительных опций для оптимизации включена.
Ну, или для 6-го gcc попробовать отключить -Werror/-Wall у компилятора.
Ну а в пятом 60 байт лишних. Уже лучше.
Осталось исходники взять посвежее, там пара дополнительных опций для оптимизации включена.
Ну, или для 6-го gcc попробовать отключить -Werror/-Wall у компилятора.
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Спасибо, скомпилировалось с TDA7440 что и требуется! Исходники взял здесь https://github.com/WiseLord/ampcontrol/tree/m8
avrgcc 5.2.1
С PT23xx ошибка:
С TDA7439 так
У меня же TDA7440d, Вы писали, что она аналогична TDA7439 но без регулировки СЧ, её и буду использовать - навыдирал с муз.центров
Кстати, что поправить в исходнике что бы убрать регулировку СЧ из меню (под TDA7440)
avrgcc 5.2.1
Спойлер
Код: Выделить всё
C:\ampcontrol-m8>avr-gcc -v
Using built-in specs.
Reading specs from c:/program files/avrgcc/bin/../lib/gcc/avr/5.2.1/device-specs
/specs-avr2
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=c:/program\ files/avrgcc/bin/../libexec/gcc/avr/5.2.1/lto-wr
apper.exe
Target: avr
Configured with: ../../gcc.gnu.org/gcc-5-branch/configure --target=avr --disable
-nls --prefix=/local/gnu/install/gcc-5-avr-mingw32 --host=i386-mingw32 --build=i
686-linux-gnu --enable-languages=c,c++,lto --with-gnu-as --with-gnu-ld --disable
-shared --with-dwarf2
Thread model: single
gcc version 5.2.1 20150816 (GCC)Спойлер
Код: Выделить всё
C:\ampcontrol-m8>make
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/adc.o -MF build/./adc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_PT232X -c -o build/adc.o adc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/display.o -MF build/./display.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT
-D_RDA580X -D_PT232X -c -o build/display.o display.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/fft.o -MF build/./fft.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_PT232X -c -o build/fft.o fft.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/i2c.o -MF build/./i2c.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_PT232X -c -o build/i2c.o i2c.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/input.o -MF build/./input.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_
RDA580X -D_PT232X -c -o build/input.o input.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/main.o -MF build/./main.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RD
A580X -D_PT232X -c -o build/main.o main.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/remote.o -MF build/./remote.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -
D_RDA580X -D_PT232X -c -o build/remote.o remote.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/rtc.o -MF build/./rtc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_PT232X -c -o build/rtc.o rtc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/spisw.o -MF build/./spisw.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_
RDA580X -D_PT232X -c -o build/spisw.o spisw.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/ks0066.o -MF build/display/ks0066.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_
PORT -D_RDA580X -D_PT232X -c -o build/display/ks0066.o display/ks0066.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/audio.o -MF build/audio/audio.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT
-D_RDA580X -D_PT232X -c -o build/audio/audio.o audio/audio.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/pt232x.o -MF build/audio/pt232x.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PO
RT -D_RDA580X -D_PT232X -c -o build/audio/pt232x.o audio/pt232x.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/tuner.o -MF build/tuner/tuner.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT
-D_RDA580X -D_PT232X -c -o build/tuner/tuner.o tuner/tuner.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/rda580x.o -MF build/tuner/rda580x.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_
PORT -D_RDA580X -D_PT232X -c -o build/tuner/rda580x.o tuner/rda580x.c
avr-gcc -g -Wall -Werror -mmcu=atmega8 -Wl,--gc-sections -Wl,--relax -o build/am
pcontrol_m8_4bit_pt232x_rda580x.elf build/adc.o build/display.o build/fft.o buil
d/i2c.o build/input.o build/main.o build/remote.o build/rtc.o build/spisw.o buil
d/display/ks0066.o build/audio/audio.o build/audio/pt232x.o build/tuner/tuner.o
build/tuner/rda580x.o -lm
c:/program files/avrgcc/bin/../lib/gcc/avr/5.2.1/../../../../avr/bin/ld.exe: bui
ld/ampcontrol_m8_4bit_pt232x_rda580x.elf section `.text' will not fit in region
`text'
c:/program files/avrgcc/bin/../lib/gcc/avr/5.2.1/../../../../avr/bin/ld.exe: reg
ion `text' overflowed by 40 bytes
collect2.exe: error: ld returned 1 exit status
make: *** [build/ampcontrol_m8_4bit_pt232x_rda580x.elf] Error 1Спойлер
Код: Выделить всё
C:\ampcontrol-m8>make
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/adc.o -MF build/./adc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_tda7439 -c -o build/adc.o adc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/display.o -MF build/./display.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT
-D_RDA580X -D_tda7439 -c -o build/display.o display.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/fft.o -MF build/./fft.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_tda7439 -c -o build/fft.o fft.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/i2c.o -MF build/./i2c.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_tda7439 -c -o build/i2c.o i2c.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/input.o -MF build/./input.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_
RDA580X -D_tda7439 -c -o build/input.o input.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/main.o -MF build/./main.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RD
A580X -D_tda7439 -c -o build/main.o main.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/remote.o -MF build/./remote.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -
D_RDA580X -D_tda7439 -c -o build/remote.o remote.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/rtc.o -MF build/./rtc.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_RDA5
80X -D_tda7439 -c -o build/rtc.o rtc.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/spisw.o -MF build/./spisw.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT -D_
RDA580X -D_tda7439 -c -o build/spisw.o spisw.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/ks0066.o -MF build/display/ks0066.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_
PORT -D_RDA580X -D_tda7439 -c -o build/display/ks0066.o display/ks0066.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/audio.o -MF build/audio/audio.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT
-D_RDA580X -D_tda7439 -c -o build/audio/audio.o audio/audio.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/tuner.o -MF build/tuner/tuner.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_PORT
-D_RDA580X -D_tda7439 -c -o build/tuner/tuner.o tuner/tuner.c
avr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-secti
ons -fdata-sections -ffreestanding -mmcu=atmega8 -DF_CPU=8000000L -MMD -MP -MT b
uild/rda580x.o -MF build/tuner/rda580x.d -DKS0066_WIRE_4BIT -DKS0066 -D_NO_MUTE_
PORT -D_RDA580X -D_tda7439 -c -o build/tuner/rda580x.o tuner/rda580x.c
avr-gcc -g -Wall -Werror -mmcu=atmega8 -Wl,--gc-sections -Wl,--relax -o build/am
pcontrol_m8_4bit_tda7439_rda580x.elf build/adc.o build/display.o build/fft.o bui
ld/i2c.o build/input.o build/main.o build/remote.o build/rtc.o build/spisw.o bui
ld/display/ks0066.o build/audio/audio.o build/tuner/tuner.o build/tuner/rda580x.
o -lm
avr-objdump -h -S build/ampcontrol_m8_4bit_tda7439_rda580x.elf > build/ampcontro
l_m8_4bit_tda7439_rda580x.lss
avr-objcopy -O ihex -R .eeprom -R .nwram build/ampcontrol_m8_4bit_tda7439_rda580
x.elf flash/ampcontrol_m8_4bit_tda7439_rda580x.hex
AVR Memory Usage:
Program: 7596 bytes (.text + .data)
Data: 556 bytes (.data + .bss)Простите, но я не знаю какWiseLord писал(а):Ну, или для 6-го gcc попробовать отключить -Werror/-Wall у компилятора.
У меня же TDA7440d, Вы писали, что она аналогична TDA7439 но без регулировки СЧ, её и буду использовать - навыдирал с муз.центров
I'am a Rock N' Roll-Aholic
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
В Makefile просто отключить эти опции.Ant-RG писал(а):Простите, но я не знаю как
А если отключить эти строки в коде, параметр "Тембр СЧ" должен пропускаться, по идее.
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Спасибо за помощь! В железе проекта пока нет, соберу и буду пробовать.
И ещё, как я понял все изменения касательно переназначения функций выводов делаются только в файле pins.h, я прав? Переназначать можно произвольно все выводы кроме портов на I2C?
И правильно ли я понимаю, что если нужна прошивка без тюнера то достаточно просто удалить строку TUNER = RDA580X в makefile?
Извините что много вопросов, просто решил сразу разобраться
И ещё, как я понял все изменения касательно переназначения функций выводов делаются только в файле pins.h, я прав? Переназначать можно произвольно все выводы кроме портов на I2C?
И правильно ли я понимаю, что если нужна прошивка без тюнера то достаточно просто удалить строку TUNER = RDA580X в makefile?
Извините что много вопросов, просто решил сразу разобраться
I'am a Rock N' Roll-Aholic
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Отключить тюнер можно сборкой make TUNER=NO (или просто прописать этот вариант в Makefile, или просто удалить оттуда)
Да, поменять можно любые ножки кроме аппаратных (I2C, вход анализатора спектра). При большой необходимости можно I2C программный использовать (взять практически совместимый по вызовам код можно, например, из другого моего проекта).
Да, поменять можно любые ножки кроме аппаратных (I2C, вход анализатора спектра). При большой необходимости можно I2C программный использовать (взять практически совместимый по вызовам код можно, например, из другого моего проекта).
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Да три ножки не так критичны, пусть будут на месте, спасибо Вам!
I'am a Rock N' Roll-Aholic
-
Cheal
- Грызет канифоль
- Сообщения: 265
- Зарегистрирован: Пн окт 31, 2011 12:35:59
- Откуда: Родился в Сибири
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Для windows gcc есть уже и 8.
Можно посмотреть по адресу:
https://sourceforge.net/projects/mobile ... 8Win32%29/
Можно посмотреть по адресу:
https://sourceforge.net/projects/mobile ... 8Win32%29/
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
сделал коммутацию канала с FM тюнером через гнездо штекера 3.5 мм для наушников(5 контактное гнездо). когда в гнезде нет штекера, звук идет от FM тюнера, штекер от внешнего источника в гнездо вставил, звук идет от внешнего источника сигнала.
вопрос, как софтово послать команду Mute тюнеру? аудио сигнал от тюнера идет даже при переключении темброблока на другой канал, если штекер не вставлен в гнездо с каналом тюнера, то на соседнем канале его слышно.
AMPControl собран на ATMega8, прошивка ampcontrol_m8_4bit_tda731x_tea5767 предпоследней сборки (репу с гита тяну).
вопрос, как софтово послать команду Mute тюнеру? аудио сигнал от тюнера идет даже при переключении темброблока на другой канал, если штекер не вставлен в гнездо с каналом тюнера, то на соседнем канале его слышно.
AMPControl собран на ATMega8, прошивка ampcontrol_m8_4bit_tda731x_tea5767 предпоследней сборки (репу с гита тяну).
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
У тюнера есть функция void tunerSetMute(uint8_t value).
На ATmega32 при переключении на отличные от нулевого входа (входа тюнера) входы это всё отрабатывает, и тюнер глушится. На ATmega8 такой обработки, ЕМНИП, нет.
Так что добавьте этот вызов в обработчики переключения входов и всё должно заработать - лишь бы в МК влезло.
Что-то вроде tunerSetMute(aproc.input) будет автоматически глушить тюнер на входах старше нулевого.
P.S. На ATmega32 используется вызов tunerSetMute(aproc.mute || aproc.input).
На ATmega32 при переключении на отличные от нулевого входа (входа тюнера) входы это всё отрабатывает, и тюнер глушится. На ATmega8 такой обработки, ЕМНИП, нет.
Так что добавьте этот вызов в обработчики переключения входов и всё должно заработать - лишь бы в МК влезло.
Что-то вроде tunerSetMute(aproc.input) будет автоматически глушить тюнер на входах старше нулевого.
P.S. На ATmega32 используется вызов tunerSetMute(aproc.mute || aproc.input).
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
ок, попробую допилить, спасибо
Добавлено after 22 minutes 50 seconds:
[uquote="WiseLord",url="/forum/viewtopic.php?p=3155884#p3155884"]P.S. На ATmega32 используется вызов tunerSetMute(aproc.mute || aproc.input).[/uquote]
процедуру void tunerSetMute(uint8_t value) нашел в tuner.c в обоих ветках репы, а вызов tunerSetMute(aproc.mute || aproc.input) в ветке M-32 найти не могу, чтобы повторить в m-8.
можете указать точнее файл с обработчиком и синтаксис вызова? я в С пока в категории"чайник" нахожусь
там есть еще 2 процедуры, подходящие по смыслу к задаче(на мой взгляд),
void tunerPowerOn(void)
void tunerPowerOff(void)
в каких случаях их можно корректно заюзать?
Добавлено after 22 minutes 50 seconds:
[uquote="WiseLord",url="/forum/viewtopic.php?p=3155884#p3155884"]P.S. На ATmega32 используется вызов tunerSetMute(aproc.mute || aproc.input).[/uquote]
процедуру void tunerSetMute(uint8_t value) нашел в tuner.c в обоих ветках репы, а вызов tunerSetMute(aproc.mute || aproc.input) в ветке M-32 найти не могу, чтобы повторить в m-8.
можете указать точнее файл с обработчиком и синтаксис вызова? я в С пока в категории"чайник" нахожусь
там есть еще 2 процедуры, подходящие по смыслу к задаче(на мой взгляд),
void tunerPowerOn(void)
void tunerPowerOff(void)
в каких случаях их можно корректно заюзать?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
В варианте ATmega8 обработка действий идёт в main.c.
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
[uquote="WiseLord",url="/forum/viewtopic.php?p=3156208#p3156208"]В варианте ATmega8 обработка действий идёт в main.c.[/uquote]
я правильно признак включения канала (не тюнера) вставил? и как убрать mute с тюнера, когда канал-0
/* Remap NEXT/PREV_INPUT actions to INPUT_X */
if (action == CMD_RC_IN_NEXT) {
action = CMD_RC_IN_0 + aproc.input;
if (dispMode >= MODE_SND_GAIN0 && dispMode < MODE_SND_END) {
action += 1;
if (action >= CMD_RC_IN_0 + aproc.inCnt)
action = CMD_RC_IN_0;
if (action != CMD_RC_IN_0)
tunerSetMute(aproc.mute || aproc.input);
}
}
совсем заблудился в коде. синтаксис Си после Делфи/objectPascal плохо в голову ложится.
я правильно признак включения канала (не тюнера) вставил? и как убрать mute с тюнера, когда канал-0
/* Remap NEXT/PREV_INPUT actions to INPUT_X */
if (action == CMD_RC_IN_NEXT) {
action = CMD_RC_IN_0 + aproc.input;
if (dispMode >= MODE_SND_GAIN0 && dispMode < MODE_SND_END) {
action += 1;
if (action >= CMD_RC_IN_0 + aproc.inCnt)
action = CMD_RC_IN_0;
if (action != CMD_RC_IN_0)
tunerSetMute(aproc.mute || aproc.input);
}
}
совсем заблудился в коде. синтаксис Си после Делфи/objectPascal плохо в голову ложится.


