atmega128 и датчики тока

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Alex Mogilnikov! You wrote in conference fido7.ru.embedded to Andrey Bivshih on Sat, 06 May 2006 12:56:56

+0400:

AB>> Hо вот GCC с Hitech даже нельзя сравнивать. Кажется, что AB>> тебя связали по рукам :). Почему нельзя, например, <имя AB>> бита>=1; ?

AM> В gcc можно, а в Hitech нельзя? Hе пользуйся Hitech.

В Hitech как раз можно, там вообще тип bit есть.

dima

formatting link

Reply to
Dmitry Orlov
Loading thread data ...

Привет Andrey!

06 May 06 15:29, Alexandr Torres писал Alex Mogilnikov:

AB>>> Hо вот GCC с Hitech даже нельзя сравнивать. Кажется, что тебя AB>>> связали по рукам :). Почему нельзя, например, <имя бита>=1; ?

AM>> В gcc можно, а в Hitech нельзя? Hе пользуйся Hitech.

AT> Да можно это в Хайтечь.

AT> bit Flag; AT> ... AT> Flag=1; AT> ...

Hу вот, значит gcc и hitech вполне можно сравнивать. :)

Всего наилучшего, [Team PCAD 2000] Алексей М.

Reply to
Alex Mogilnikov

Пpивет, Dimmy!

*** 06 May 06 08:55, Dimmy Timchenko wrote to Andrey Bivshih:

AB>> Я имел ввиду Мегу128, если искать самый дешевый 18 пик с 64 AB>> ногами, примерно равной памятью и перефирией. То он будет дороже.

DT> Кстати, а есть ли в природе AVR-ки в DIP40-корпусах, совместимые по DT> ножкам с 51-ми? Смутно помню, что когда-то была такая фича, но сейчас DT> посмотрел на мегу-16 - расположение ног другое.

8515 посмотри. Hо сейчас все стараются сделать по новым стандартам - ноги питания и "земли" по кратчайшему пути к кристаллу.

с уважением Владислав

Reply to
Vladislav Baliasov

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 06 May 2006 14:50:13

+0400:

DT>>> А что, плюсовых безымянных структур там нет? Типа такого:

DT>>> __no_init volatile struct { DT>>> unsigned char WDTIE : 1; DT>>> } @ 0x0000;

DO>> А во что обращение к такому полю он компилирует?

DT> Я взял немного другие примеры, но они эквивалентны.

DT> Изменение - bic/bis (bit clear / bit set):

DT> Проверка - bit (bit test):

DT> В общем, компилятор знает, что это биты, и чтО именно можно с DT> ними делать на данном процессоре.

Значит вполне адекватная замена, важно, чтобы в соответствующе .h они были правильно прописаны.

dima

formatting link

Reply to
Dmitry Orlov

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 06 May 2006 15:18:30

+0400:

AM>>> В gcc можно, а в Hitech нельзя? Hе пользуйся Hitech.

DO>> В Hitech как раз можно, там вообще тип bit есть.

DT> Хорошо, но нестандартно. Hе знаю, как GCC, а IAR старается DT> следовать стандартам на C/C++. Hу, у них целевых платформ DT> пара десятков, им без этого нельзя...

Ну а P0.5 = 1 - стандартно? Всегда есть какие-то нестандартные расширения.

dima

formatting link

Reply to
Dmitry Orlov

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Alex Mogilnikov! You wrote in conference fido7.ru.embedded to Andrey Bivshih on Sat, 06 May 2006 17:47:40

+0400:

AB>>>> Hо вот GCC с Hitech даже нельзя сравнивать. Кажется, что AB>>>> тебя связали по рукам :). Почему нельзя, например, <имя AB>>>> бита>=1; ?

AM>>> В gcc можно, а в Hitech нельзя? Hе пользуйся Hitech.

AT>> Да можно это в Хайтечь.

AT>> bit Flag; AT>> ... AT>> Flag=1; AT>> ...

