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

 
 
> ГЛЮКИ КОМПИЛЯТОРОВ, предлагаю описывать здесь
Fortune
сообщение Feb 6 2007, 11:28
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 1-02-07
Из: Украина
Пользователь №: 24 940



Открыть эту тему меня подтолкнул тот факт, что используя однажды в IARe функцию SIN, я так и не смог добиться нормальной ее работы. Хотя не утверждаю что мой код не содержал ошибок, но все же может кто-то сталкивался с подобными проблемами?

Исходным текстом поделиться не могу, потому что уже затер его.

Предлагаю также сюда кидать описание глюков (багов, граблей) при работе с компиляторами...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ahulap
сообщение Feb 6 2007, 16:19
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 22-06-06
Из: Kharkiv, UA
Пользователь №: 18 284



мне кажется, что дело здесь в преобразовании типов - результат sin(a) преобразовывается в char, т.е. всегда 0.
может, попробовать что-то вроде y=(40.0*sin(a))+100 или y=(unsigned char)((float)(40.0*sin(a))+100) ...
Go to the top of the page
 
+Quote Post
_Bill
сообщение Feb 6 2007, 16:28
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(ahulap @ Feb 6 2007, 16:19) *
мне кажется, что дело здесь в преобразовании типов - результат sin(a) преобразовывается в char, т.е. всегда 0.
может, попробовать что-то вроде y=(40.0*sin(a))+100 или y=(unsigned char)((float)(40.0*sin(a))+100) ...

Да правильно там все. То, что Вы предлагаете, совершенно излишне. Хотя это и не делает выражение некорректным, но делает менее читабельным. И вообще, "глюк"-то в чем?
Go to the top of the page
 
+Quote Post
Fortune
сообщение Feb 7 2007, 11:50
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 1-02-07
Из: Украина
Пользователь №: 24 940



Цитата(_Bill @ Feb 6 2007, 17:28) *
... И вообще, "глюк"-то в чем?


Ну началось все с того, что я подключил atmega128 к монитору bg320240 через sed1375 и сделал интерфейс связи с писюком через usart.
так вот, если обсчитываю по приведенной выше программе значение функции
в компьютере - получаю на экране чистый синус,
если пытаюсь обсчитать в контроллере, то выводится мусор, точнее та же синусоида,но грязная, и если выводить ее повторно, через некоторое время синус обрисовывается треугольником, случайные точки тоже имеются.Жаль не могу прислать скриншот, потому что девайс пока у меня не работает - надо монитор доставать.
Ну а разобраться тогда с проблемой у меня не хватило терпения, поэтому и жалуюсь
на компилятор, ибо за собой греха "успеть не нашел".
Go to the top of the page
 
+Quote Post
_Bill
сообщение Feb 7 2007, 13:33
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Fortune @ Feb 7 2007, 11:50) *
Цитата(_Bill @ Feb 6 2007, 17:28) *

... И вообще, "глюк"-то в чем?


Ну началось все с того, что я подключил atmega128 к монитору bg320240 через sed1375 и сделал интерфейс связи с писюком через usart.
так вот, если обсчитываю по приведенной выше программе значение функции
в компьютере - получаю на экране чистый синус,
если пытаюсь обсчитать в контроллере, то выводится мусор, точнее та же синусоида,но грязная, и если выводить ее повторно, через некоторое время синус обрисовывается треугольником, случайные точки тоже имеются.Жаль не могу прислать скриншот, потому что девайс пока у меня не работает - надо монитор доставать.
Ну а разобраться тогда с проблемой у меня не хватило терпения, поэтому и жалуюсь
на компилятор, ибо за собой греха "успеть не нашел".

А как со временем? Вы же пытаетесь формировать сигнал в реальном времени, а вычисления с плавающей точкой времени требуют.
Go to the top of the page
 
+Quote Post
Fortune
сообщение Feb 7 2007, 15:19
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 1-02-07
Из: Украина
Пользователь №: 24 940



Цитата(_Bill @ Feb 7 2007, 14:33) *
А как со временем? Вы же пытаетесь формировать сигнал в реальном времени, а вычисления с плавающей точкой времени требуют.

