Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

This file should only be compiled with iccavr,icca90 or aavr.
Что поделать, код инклуда рассчитан ан конкретный компилятор, ошибка эта выдается директивой условной компиляции которая проверяет версию компилятора. ищи соответствующий инклуд под свой компилятор! Или ищи нужный компилятор... вобщем как-то так.

Починить неизвестно что работающее неизвестно как - обречено на провал, только силы потратишь.

P-канальный полевик управляется напряжением относительно "+" батареи, и когда напряжение батареи выше напряжения лог.уровня то полевик будет постоянно открыт, нужно ставить перед ним драйвер на транзисторе с ОК хотябы, который согласует уровни напряжений логики и батареи.
Контактная информация:
Реклама
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Сообщение service47 »

Alexeyslav писал(а): нужно ставить перед ним драйвер на транзисторе с ОК хотябы, который согласует уровни напряжений логики и батареи.
Раз с программой облом, буду ставить перед затвором полевика биполярный VT, только как его включить и какие номиналы резисторов, чтобы он при лог.0 на выходе МК давал на затвор напряжение большее, чем на истоке, а при запуске ШИМ, т.е. при каком-то среднем напряжении открывал полевой VT?
Изображение

Все, уже не нужно.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

avr, на аппаратном уровне поддерживает только вычитание и сложение ?
Tell Me The Truth
Мудрый кот
Аватара пользователя
Сообщения: 1815
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Сообщение Kavka »

Не только. Некоторые умеют умножать. Меги, например. За все не ручаюсь, но некоторые умеют.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

Kavka писал(а):Некоторые умеют умножать.
нифигасе :))
а как дела с этим обстоят у pic, arm, mps40 ?
может они помимо этого еще и делить могут ?
Tell Me The Truth
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

Деление - то же умножение, только на дробь.
Docendo discimus
Контактная информация:
Реклама
Мудрый кот
Аватара пользователя
Сообщения: 1815
Зарегистрирован: Чт июн 10, 2010 08:55:35
Откуда: Сибирские Афины

Сообщение Kavka »

FreshMan писал(а): а как дела с этим обстоят у pic, arm, mps40 ?
Универсальным ответом будет - смотрите спецификацию на конкретный "камень". :)
Например, могу сказать, что МК на на основе ARM Cortex-M4F умеет не только целочисленную арифметику, но с плавающей точкой. В том числе и умножать/делить.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
Друг Кота
Аватара пользователя
Сообщения: 3795
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

FreshMan писал(а): а как дела с этим обстоят у pic, arm, mps40 ?
может они помимо этого еще и делить могут ?
Про ARMы ответили выше. Большинство современных моделей MSP430 снабжены 32х32 перемножителем с накоплением 64-битного результата, но в них отсутствует делитель. У PIC18 есть только 8х8 перемножитель, зато у PIC24/33 имеется 16х16 перемножитель и 32/16 делитель. У х51: 8х8 перемножитель и 8/8 делитель. RL78: 16х16 перемножитель и 32/32 делитель.
Друг Кота
Аватара пользователя
Сообщения: 26025
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Сообщение КРАМ »

pyzhman писал(а):Деление - то же умножение, только на дробь.
Это если делить на константу.
А для произвольного случая аппаратное деление заметно длиннее умножения в смысле количества машциклов процессора.
Chettuser

Сообщение Chettuser »

Чем из простых программаторов прошить AT17? Это конфигурационная память для FPGA.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 174
Зарегистрирован: Вт сен 11, 2012 09:13:52
Откуда: Брест, Беларусь

Сообщение sphincs »

подогнали несколько плат с микросхемами памяти AMIC A29010 (предположительно они выдраны из автомобилей и раньше умели разговаривать). подскажите, чем она шьется, и может какой-нибудь русскоязычный ресурс/файл, где можно было бы получить общее представление о том, как с ней работать. даташит читаю, но раньше с МС памяти не общался
Контактная информация:
Chettuser

Сообщение Chettuser »

Вечер потратил но так и не понял, вопрос следующий:
Есть табличное конвертирование. Скажем для простого вывода цифр 0-9. Тут всё понятно - порядковый номер в таблице (массиве) есть дешифрованная цифра. А как быть со шрифтом? Откуда компилятор знает что буква "А", например соответствует 10-му элементу массива, а не 23-му например?
Друг Кота
Сообщения: 5432
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий

Сообщение petrenko »

Почему компилятор должен "знать" ? :o

Таблицу составляет тот, кому нужно получить правильный результат , вот составитель таблицы пусть и знает.
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
Контактная информация:
Chettuser

Сообщение Chettuser »

Хорошо, каким образом сопоставляется код буквы А с её местом в таблице?
Друг Кота
Аватара пользователя
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск

Сообщение Леонид Иванович »

Вся разница лишь в том, что семисегментная цифра занимает 1 байт, а буква занимает в таблице знакогенератора несколько байт, например, 5. Тогда смещение в массиве будет код символа, умноженный на 5. Можно знакогенератор сделать в виде двухмерного массива, тогда код символа будет просто одним из индексов.
Контактная информация:
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

А компилятор и не знает. Просто для него буква "А" это число и не более! А уже это число можно использовать как индекс массива, откуда можно извлечь побитовое изображение буквы.
Иногда делают финт ушами, чтобы съекономить место под шрифт - используя в качестве индекса разность кода символа и базы с которой начинается шрифт в памяти. Например шрифт задан с буквы "A", которой соответствует 0-й индекс. Если надо реализовать только шрифт для букв и символов и не хочется реализовывать весь шрифт для всех 255 символов, можно использовать таблицу преобразования код символа-индекс в массиве шрифта, если это диапазоны из ASCII таблицы символов, то можно обойтись обычной арифметикой и условиями.
Контактная информация:
Chettuser

Сообщение Chettuser »

Стоп - а преобразование "А" в её код каким образом идёт? Т.е. не получится ли так, что вместо кода буквы А я получу код запятой например?
Друг Кота
Сообщения: 5432
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий

Сообщение petrenko »

Ну на всякий случай перепроверьте, конечно же - вдруг у вас некий экзотический компилятор, и в настройках установлено считать, например, код RADIX .. случайно.
Но это вряд ли.
Обычно, в 99% случаев, код ASCII
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск

Сообщение Леонид Иванович »

Chettuser писал(а):не получится ли так, что вместо кода буквы А я получу код запятой например?
В знакогенераторе символы должны быть расположены в порядке возрастания их кода.
Контактная информация:
Chettuser

Сообщение Chettuser »

Т.е. если я правильно понимаю - это и есть самый настоящий ASCII? Получается в этом случае я не могу например исключить часть ненужного мне кода для экономии памяти? Или же могу?
Ответить

Вернуться в «Разные вопросы по МК»