AM> Hу вот, значит gcc и hitech вполне можно сравнивать. :)

На разных архитектурах это не слишком осмысленно...

dima

formatting link

Reply to
Dmitry Orlov

Hello, Andrey!

(05 Май 06 22:51), Andrey Bivshih писАл Highlander: AB> У атмела переносимости - ни какой. Регистры по разным адресам AB> находятся, ладно, если писать на С, не важно. Hо зачем их назвали-то AB> по разному, в разных кристаллах. Видимо потому, что у этих регистров другая структура а у перефирии другой алгоритм работы. Вполне возможно, что не у всех, но я сталкивался именно с этим, т.е. не обратив на это внимание, можно долго искать ниоткуда появившийся глюк. AB> Иногда, вообще глупости встречаются - например что-бы флаг прерывания AB> в регистре TFIR _сбросить_ - оказывается в него надо _записать_ "1". Иногда это удобно. Мне например, перед переходом на бутлаудер надо сбросить все прерывания, я просто читаю регистр и записываю в него, то что считал. AB> Даташиты, тоже оставили не изгладимое впечатление, вроде процессор - AB> вещь основанная на логике, но даташиты к ним писали явно, AB> руководствуясь какой-то другой логикой. Меня убивают только раскиданные по всему даташиту фьюзы, с остальным нормально. AB> Почему нельзя, например, <имя бита>=1; ? Я пользуюсь объединениями, т.е. flag.bit=1;

With best regards, Igor. Time: 21:10 Date: 06 Май 06

Reply to
Igor Ulanov

Привет Dmitry!

06 May 06 19:38, Dmitry Orlov писал Alex Mogilnikov:

AB>>>>> Hо вот GCC с Hitech даже нельзя сравнивать.

AM>> Hу вот, значит gcc и hitech вполне можно сравнивать. :)

DO> Hа разных архитектурах это не слишком осмысленно...

Про архитектуры я не понял, но осмысленность - это другой вопрос. Глвное, Андрей теперь знает, что оба компилятора умеют им желаемое.

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Если долго думать одни и те же мысли, они становятся грязными.

Reply to
Alex Mogilnikov

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Alex Mogilnikov! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 06 May 2006 21:57:52

+0400:

AB>>>>>> Hо вот GCC с Hitech даже нельзя сравнивать.

AM>>> Hу вот, значит gcc и hitech вполне можно сравнивать. :)

DO>> Hа разных архитектурах это не слишком осмысленно...

AM> Про архитектуры я не понял,

А что, gcc уже есть для pic, причем такой, что с HiTech можно сравнивать?

AM> но осмысленность - это другой вопрос. Глвное, AM> Андрей теперь знает, что оба компилятора умеют им желаемое.

Только для разных процессоров...

dima

formatting link

Reply to
Dmitry Orlov

Пpивет, Andrey!

*** 06 May 06 12:31, Andrey Bivshih wrote to Vladislav Baliasov:

VB>> Да, в общем-то, насколько я припоминаю (смутно, поскольку работаю VB>> с ограниченным ассортиментом кристаллов), и у PIC16 с VB>> распределением регистров не все так гладко, а разнос по страницам VB>> все еще более усугубляет.

AB> Hу это если очень давно было, и то как-то не припомню.

Hу, посмотри как бегали регистры, относящиеся к EEPROM данных - на F84, на F87x, на F628. Или на регистр(ы) конфигурации компараторов...

AB> Страници это да, геморой. У всех есть пятки. :-)

Особенно когда раньше требуемый регистр был в одной странице, а в новом кристалле - оказался в другой... Если на сях писать, то в принципе без особой разницы, но страничность как таковая вообще не радует, а SFR, разбросанные по страницам - просто озвереть. PIC16 приятен и удобен, когда нет потребности в больших блоках данных и в пересылках между ними, в идеале - пока находишься в одной странице. А вот как не хватит - тут начинается геморрой, и я лично без крайней нужды так извращаться не буду...

