Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
23.07.2009, 22:32
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
|
Сообщение от Leontiev
|
Если Вас заботит переносимость
|
О ней всё время твердят СИ программеры ))))
наверное не учитывая специфику МК.
Сообщение от Leontiev
|
используйте стандарты, а не "описания, которые написаны по СИ для микроконтролеров".
|
Я пишу для PIC и AVR на асме...
Теперь хочется это делать на Си... и что бы не писать одни и те же функции для разных MK и компиляторов...
Просто никто этого не обьясняет.. приходится доходить самому..
Хорошо, спасибо что подсказали, буду юзать
Кернигана/Риччи + Уэйта/Прата...
Пока всем спасибо.. до следующей засады
|
|
|
|
24.07.2009, 02:25
|
|
Прописка
Регистрация: 18.06.2006
Сообщений: 179
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
|
Переносимость программ на С - один из мифов, который возник во времена Кернигана и Ричи и относился к программам общего назначения, типа вычислений общего характера. С тем же успехом о переносимости можно было говорить про фортран-4.
Как только речь заходит о работе с железом, про переносимость можно смело забывать и выбирать компилятор с максимально удобным/широким набором библиотечных функций: можно, кончено, каждый раз самому писать процедуры работы с I2C, 1-ware и т.п. но зачем оно надо? Время есть лишнее на отладку и вылавливание глюков (а они будут обязательно)?
|
|
|
|
26.07.2009, 14:52
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
|
Сообщение от atlab
|
выбирать компилятор с максимально удобным/широким набором библиотечных функций: можно, кончено, каждый раз самому писать процедуры работы с I2C, 1-ware
|
а приходится, дело в том то библиотечные USART, I2C, ЖКИ, 1WIRE написаны не для паралельного многозадачного использования...
Вот потому и не хочется их писать под разные МК...
а IAR AVR с Hitech уже потихоньку скрещиваю...
|
|
|
|
31.01.2014, 17:56
|
|
Временная регистрация
Регистрация: 27.02.2012
Адрес: Николаев
Сообщений: 98
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
Такой вопрос. Компилятор PICC18.
Нужно оперировать с переменными 64 бит и более. Наткнулся вот на такое решение:
Код:
|
typedef union /* unsigned 64 Bit */
{
unsigned char B[8]; /* 4 x 8 bit bytes = 64 bit */
unsigned long W[2]; /* 2 x 32 bit words = 64 bit */
}u64;
u64 W1,W2; |
Почитав про ф-цию union стало понятно что за зверь, но непонятно как это использовать. Т.е. умножать, делить значения с сохранением их в виде массива. В общем, кто с этим знаком - просьба примерчик небольшой выложить.
|
|
|
|
31.01.2014, 22:25
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
Сообщение от ‹VenoM›
|
Такой вопрос. Компилятор PICC18.
Нужно оперировать с переменными 64 бит и более. Наткнулся вот на такое решение:
Код:
|
typedef union /* unsigned 64 Bit */
{
unsigned char B[8]; /* 4 x 8 bit bytes = 64 bit */
unsigned long W[2]; /* 2 x 32 bit words = 64 bit */
}u64;
u64 W1,W2; |
Почитав про ф-цию union стало понятно что за зверь, но непонятно как это использовать. Т.е. умножать, делить значения с сохранением их в виде массива. В общем, кто с этим знаком - просьба примерчик небольшой выложить.
|
uinon не функция. Читаем K&R. Потом выклянчиваем примерчики. А может и не выклянчиваем. Там все рассказано, все в ваших руках.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
04.02.2014, 19:02
|
|
Временная регистрация
Регистрация: 27.02.2012
Адрес: Николаев
Сообщений: 98
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
мда, похоже написать ф-цию умножения/деления длинных числе будет не так просто. А существуют готовые библиотеки для этих целей?
|
|
|
|
04.02.2014, 19:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
Сообщение от ‹VenoM›
|
мда, похоже написать ф-цию умножения/деления длинных числе будет не так просто. А существуют готовые библиотеки для этих целей?
|
Для работы с длинными числами существуют МК с более широкой шиной. Многоразрядная арифметика на узких шинах существует. Но возможна потеря точности.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
04.02.2014, 20:36
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
Если впереди много задач, требующих такую арифметику, и переход на другой проц не целеобразен, то что мешает потратить дня 2 -3 и написать эту арифметику? И пользовать ее всю оставщуюся жизнь. Сложение, вычитание целых - детская задача, умножение чуть сожнее, деление еще чуть сложнее. А, сделав эти четыре подпрограммки, сваять float арифметику уже совсем просто. Ну уж если все это готово, то double арифметика сдастся за несколько часов
|
|
|
|
05.02.2014, 10:52
|
|
Гражданин KAZUS.RU
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
Не знаю как с PIC18, но IAR AVR (да и вообще IAR) работает с double. Надо галочку поставить да и всё.
|
|
|
|
05.02.2014, 12:10
|
|
Заблокирован
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
|
Re: Си, IAR AVR & Hi Tech PICC
Причём здесь double к целочисленной математике? Да и вообще, IAR не всегда работает с 64 бит!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
HI-TECH PICC™ Enterprise Edition (new!!!)???
|
shihaidong |
Микроконтроллеры, АЦП, память и т.д |
14 |
30.12.2011 15:45 |
Библиотеки LCD 44780 на С CCS или HI-TECH PICC для PIC16
|
vsvetlov |
Микроконтроллеры, АЦП, память и т.д |
15 |
27.10.2009 08:03 |
IAR for AVR & Assembler
|
GLVlad |
Микроконтроллеры, АЦП, память и т.д |
3 |
04.06.2008 16:46 |
Вопрос новичка. IAR C, AVR & interrupt
|
sns13 |
Микроконтроллеры, АЦП, память и т.д |
5 |
18.03.2008 18:08 |
PIC18F.., HI-TECH PICC-18 и MPLAB
|
avartemiy |
Микроконтроллеры, АЦП, память и т.д |
11 |
20.08.2007 02:35 |
Часовой пояс GMT +4, время: 06:23.
|
|