реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Помогите откомпилировать исходник
RA3MAH
сообщение Apr 2 2017, 11:02
Сообщение #1





Группа: Участник
Сообщений: 11
Регистрация: 27-03-17
Пользователь №: 96 129



Добрый день. Не нашел подобной темы. Не могу откомпилировать исходник на асм для тини 10. Может кто сможет помочь или подсказать компилятор? пробовал avrasm2 - пишет
Код
Warning: AVRASM 1.x compatibility is ON - some errors will appear as warnings
Modulate.asm(1): warning: '.device ATtiny10' only sets device name
Modulate.asm(16): error: syntax error, unexpected '\n', expecting MNEMONIC or REGISTER or SYMBOL or FUNCTION

Прикрепленные файлы
Прикрепленный файл  file.zip ( 3.86 килобайт ) Кол-во скачиваний: 27
 
Go to the top of the page
 
+Quote Post
ltDrakon
сообщение Apr 2 2017, 11:27
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 17-03-17
Пользователь №: 95 867



вопрос в данном конретком коде ..

или вообще под тини10 - ?

Цитата
Modulate.asm(16): error: syntax error, unexpected '\n', expecting MNEMONIC or REGISTER or SYMBOL or FUNCTION


тут то я думаю все понятно ...
Go to the top of the page
 
+Quote Post
RA3MAH
сообщение Apr 2 2017, 11:30
Сообщение #3





Группа: Участник
Сообщений: 11
Регистрация: 27-03-17
Пользователь №: 96 129



Цитата(ltDrakon @ Apr 2 2017, 15:27) *
вопрос в данном конретком коде ..

или вообще под тини10 - ?



тут то я думаю все понятно ...


Вопрос в том, что с микроконтроллерами я никак, и уж тем более с асм. Нашел устройство с исходным кодом, но увы, не знаю в чем ошибка.
Go to the top of the page
 
+Quote Post
ltDrakon
сообщение Apr 2 2017, 11:32
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 17-03-17
Пользователь №: 95 867



ну а зачем вам тогда исходник ? берите уже готовую прошивку ..

ПС: код изначально писать на этом компиляторе и под этот ТИНИ10 ?
Go to the top of the page
 
+Quote Post
RA3MAH
сообщение Apr 2 2017, 11:34
Сообщение #5





Группа: Участник
Сообщений: 11
Регистрация: 27-03-17
Пользователь №: 96 129



Цитата(ltDrakon @ Apr 2 2017, 15:32) *
ну а зачем вам тогда исходник ? берите уже готовую прошивку ..

ПС: код изначально писать на этом компиляторе и под этот ТИНИ10 ?

В чем и дело, что автор не выкладывает прошивки. Только исходники. Тини 10 не обязательно, так автор решил.
Go to the top of the page
 
+Quote Post
ltDrakon
сообщение Apr 2 2017, 12:10
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 17-03-17
Пользователь №: 95 867



попозже попробую у ся ...

кароч - извините, но выкиньте это нафиг ...

ошибки на ошибках ( попробовал в студию загнать ) - такое ощущение что просто написали и даже не проверяли и не компилировали не разу ....

Сообщение отредактировал ltDrakon - Apr 2 2017, 12:10
Go to the top of the page
 
+Quote Post
RA3MAH
сообщение Apr 2 2017, 13:47
Сообщение #7





Группа: Участник
Сообщений: 11
Регистрация: 27-03-17
Пользователь №: 96 129



Цитата(ltDrakon @ Apr 2 2017, 16:10) *
попозже попробую у ся ...

кароч - извините, но выкиньте это нафиг ...

ошибки на ошибках ( попробовал в студию загнать ) - такое ощущение что просто написали и даже не проверяли и не компилировали не разу ....


Спасибо! Буду искать что-нибудь другое.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 2 2017, 14:33
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(ltDrakon @ Apr 2 2017, 15:10) *
ошибки на ошибках ( попробовал в студию загнать ) - такое ощущение что просто написали и даже не проверяли и не компилировали не разу ....

Вполне вменяемый упрощенный ассемблерный исходник. Портировать под любой avr-ассемблер без проблем. Но, если головы на плечах нет, то просто следует взять с сайта автора не только исходник, но и его ассемблер и не пихать исходник в студии всякие.



--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
ltDrakon
сообщение Apr 2 2017, 17:25
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 17-03-17
Пользователь №: 95 867



Цитата(zltigo @ Apr 2 2017, 17:33) *
Вполне вменяемый упрощенный ассемблерный исходник. Портировать под любой avr-ассемблер без проблем. Но, если головы на плечах нет, то просто следует взять с сайта автора не только исходник, но и его ассемблер и не пихать исходник в студии всякие.



по вашему написать вместо .def -> .equ - это для тех кто с головой на плечах ?

Go to the top of the page
 
+Quote Post
Jury093
сообщение Apr 2 2017, 17:27
Сообщение #10


Знающий
****

Группа: Участник
Сообщений: 959
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(RA3MAH @ Apr 2 2017, 14:02) *
Добрый день. Не нашел подобной темы. Не могу откомпилировать исходник на асм для тини 10. Может кто сможет помочь или подсказать компилятор? пробовал avrasm2 - пишет
Код
Warning: AVRASM 1.x compatibility is ON - some errors will appear as warnings
Modulate.asm(1): warning: '.device ATtiny10' only sets device name
Modulate.asm(16): error: syntax error, unexpected '\n', expecting MNEMONIC or REGISTER or SYMBOL or FUNCTION