AB>>> Hо зачем их назвали-то по разному, в разных кристаллах. VB>> Вероятно, по причине развития периферии, хотя да, не особо VB>> приятно.

AB> Микрочип в этом плане, как-то старается совместимость соблюдать. Даже AB> если перефирия усложняется.

Hу вот посмотри эту совместимость применительно к CMCON и CMCON1/CMCON2...

AB>>> Иногда, вообще глупости встречаются - AB>>> например что-бы флаг прерывания в регистре TFIR _сбросить_ - AB>>> оказывается в него надо _записать_ "1".

VB>> А вот это как раз замечательно задумано - иначе в процессе VB>> модификации можно сбросить или установить то, что не следует. VB>> Этот момент оговорен четко и ясно, и запутаться тут можно разве VB>> что специально исхитрившись...

AB> А какая разница чего бисать в бит, 1 или 0 ? Если все-равно писать. AB> Просто на мой взгляд, логичнее, если флаг сбрасываешь - пиши 0.

А неактивные, при модификации командой out - не забыть выставить в "1" ? Так ты бы сам первый и завопил - "какой идиотизм писать в регистры флагов с активными "1" единицы ?!"

с уважением Владислав

Reply to
Vladislav Baliasov

Maxim, ты ещё здесь сидишь?

Пятница Май 05 2006 06:07, Maxim Tserkovniy wrote to Yuriy K:

AM>>>> Есть впечатление, что симистоp, откpывшийся в момент кз, будет AM>>>> откpыт все положенные 10 мс, чего вполне достаточно для AM>>>> пpевpащения его в утиль. MT>>> Почему 10 мс? YK>> Hу или 8.3 мс, pазница небольшая. Полпеpиода сети. MT> Так я потому компаpатоp и поставил, чтобы отловить увеличение тока еще MT> до того, как ток успеет подняться выше кpитического уpовня

И что ты предлагаешь делать, если ток поднимется выше критического уровня?

Георгий

Reply to
George Shepelev

Michael, ты ещё здесь сидишь?

Пятница Май 05 2006 09:26, Michael Belousoff wrote to George Shepelev:

VB>>> Емy девять каналов нyжно. А типично есть шесть-восемь. GS>> "Типично" - это сpедняя темпеpатypа по палате? GS>> PIC16C774 (40 выводов) - 10 каналов GS>> PIC18F2220, 18F2320 (28 выводов) - 10 каналов GS>> PIC18F4220, 18F4320 (40 выводов) - 13 каналов MB> Опять пошли pазговоpы пpо PIC-контpоллеpы фиpмы AVR... ;-)))))

Смешно ;)

А зачем закладываться на кривые поделки, если имеются более удачные PIC-контроллеры? Фирмы Microchip, для тех, кто в танке.

Георгий

Reply to
George Shepelev

Sergey, ты ещё здесь сидишь?

Пятница Май 05 2006 14:31, Sergey Brylew wrote to Yuriy K:

AM>>>> Есть впечатление, что симистоp, откpывшийся в момент кз, будет AM>>>> откpыт все положенные 10 мс, чего вполне достаточно для AM>>>> пpевpащения его в утиль. MT>>> Почему 10 мс? YK>> Hу или 8.3 мс, разница небольшая. Полпериода сети. SB> А ток через симистор при КЗ нужно ограничить на уровне SB> допустимого ударного для 10мс.

Чем ограничить? Вопрос действительно интересный, сам я знаю ряд решений, но они не слишком удачны :-(

SB> В номинальном режиме такое ограничение ничему особо мешать не будет.

Повлияет на цену и габариты, возможно и нагрев устройства возрастёт...

SB> А иначе эти цепи вообще не защитить.

Тиристоры неплохо держат перегрузку по току. Предохранитель вылетает, а схема живой остаётся. У меня так во время "веерных отключений" защита от перенапряжения в квартире работала - симистор пробки "выбивал" ;)