Что значит "времени требуют"? Немного не понимаю. Я вызвал функцию, она посчитала. Функция ведь не в фоне выполняется.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Fortune   ГЛЮКИ КОМПИЛЯТОРОВ   Feb 6 2007, 11:28
- - SasaVitebsk   Предыдущие попытки "обвинить" компилятор...   Feb 6 2007, 12:12
|- - IgorKossak   Цитата(SasaVitebsk @ Feb 6 2007, 11:12) П...   Feb 6 2007, 12:53
||- - satellite-plus   ?eeget16_64_inc: ADIW R25:R24,1 ?eeget16_64...   Feb 6 2007, 13:18
||- - IgorKossak   Цитата(satellite-plus @ Feb 6 2007, 12...   Feb 6 2007, 13:44
|- - Fortune   Цитата(SasaVitebsk @ Feb 6 2007, 13:12) П...   Feb 6 2007, 13:23
|- - _Bill   Цитата(Fortune @ Feb 6 2007, 13:23) Цитат...   Feb 6 2007, 13:28
|- - Fortune   Цитата(_Bill @ Feb 6 2007, 14:28) Вот и д...   Feb 6 2007, 14:04
|- - xinod2000   Цитата(Fortune @ Feb 6 2007, 15:04) Цитат...   Feb 6 2007, 14:50
|- - _Bill   Цитата(xinod2000 @ Feb 6 2007, 14:50) Цит...   Feb 6 2007, 15:23
- - Sergio66   Согласен с теми, кто предлагает вынести на широкое...   Feb 6 2007, 13:41
- - GDI   Может потому что функция имеет следующее объявлени...   Feb 6 2007, 14:30
||- - _Bill   Цитата(Fortune @ Feb 7 2007, 15:19) Цитат...   Feb 7 2007, 16:01
||- - Fortune   Цитата(_Bill @ Feb 7 2007, 17:01) Сколько...   Feb 7 2007, 18:18
|- - ahulap   Цитата(Fortune @ Feb 7 2007, 10:50) если ...   Feb 8 2007, 18:28
- - GDI   delay(250) убрать - вот и будет время   Feb 7 2007, 14:14
- - DimG   Почему никто не обратил внимание на вот это Цитата...   Feb 7 2007, 16:06
- - ahulap   запись y=(40*sin(a))+100 верна, я проверил на неск...   Feb 7 2007, 17:26
- - GDI   Цитатаменя по-моему не должно беспокоить время вып...   Feb 7 2007, 18:38
|- - Fortune   [quote name='GDI' post='207730' date='Feb 7 2007, ...   Feb 8 2007, 10:16
- - GDI   Не плохо было бы посмотреть какие данные получаютс...   Feb 8 2007, 15:59
|- - Fortune   Цитата(GDI @ Feb 8 2007, 16:59) ... предл...   Feb 8 2007, 16:10
|- - Сергей Борщ   Цитата(Fortune @ Feb 8 2007, 15:10) Цитат...   Feb 8 2007, 17:23
- - kolobok0   Цитата(Fortune @ Feb 6 2007, 11:28) ... П...   Feb 8 2007, 21:02
|- - ahulap   Цитата(kolobok0 @ Feb 8 2007, 20:02) не з...   Feb 8 2007, 21:35
- - DimG   ЦитатаВряд ли. Потому что прямые линии рисуются эт...   Feb 9 2007, 06:06
|- - Fortune   Цитата(DimG @ Feb 9 2007, 07:06) ЦитатаВр...   Feb 9 2007, 11:05
- - tag   ...уже около года юзаю IAR и столкнулся с интересн...   Feb 9 2007, 11:08
- - DimG   Fortune Вообще-то я просто хотел увидеть, как объя...   Feb 9 2007, 11:23
|- - Fortune   Цитата(DimG @ Feb 9 2007, 12:23) Вообще, ...   Feb 9 2007, 12:00
- - ahulap   Функция sine() не имеет параметров, так что должна...   Feb 9 2007, 11:32
- - Fortune   Изменил программу: volatile u08 iob[512]; void si...   Feb 9 2007, 12:48
|- - _Bill   Цитата(Fortune @ Feb 9 2007, 12:48) Измен...   Feb 9 2007, 14:07
|- - Fortune   Цитата(_Bill @ Feb 9 2007, 15:07) А контр...   Feb 9 2007, 15:59
|- - _Bill   Цитата(Fortune @ Feb 9 2007, 15:59) Цитат...   Feb 9 2007, 16:07
|- - Fortune   Цитата(_Bill @ Feb 9 2007, 17:07) Цитата(...   Feb 9 2007, 16:36
- - Andy Great   Аргумент синуса предполагается в радианах.   Feb 9 2007, 18:50


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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 15:13
Рейтинг@Mail.ru


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