судя по именам и составу файлов, архив взят примерно отсюда
https://sites.google.com/site/wayneholder/a...-in-an-attiny10
если подняться чуть выше, то в списке появляется
https://sites.google.com/site/wayneholder/a...-and-programmer
там похоже какой-то чудак изобретает IDE под tiny.. под MacOS..
внизу страницы есть линк на "IDE", если сможете запустить, то видимо и скомпилируется без ошибок, но на мой вкус, проще сорц переписать или адаптировать под что-то менее экзотичное..
Go to the top of the page
 
+Quote Post
Obam
сообщение Apr 3 2017, 07:32
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 756
Регистрация: 14-11-14
Пользователь №: 83 663



ТС, любезный, вы бы хоть сообщили в какой строке "Modulate.asm(16): error: syntax error, unexpected '\n', expecting MNEMONIC or REGISTER or SYMBOL or FUNCTION", ну ясным английским по белому: синтаксическая, внезапно новая строка, а ожидается… ну и т.д.


--------------------
Пролетарий умственного труда.
Go to the top of the page
 
+Quote Post
RA3MAH
сообщение Apr 4 2017, 18:39
Сообщение #12





Группа: Участник
Сообщений: 11
Регистрация: 27-03-17
Пользователь №: 96 129



В общем, я так понял, что исходник на специфическом софте написан. Нашел другую статью, но опять не знаю, в чем откомпилировать. Похоже на С. Выкладываю статью и ссылку.
Код
делал я подобное устройство, летало, скорость передачи 1200, FSK соотношение частот 3/2 на AVR
канал звука больше подвержен помехам, поэтому отказался от использования. кстати увеличивать уровень звукового сигнала не надо, наоборот требуется делитель.
модулятор собран на ATmega8. для генерации несущей используется таймер
то есть при выводе 0 или 1 в таймер просто записывается соответствующее значение. вывод через порт D, в tx_buffer выводимая последовательность байт.
код модулятора:
// Timer 2 output compare interrupt service routine
interrupt [TIM2_COMP] void timer2_comp_isr(void)
{ //OCR2=0x33+0x1A; PORTD=PORTD^0b00100000;
// Place your code here
if (count_tact) count_tact--; // если счетчик тактов не ноль, уменьшаем
else
{
if ((!bit_count)&&tx_data_size) // нет бит на вывод - инициализация
{
tx_word.data_byte[0]=tx_buffer[tx_count++];
if (tx_count==tx_data_size) {
tx_count=0;
tx_data_size=0;
}
tx_word.data_byte[1]=0xFF; // стоповый бит
tx_word.data_word=tx_word.data_word*2; // сдвиг влево
tx_word.data_byte[0]=tx_word.data_byte[0]&0xFE; // стартовый бит
bit_count=11; //1 стартовый, 8-данные, 2- стоповых
}
if (bit_count) // есть биты на вывод
{
OCR2=0x33+(0x1A*(!(tx_word.data_byte[0]&0x01))); // установка таймера
count_tact=1+(tx_word.data_byte[0]&0x01); // установка счетчика тактов
/**/ PORTD=PORTD&0b11011111;
PORTD=PORTD|(0b00100000*(tx_word.data_byte[0]&0x01));
tx_word.data_word=tx_word.data_word/2; // сдвиг вправо
bit_count--;
}
}
}

демодулятор на ATtiny13 просто переводит частоту в последовательность 0 и 1, которую я подавал на COM порт компьютера (ТТЛ)
используется прерывание по компаратору и таймер для расчета периода несущей.
код:
#include <tiny13.h>
unsigned char count_capt; // захват значения счетчика
unsigned char count_tact; // счетчик тактов частоты
unsigned char bit_flag; // флаг частоты бита
unsigned char bit_capt; // захваченный бит по частоте
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
// Place your code here
count_capt=TCNT0; // захват счетчика
TCNT0=0x00; // сброс счетчика
if ((count_capt>0x48)&&(count_capt<0x16)) count_tact=0; // ошибка приема сброс
else
{
bit_capt=(count_capt<0x33); // оценка принимаемого бита по длительности
if (bit_capt==bit_flag) // если сохраненный и захваченный такт совпадают
{
count_tact++;
if (count_tact==(1+bit_flag)) // счетчик достиг предела для значения бита
{
PORTB.2=bit_flag; // вывод бита
count_tact=0; // сброс счетчика
}
}
else
{
count_tact=0; // сброс счетчика тактов
bit_flag=bit_capt; // сохранение значения такта
}
}
}
Кстати, в приемнике перед контроллером, необходимо установить ФНЧ. я ставил активный, на операционнике. это позволит немного улучшить помехоустойчивость, а следовательно и дальность


http://forum.rcdesign.ru/f8/thread300546.html#post3910216
Go to the top of the page
 
+Quote Post
Lagman
сообщение Apr 4 2017, 20:14
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



Цитата(RA3MAH @ Apr 4 2017, 21:39) *

Это куски кода из программы, так просто из этого не получить прошивку.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th June 2025 - 06:02
Рейтинг@Mail.ru


Страница сгенерированна за 0.01475 секунд с 7
ELECTRONIX ©2004-2016