Георгий

Reply to
George Shepelev

Highlander, ты ещё здесь сидишь?

Пятница Май 05 2006 17:20, Highlander wrote to George Shepelev:

_GS_>> И правильно не доверяешь. PIC'и гораздо надёжнее в работе и для _GS_>> данной задачи обеспечивают те-же возможности. H> Мнээ... Hи в коем случае не хочу раздувать опять флейм на тему "PIC vs H> AVR", но всё-таки спрошу... Примеры можно?

Примеры можно. Hа моей памяти масса практических примеров AVR-ок, которые "теряли память" лишь оттого, что плату перенесли в соседнюю комнату, и телефонных устройств на PIC-ах, которые продолжали работать после удара молнии (стойка на АТС выгорала). Плюс выигранный спор, когда никакими силами не удалось "завесить" PIC-контроллер (с питанием и входными сигналами устройства разрешалось делать всё, что угодно)...

Георгий

Reply to
George Shepelev

Maxim, ты ещё здесь сидишь?

Пятница Май 05 2006 18:41, Maxim Tserkovniy wrote to George Shepelev:

GS>> Будет в поpядке, если аналоговый сигнал не выйдет за диапазон 0 - GS>> 5В. Обpати внимание на _минимальное_ значение! MT> А pазве большие напpуги коммутиpовать не сможет? Там же пpосто MT> полевики откpываются???

Про тиристорный эффект в ИС что-нибудь слыхал? Ограничения на допустимый диапазон входных напряжений ADC в даташите глядел?

GS>> И пpавильно не довеpяешь. PIC'и гоpаздо надёжнее в pаботе и для GS>> данной задачи обеспечивают те-же возможности. MT> А пикам тоже не довеpяю - pаз вpемя кpитично - то пусть пpостая логика MT> отpабатывает

Дело хозяйское. У "простой логики" есть свои преимущества, например программы ваять не нужно ;)

Георгий

Reply to
George Shepelev

Vladislav, ты ещё здесь сидишь?

Пятница Май 05 2006 23:10, Vladislav Baliasov wrote to Andrey Bivshih:

AB>> А вот если сравнивать производителя - тут однозначно микрочип AB>> получше. У атмела переносимости - ни какой. Регистры по разным AB>> адресам находятся, ладно, если писать на С, не важно. VB> Да, в общем-то, насколько я припоминаю (смутно, поскольку работаю с VB> ограниченным ассортиментом кристаллов), и у PIC16 с распределением VB> регистров не все так гладко,

Очень даже гладко. Есть мелкие разнобои в названиях регистров, которые нивелируются в ini-файлах, описывающих конкретные кристаллы. "Фьюзы" существенно отличаются, но это на исполнимую программу вообще не влияет.

VB> а разнос по страницам все еще более усугубляет.

"Вы не любите кошек?" (c)

Георгий

Reply to
George Shepelev
06 мая 06, Dimmy Timchenko wrote to Andrey Bivshih

DT> Кстати, а есть ли в пpиpоде AVR-ки в DIP40-коpпусах, совместимые по DT> ножкам с 51-ми? Смутно помню, что когда-то была такая фича, но сейчас DT> посмотpел на мегу-16 - pасположение ног дpугое.

ATmega8515, ATmega162 плюс паpа устаpевших

Bye

Reply to
Alexej Goncharovskij

Привет Dmitry!

07 May 06 00:37, Dmitry Orlov писал Alex Mogilnikov:

AB>>>>>>> Hо вот GCC с Hitech даже нельзя сравнивать. AM>>>> Hу вот, значит gcc и hitech вполне можно сравнивать. :) DO>>> Hа разных архитектурах это не слишком осмысленно... AM>> Про архитектуры я не понял,

DO> А что, gcc уже есть для pic, причем такой, что с HiTech можно DO> сравнивать?

В сабже - atmega128. Я пропустил поворот нити повествования? :) Если Hitech только для pic, тогда действительно сревнение малоосмысленно...

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Завтрак съешь сам, обед оставь себе, а ужин - никому не отдавай!

Reply to
Alex Mogilnikov

Привет Alex!

07 Май 06 года (а было тогда 03:32) Alex Mogilnikov в своем письме к Dmitry Orlov писал:

AB>>>>>>>> Hо вот GCC с Hitech даже нельзя сравнивать. AM>>>>> Hу вот, значит gcc и hitech вполне можно сравнивать. :) DO>>>> Hа разных архитектурах это не слишком осмысленно... AM>>> Про архитектуры я не понял,

DO>> А что, gcc уже есть для pic, причем такой, что с HiTech можно DO>> сравнивать?

AM> В сабже - atmega128. Я пропустил поворот нити повествования? :) AM> Если Hitech только для pic, тогда действительно сревнение AM> малоосмысленно...

Компилятор, такая-же составляющая часть достижения цели, как и сам процессор, даташит к нему, или редактор в котором пишеш для этого контроллера. Вот я и описал свои ощущения при работе с этой связкой. GCC и Hitech созданы для примерно равных контроллеров, значит и их возможности должны быть примерно одинаковы.

С уважением, Andrey 07 Май 06 года

formatting link
E-Mail:a_biv<саба>list,ru Jabber:Andrey_B@jabber,ru |СQ:226793191

Reply to
Andrey Bivshih

Привет Vladislav!

07 Май 06 года (а было тогда 01:40) Vladislav Baliasov в своем письме к Andrey Bivshih писал:

VB>>> Да, в общем-то, насколько я припоминаю (смутно, поскольку VB>>> работаю с ограниченным ассортиментом кристаллов), и у PIC16 с VB>>> распределением регистров не все так гладко, а разнос по VB>>> страницам все еще более усугубляет.

AB>> Hу это если очень давно было, и то как-то не припомню.

VB> Hу, посмотри как бегали регистры, относящиеся к EEPROM данных - на VB> F84, на F87x, на F628.

Да, но только в F84 в 87х и 628 с EEPROM вроде одинаково. Hо 84 если еще и не снят с производства то уже скоро. Хотя если переползать с него, то да, придется повозиться.

VB> Или на регистр(ы) конфигурации компараторов...

Из названных, компаратор только у 628 есть.

AB>> Микрочип в этом плане, как-то старается совместимость соблюдать. AB>> Даже если перефирия усложняется.

VB> Hу вот посмотри эту совместимость применительно к CMCON и VB> CMCON1/CMCON2...

Это в каких кристаллах ?

AB>>>> Иногда, вообще глупости встречаются - AB>>>> например что-бы флаг прерывания в регистре TFIR _сбросить_ - AB>>>> оказывается в него надо _записать_ "1".

VB>>> А вот это как раз замечательно задумано - иначе в процессе VB>>> модификации можно сбросить или установить то, что не следует. VB>>> Этот момент оговорен четко и ясно, и запутаться тут можно разве VB>>> что специально исхитрившись...

AB>> А какая разница чего бисать в бит, 1 или 0 ? Если все-равно AB>> писать. Просто на мой взгляд, логичнее, если флаг сбрасываешь - AB>> пиши 0.

VB> А неактивные, при модификации командой out - не забыть выставить в "1"

Hу не легла команда на задачу. :)

VB> ? Так ты бы сам первый и завопил - "какой идиотизм писать в регистры VB> флагов с активными "1" единицы ?!"

Так я это и сказал. :-) Hу если 1 - прерывание случилось, 0 - нету. Hе логичнее всеже было, отменять прерывание, путем записи 0 ?

С уважением, Andrey 07 Май 06 года

formatting link
E-Mail:a_biv<саба>list,ru Jabber:Andrey_B@jabber,ru |СQ:226793191

Reply to
Andrey Bivshih

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.