MicroCHIP.RU
Главная Документация Отладочные средства Справочник Поиск Ссылки
 Новости   Конференция   Контакты 
 

Что можно сделать на PICах

 Нoвaя темa  |  Наверх  |  Перейти к теме  |  Поиск  |  Правила  |  Вход 

ВНИМАНИЕ!
Вы просматриваете архив форума.

Этот форум работает только в режиме просмотра и поиска.

Действующий форум переведен на новый движок и
находится по адресу www.microchip.su

 Что можно сделать на PICах
Автор: ddef ()
Дата:   31/03/2004 20:18

Здравствуйте
1.подскажите что можно сделать на этих контрл-ах (готовые изделия)
2.Можно ли обрабатывать картинку получившею с видео камеры на пример
Спасибо


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   31/03/2004 20:39

Про камеру забудте.

Недостатки PIC по сравнению практически со ВСЕМИ имп. контроллерами:

1. Машинный цикл = 4 такта; т.е. Реальная частота/4;
2. Присутствует регистор аккумулятор (сжирает ~20% кода) - еще минус производительность;
3. Тупая банковская организация памяти (- производительность);
4. Всего лиш 33 инструкций инструкций (- производительность);
5. Один пазорный вектор прерываний;
6. Команды перехода = 8 тактов (- производительность);
7. Мелко-ничтожный стек;
8. Дурная среда разработки (про MPLAB)

Как видно етот камень годится только для мелких задач.
Поэтому советую AVR (для начала) ну потом типа ARM.

:-)


 
 Re: Что можно сделать на PICах
Автор: IgorV ()
Дата:   31/03/2004 20:50

Будем доставать топро войны?


 
 Re: Что можно сделать на PICах
Автор: Bomgik ()
Дата:   31/03/2004 20:55

Не нравится 16 возьми 18 пик там не хуже чем Atmel!!!


 
 Помните про я, которые танцору мешают? ;)
Автор: Builder++ ()
Дата:   31/03/2004 21:02

Без комментариев.


 
 Re: Что можно сделать на PICах
Автор: VDArs ()
Дата:   31/03/2004 21:15

Сделать можно практически всё, на что хватит ресурсов контроллера и его
призводительности......... Графику обрабатывать - не выйдет (за нормальное время и нормальным
качеством) - тут может и пентюх не справится.

____________________________________________________________
Главное - не то, что в принципе, главное - то, что в кожухе.


 
 Re: Помните про я, которые танцору мешают? ;)
Автор: NSS ()
Дата:   31/03/2004 21:20

YES!!!!!!!!!!!!!!!!!! Можно сказать в ТОЧКУ!!!!

===============================================================================================

"Ignoramus et ignorabimus..."
(Не знаем и не будем знать...)



 
 Re: Что можно сделать на PICах
Автор: NSS ()
Дата:   31/03/2004 21:30

А оно надо?
И кстати - может я чего напутал - поправьте. А не в AVR ли заметно большее количество
инструкций и частенько получается так, что по этой причине ПИК и АВР практически за одно и тоже
время выполняют одну и ту же функцию? У ПИКа уходит большее время на выполнение инструкции,
зато у АВРа требуется выполнить большее количество инструкций чтобы получить тот же результат?

Как в анекдоте: "...Билл, а тебе не кажеться что мы бесплатно г.... нажрались?..." :-)

С уважением, Серёга

================================================================================================

"Ignoramus et ignorabimus..."
(Не знаем и не будем знать...)



 
 Re: Что можно сделать на PICах
Автор: Maxym ()
Дата:   31/03/2004 21:40

GOD писал(а):

> Про камеру забудте.
>
> Недостатки PIC по сравнению практически со ВСЕМИ имп.
> контроллерами:

..................и т.д........................

> :-)

На танке тоже плохо по городу ездить. Асфальт портится, и манёвреность хуже Волги.
Но в полевых условиях... А ещё и стрелять может. И как тягач больше потянет
нагрузки.

PIC, в первоначальной своей задумке, не должен заниматься математикой (для этого
хватает и процессоров), а быть простейшим контроллером для выполнения простейших
задач управления, а так же быть легко понимаемым.
Потому он так и называется - PIC!


 
 Re: Что можно сделать на PICах
Автор: IgorV ()
Дата:   31/03/2004 22:15

А ведь таки достали топор... или серп и по я...


 
 Ни к чему это!
Автор: Bill ()
Дата:   01/04/2004 01:37

Даже если ты и прав, то зачем же так категорично. Это я насчет прерываний. Нужно уважать чужой
выбор, даже если ты считаешь его ошибочным. Каждый имеет право на ошибку.
Вместо эмоций давайте сравнивать непредвзято. Сравнение это не противопоставление. А крайности ведут
к ограниченности. А ограниченность это непрофессионально.
Кстати, я пробовал делать сравнение
http://www.telesys.ru/wwwboards/mcontrol/294/messages/140505.shtml
Но это только один пример. Он может совершенно ничего не сказать, но он может сказать очень много.
И маленький совет тем, кто использует PIC. Не сочтите за труд, ознакомтесь с AVR поближе. И не нужно
воспринимать отсутствие некоторых вещей у PIC как личное оскорбление.
Я использовал PIC ранее, сейчас я пользуюсь AVR. И хотя я, может быть, вернусь к PIC только в
крайнем случае. Но это только потому, что у меня нет причин к нему возвращаться. Меня в настоящее
время AVR во всем устраивает.
Кстати, может быть вам будет интересно. Я несколько лет использовал PIC14000. Надеюсь вам понятно,
что это такое.
Так что, "Нет религиозным войнам!".


 
 Насчет прерываний
Автор: Bill ()
Дата:   01/04/2004 01:47

Коротенько мы написали сравнительный анализ систем прерыания для различных процессоров.
http://mcuselect.narod.ru/docs/Interrupts1.htm


 
 Ни чего подобного!
Автор: GOD ()
Дата:   01/04/2004 11:00

Пик выполняет 1 команду 4 такта - AVR за 1 такт и команд у него 92
и многие наодорот заменяют несколько команд пика.

И гребанного АККУМУЛЯТОРА НЕТ!

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


 
 ТОПОР
Автор: GOD ()
Дата:   01/04/2004 11:06

В принципе убедительно!

Но тогда т.к. PIC достаточно простой процессор
могли-бы и подешевле продавать.
Все таки ЦЕНА/КАЧЕСТВО/ПРОИЗВОДИТЕЛЬНОСТЬ.
А дешевые камни для небольших задач - редкость.

Убираю топор войны.


 
 Re: Что можно сделать на PICах
Автор: fanton ()
Дата:   01/04/2004 11:13

Мужики! Ваш спор на тему "что удобнее: ложка или вилка?"
Выбор зависит от конкретной задачи. Вы же не едите спагетти ложкой,
а ши - вилкой (а для поедания пирожка Вы их вообще не применяете).
Каждый выбирает то, что ему кажется удобным и достаточным.
PIC занимают свою нишу. Если Вам мало возможностей PIC-а -
берите более мощные (и более дорогие)- motorola, intel u.a...
А что делают на PIC-ах ? - По моему - в основном деньги ...


 
 Re: Что можно сделать на PICах
Автор: Monk ()
Дата:   01/04/2004 13:54

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


 
 Re: ТОПОР
Автор: Max77 ()
Дата:   01/04/2004 14:06

Товарисчи забыли упомянуть об одном из главных преимуществ ПИКов.
Это туева хуча их моделей и семейств с самыми разными характеристиками.
Т.е. разработчик может подобрать контроллер именно с теми параметрами
котроые ему нужны (быстродействие, переферия, кол-во ног, цена).
И диапазон этих характеристик согласитесь достаточно широкий
(а с появление dsPIC он еше расширился).
Цена от 1-11 у.е.
Переферия(без, I2C(MI2C),SPI, USART(AUSART,EUSART), USB(1.1,2.0), CAN(ECAN),
LIN, LCD, ШИМ и т.д.)
Ног (8-80),
ПЗУ 0,5-128 кслов
Быстродействие 5-30(dsPIC) MIPS.
Да еще куча все долго перечислять.
И все это насколько это возможно совместимо между собой и отлаживается
одними средствами.
Правда есть одно но, это преимущество наиболее сказывается за бугром, где в каждом
нормальном городе фирма торгующая микрочипом может держать склад со всем
набором, потому как все равно разберут, а у нас же на складах имеются только
наиболее ходовые модели.


 
 Re: Что можно сделать на PICах
Автор: LED ()
Дата:   01/04/2004 14:11

ddef писал(а):

> Здравствуйте

Здорово !

> 1.подскажите что можно сделать на этих контрл-ах (готовые
> изделия)

Никого не слушай - я сколько ни пробовал, ничего не получается :( Возможно что-то
сделать и можно, но ооочень тяжело, проще сразу купить (готовое изделие)

> 2.Можно ли обрабатывать картинку получившею с видео камеры на
> пример

Обрабатывай смело !! Здесь главное ее получить, а обработать это завсегда легче
(особенное если напильник хороший).

> Спасибо

Всегда пожалуйста ;). Пиши ..


 
 Re: ТОПОР
Автор: GOD ()
Дата:   01/04/2004 14:13

И где это за 1$, небось 12С какойнибудь и то 1998г выпуска.


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   01/04/2004 14:15

На Си писать надо, тогда и месецами знакомится не надо будет. :)


 
 Re: ТОПОР
Автор: LED ()
Дата:   01/04/2004 14:28

GOD писал(а):

> И где это за 1$, небось 12С какойнибудь и то 1998г выпуска.

PIC12F629 - 1.1$
PIC16F630 - 1.2$
PIC16F676 - 1.5$


 
 а ты настоящий? (-)
Автор: Vova ()
Дата:   01/04/2004 14:36

а ты настоящий? (-)


 
 Re: а ты настоящий? (-)
Автор: LED ()
Дата:   01/04/2004 14:40

Само сабой !!

А что тут и фальшивые уже бегають ??? Ж80()


 
 и где ж ты был
Автор: Vova ()
Дата:   01/04/2004 15:08

тебя тут вспоминали время от времени ... добрым словом ;)

фальшивых вроде не было ... а сегодня -
первое апреля ;)


 
 Re: и где ж ты был
Автор: LED ()
Дата:   01/04/2004 15:14

А я тебя помню !!!
Где был ? Перебираюсь на новое место, уже с полгода :(, связь с внешним миром
только через радиоканал (802.11b wireless bridge). Пока толком не работает (надо 30-
40м вышку ставить)


 
 Re: Что можно сделать на PICах
Автор: Dmitriy ()
Дата:   01/04/2004 15:18

Приветствую. А не подскажешь где можно почитать про AVR? чем больше будет
информации тем конечно будет лучше так как я человек с нуля к этому подхожу. :)
Спасибо за все ссылки которые подкинешь.


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   01/04/2004 16:35

www.atmel.ru
www.atmel.com
www.fulcrum.ru


 
 Re: ТОПОР
Автор: GOD ()
Дата:   01/04/2004 16:37

Но не 1$ а 1.1$ !!!!!!!!!!!!!! :)

1 != 1.1
1 != 1.2


 
 Эт смотря скоко брать (+)
Автор: человек ()
Дата:   01/04/2004 16:51

Цена может быть даже ниже 1$ 8)


 
 Re: ТОПОР
Автор: LED ()
Дата:   01/04/2004 16:51

GOD писал(а):

> Но не 1$ а 1.1$ !!!!!!!!!!!!!! :)
>
> 1 != 1.1
> 1 != 1.2

Ага, дое..ца решил ?

Указана была 1 значащая цифра 1$, соответственно все дробные значения округляем до
1 знака тогда:

1 == Int(1.1)
1 == Int(1.2)

Если Вас сэр это не устраивает то уточняю дополнительно: до какого знака точность
(скока вешать в граммах) ?

1.0 или 1.00 или 1.0000 или ???


 
 Re: Ни чего подобного!
Автор: NSS ()
Дата:   01/04/2004 17:13

Пардон - а что, в PIC нельзя резюки подтянуть программно?

================================================================================================

"Ignoramus et ignorabimus..."
(Не знаем и не будем знать...)



 
 Re: Ни чего подобного!
Автор: GOD ()
Дата:   01/04/2004 17:23

Ну 18 только если.


 
 У меня родственник из колбасного отдела.
Автор: GOD ()
Дата:   01/04/2004 17:27

У меня родственник из колбасного отдела.
В граммах: 1 != 1.1, 1.2


 
 Re: ТОПОР
Автор: Max77 ()
Дата:   01/04/2004 17:29

А теперь раскажика нам, любезный, что там есть из атмела по 1.1.

Да по поводу войны, из тех людей что я знаю лично и заочно (по форуму)
самые фанитчные и воинственные любители Атмела.
В девяти случаях из десяти они войны МК из затевают
может это от комплекса не полноценности


 
 Re: Ни чего подобного!
Автор: Max77 ()
Дата:   01/04/2004 17:31

Самый простой PIC16F84A (для начинающих), имеет подтягивающие
резюки на порте Бе, я уж не говорю о других.


 
 Re: Ни чего подобного!
Автор: GOD ()
Дата:   01/04/2004 17:34

А вот на поте Ме и т. д. не имеет.

Зато точно не может на порты катушки индуктивности подтянуть. ;)


 
 Re: Что можно сделать на PICах
Автор: Max77 ()
Дата:   01/04/2004 17:35

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


 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   01/04/2004 17:36

я пять лет писал для атмел теперь перешел на пик18 по болшинству позиций атмел
лучще хотя дело решает иногда только одна , может любители атмела знают что это
такое вот и хотя донести правду так сказать до народа


 
 Re: ТОПОР
Автор: GOD ()
Дата:   01/04/2004 17:39

1. Да втом, то и дело, что нету :(
2. Не такой уж я и фанат ATMEL
3. Давно уже забил на PIC, а вот недавно заставили вернутся.

Так, что войну никто не разводит, хотелось услышать, что
скажут другие. Но видно люди просто фанатеют по PIC.


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   01/04/2004 17:42

А, что для пик эмулятор за 4000$ есть, что
так без него жить не можете.


 
 Re: Ни чего подобного!
Автор: NSS ()
Дата:   01/04/2004 17:42

Почему только 18? В 16F84A, например: бит NOT_RBPU регистра OPTION_REG включает и выключает
подтяжку резюков к порту В. Да и в других ПИКах по моему есть эта функция.

================================================================================================

"Ignoramus et ignorabimus..."
(Не знаем и не будем знать...)



 
 Re: Ни чего подобного!
Автор: GOD ()
Дата:   01/04/2004 17:43

Но только на порт В.


 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   01/04/2004 17:44

а каким образом итересно заставили вернутся ведь им было трудно наверное :)


 
 Re: Ни чего подобного!
Автор: NSS ()
Дата:   01/04/2004 17:44

А вот у меня дядя танкист... Как ...нёт! :-)

===============================================================================================

"Ignoramus et ignorabimus..."
(Не знаем и не будем знать...)



 
 Re: Ни чего подобного!
Автор: Alex B._ ()
Дата:   01/04/2004 17:45

PIC16F630/676
PIC16F684
PIC16F688
...
Индивидуально подтягиваемые резисторы.
И вообще, пшел отсюда нах школьник, если ты читал статьи пятилетний давности, это
не значит, что ты прав.


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   01/04/2004 17:45

И почему одна?


 
 Re: ТОПОР
Автор: Alex B._ ()
Дата:   01/04/2004 17:49

Никто не фанатеет. Просто хотелось услышать, что ты можешь сделать на атмел, чего я
не смогу на пике? Я уже кому-то предлагал. С оценкой себестоимости.
Если делается эксклюзивный продукт и низкая себестоимость одной из основных целей
не является - то тут в общем пофигу, какой контроллер брать.
Если делается продукт, объемы продаж которого 30000 в месяц - тут мы можем
поспорить что проще, быстрее, надежнее и дешевле


 
 Re: Ни чего подобного!
Автор: GOD ()
Дата:   01/04/2004 17:50

Только и можеш, что в достоинства включить подтягивающие
резисторы. Так-что сам туда иди, дворник.


 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   01/04/2004 17:57

примерно 3 года назад я сделал плату абонентских телеграфных каналов
поддердживается работа по 30 каналам на скорости 50б 100б 200б 99 точек котроля
нарпяжнения напряжение передачи регулируется по каждому каналу с дискретом 1в
встроенный цифровой осцилограф коэфициент искажений может достигать 45% регенерация
сигнала (ресурсы 8515 + озу 32к)и переферия на каком пике можно сделать такую штуку?


 
 Re: ТОПОР
Автор: Max77 ()
Дата:   01/04/2004 17:58

А вот и нечего подобного никто и не фанатеет! Просто ето ответная реакция на твое первое
сообщение! А меня лично просто недавно достал один дядя препод с нашего универа ярый фанат
атмела. Я тут выступаю с идей преобрести отладчик по университетской программе айсиди2.
А етот дядя начинает на меня гнать причем в не очень приятной форме какбудто я представитель
канадской компании пытаюсь всучить какое-то фуфло. При чем по тому что он говорил у
него информация о пиках десятилетней давности. Я ест-сно пытаюсь возразить, а присутствующие
(не шарящие в МК) на меня шикают типа как я без году неделя пытаюсь спорить с
самим мэтром который на этом зубы съел.


 
 Re: Что можно сделать на PICах
Автор: Max77 ()
Дата:   01/04/2004 18:04

Нету, токо не за 4000 а за 1500 приблизительно (а то опять начнем копейки считать).
Так я ж и не на заводе работаю. А вот отладчикт хотелось бы.
К тому же тогда можно было бы забыть о программаторе (внутрисхемно программирует любые пики
в том числе и будущие dsPIC).


 
 Re: Что можно сделать на PICах
Автор: Alex B._ ()
Дата:   01/04/2004 18:05

я конечно понимаю что без знаков препинания писать щас модно и это типа ка мумий-
троль и много других модных писателей но на самом деле из того что ты написал я
мало что понял интересно было бы почитать это в нормальном виде потому что
непонятно что ты написал


 
 Re: Ни чего подобного!
Автор: LED ()
Дата:   01/04/2004 18:16

Alex B._ писал(а):

>> И вообще, пшел отсюда нах школьник, если ты читал статьи
> пятилетний давности, это
> не значит, что ты прав.

Сильно сказано !! Так держать !! НО ПАСАРАН !!!


 
 Re: Ни чего подобного!
Автор: Andrey ()
Дата:   01/04/2004 18:39

LED писал(а):

>
> Сильно сказано !! Так держать !! НО ПАСАРАН !!!

Вот интересно... ник LED -нормальный(синий) а Alex.B -черно-анонимный
а выражения... :)

Но они (GOD) всё равно не пасаран,нифига не пасаран :)


 
 Re: Ни чего подобного!
Автор: LED ()
Дата:   01/04/2004 18:53

Andrey писал(а):

> Вот интересно... ник LED -нормальный(синий) а Alex.B
> -черно-анонимный
> а выражения... :)

Да братан он мой ;)

Если не по крови то по понятиям это точно !!!


 
 Re: Что можно сделать на PICах
Автор: Maxym ()
Дата:   01/04/2004 19:51

fanton писал(а):

> Мужики! Ваш спор на тему "что удобнее: ложка или вилка?"

> Каждый выбирает то, что ему кажется удобным и достаточным.
> PIC занимают свою нишу. Если Вам мало возможностей PIC-а -
> берите более мощные (и более дорогие)- motorola, intel u.a...

А мне в них нравится в PIC, что можно подключить нагрузку до 20 мА на ногу!

А в AVR - не нравится производитель. Несколько раз на рынок "выбрасывали" брак.
Ну, а каком доверии может идти речь? И ещё отказывались...


А что касаемо цен на PIC:

PIC12F629 - 0.95$
PIC16F630 - 1.12$
PIC16F676 - 1.29$

Источник
http://www.microchip.com.ua


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   01/04/2004 19:58

Ну насчет нагрузки - это без Б.
Очень иногда полезно!


 
 Re: Что можно сделать на PICах
Автор: fanton ()
Дата:   01/04/2004 20:27

Мужики!
Что вы к копейкам привязались! Или у вас всех партии по миллиону штук? На мелких партиях:
если появляется серьезная тема, то гораздо важнее сделать рабочую версию раньше конкурента.
Если вы сделаете изделие на 7...10% дешевле, но позже, то вы не сможете его продать.
Т.к. заказчик уже получил то, что хотел и покупать второй девайс (пусть и более дешевый)
он не будет.
Вы сравните стоимость софта и камушка, в который он зашит...


 
 Re: Ни чего подобного!
Автор: zksystem ()
Дата:   02/04/2004 00:34

Ну разработай свой контроллер, раз ты не лох, а мы его посмотрим, чё он там будет
уметь за такую цену как PIC...

- www.zaocita.ru - zksystem aka Konstantin I. Zuykov - icq: 82327775 -



 
 Re: Что можно сделать на PICах
Автор: zksystem ()
Дата:   02/04/2004 00:40

помню на z80 (в компе ZX-Spectrum) распаковку JPEG делали... так-что не надо...
Было бы желание

- www.zaocita.ru - zksystem aka Konstantin I. Zuykov - icq: 82327775 -



 
 Интересно получается.
Автор: Bill ()
Дата:   02/04/2004 01:23

Полтора года назад специально задался целью сравнить нагрузочную способность PIC и AVR. Сравнивал
данные в DS. Так вот Microchip указывает максимально допустимый ток 20 ма, Atmel - 40 ма.
И еще, когда задают вопрос, что можно сделать на AVR, чего нелбзя сделать на PIC, то я могу задать
встречный вопрос: что можно сделать на PIC, чего нельзя сделать на AVR?
Могу добавить, что я подрабатывал в фирме, где сначала стали использовать PIC, позднее фирма перешла
на ATmega, а сейчас использует MSP430, ибо потребляемая мощность оказалась решающим фактором.
И последнее, архитектура PIC известна вот уже в течении прмерно 30 лет, тогда как AVR примерно в 3
раза меньше. Задумайтсь над этим фактами.
За 30 лет многие более совершенные архитектуры исчезли с рынка, в то время как PIC до сих пор
пользуется широкой популярностью. Неужели десятки тысяч пользователей PIC такие дураки?
С другой стороны, популярность AVR за всего лишь 10-летие с начала выпуска достигла уровня
популярности PIC. И я думаю, это тоже далеко не случайно!
Так что, о чем спорим господа?


 
 Re: Интересно получается.
Автор: Dmitry ()
Дата:   02/04/2004 01:29

а кто сказал, что атмел достиг популярности пика? пики вон на первом месте. пару
лет назад они были третьими после интела и моторолы, а Вашего атмела не было в
десятке. какое он место занимает сейчас?


 
 Re: Интересно получается.
Автор: Bill ()
Дата:   02/04/2004 01:42

Я думаю, что если бы это было не так, то постоянных споров не возикало. Спорят о том, что пользуют.
Причем, если было бы явное превосходство одного контроллера над другим, то один из контроллеров
просто перестал бы поьзоваться спросом и споры бы прекратились сами собой.
Опять же, я считаю эти споры бессмысленными и сейчас. Есть очень много субъективных факторов,
влияющих на выбор контроллера. Одному нравиться PIC, другому - AVR. Пользуйтесь на здороыье тем, или
другим, или обоими вместе.
Так ведь нет же, мы начинаем спорить до хрипоты, до взаимных оскорблений, крича что "наш" контроллер
"самый, самый ...", а "их" контроллер не нашей веры. Ату его! Право, смешно все это.


 
 Можете взглянуть
Автор: Bill ()
Дата:   02/04/2004 01:56

http://www.caxapa.ru/mcu/images/mcu_brand.gif


 
 Re: Интересно получается.
Автор: Alex B._ ()
Дата:   02/04/2004 02:03

Bill писал(а):

> Полтора года назад специально задался целью сравнить
> нагрузочную способность PIC и AVR. Сравнивал
> данные в DS. Так вот Microchip указывает максимально допустимый
> ток 20 ма, Atmel - 40 ма.

Ну и что? Я могу задаться целью и сравнить, сколько атмелов спалили мои знакомые,
когда в панель не так вставляли, а сколько другие знакомые, когда так же не так
вставляли пик.

> И еще, когда задают вопрос, что можно сделать на AVR, чего
> нелбзя сделать на PIC, то я могу задать
> встречный вопрос: что можно сделать на PIC, чего нельзя сделать
> на AVR?

Знаете, кто вопросом на вопрос отвечает?

> Могу добавить, что я подрабатывал в фирме, где сначала стали
> использовать PIC, позднее фирма перешла
> на ATmega, а сейчас использует MSP430, ибо потребляемая
> мощность оказалась решающим фактором.

серия nanoWatt у пиков - скорее как дополнение в ряду, а не как основная фича. Я
знаю людей, которые пересели с тексаса на нановатный микрочип только по фактору
меньшего потребления.

Вывод - изучайте новые лайнкарты, и т.д. и т.п.
Я тут не пропагандист. Просто реально у меня пока не было таких задач, которые
нельзя решить на пике. Хотя там отнюдь не елочные гирлянды. Но я знаю, что когда-
нибудь такие задачи возникнут и поэтому смотрю в сторону филипсовских АРМ и АД21хх.
По ним просто вопросов в конфе меньше. Как Вам такой показатель?
И еще - крутость ембеддера не определяется количеством освоенных контроллеров.
ИМХО.


 
 Х... стоит, а голова качается (-)
Автор: Alex B._ ()
Дата:   02/04/2004 02:08

-


 
 Re: Ни чего подобного!
Автор: Alex B._ ()
Дата:   02/04/2004 02:11

Andrey писал(а):

> Alex.B
> -черно-анонимный
> а выражения... :)
>

Я черно анонимный потому что задолбался пароли вводить а всякая хрень в експлойрере
у меня отключена. И вообще по старому нику Alex B. меня не конфу не пускают.


 
 Re: Можете взглянуть
Автор: Alex B._ ()
Дата:   02/04/2004 02:18

При всем моем уважении - школяров такими графиками парьте.


 
 Holtek где? Или типа меньше 1% :) ? (-)
Автор: Alex B._ ()
Дата:   02/04/2004 02:20

-


 
 Re: Можете взглянуть
Автор: VDArs ()
Дата:   02/04/2004 08:15

Любопытно было бы узнать узнать проценты чего приведены в данной гистграмме и на основании
каких источников получены данне для неё (гистограммы)?

____________________________________________________________
Главное - не то, что в принципе, главное - то, что в кожухе.


 
 Конечно же я не сам придумал.
Автор: Bill ()
Дата:   02/04/2004 09:20

Можете задать свой вопрс здесь:
http://www.caxapa.ru/mcu/wwwboard.html?id=9061


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   02/04/2004 09:58

Так Z80 покруче любого пика будет, хотябы по набору команд!
>255 команд


 
 Re: Конечно же я не сам придумал.
Автор: GOD ()
Дата:   02/04/2004 10:05

Ага, облом получается с саааааааамым поопуууууулярным
PIC контроллером. :)))))))))


 
 Re: Интересно получается.
Автор: GOD ()
Дата:   02/04/2004 10:12

>Ну и что? Я могу задаться целью и сравнить, сколько атмелов спалили мои знакомые,
>когда в панель не так вставляли, а сколько другие знакомые, когда так же не так
>вставляли пик.

Советую Вышим знакомым очки посильнее заказать, сейчас магазинов оптика очень много,
тогда и ставить правильно будут.


>Знаете, кто вопросом на вопрос отвечает?
Евреи

>серия nanoWatt у пиков - скорее как дополнение в ряду, а не как основная фича. Я
>знаю людей, которые пересели с тексаса на нановатный микрочип только по фактору
>меньшего потребления.

Фраза "подобно" Шекспиру - грамотно мысль изложена, видно автор имел в виду
то, что он имел в виду.


 
 Re: Что можно сделать на PICах
Автор: Romchik ()
Дата:   02/04/2004 10:14

GOD
Если тебя такой простой в освоении микроконтроллер обломил чего уж тут про другие рассуждать.
Ясно, что микроконтроллеры не твой конёк, займись, чем ни будь другим, раз здесь разобраться толк
ом не можешь


 
 Re: Еще один фанат (-)
Автор: interrupt ()
Дата:   02/04/2004 10:18

-


 
 Re: Конечно же я не сам придумал.
Автор: Bill ()
Дата:   02/04/2004 10:31

Тем не менее, разница невелика. Так что, к чему "религиозные войны"? Толку никакого. Нравится это
вам, или нет, но одни пользуются и будут пользоваться PIC, другие - AVR. Но и тем, и другим никогда
не помешает знать то, чем они не пользуются. И тогда, делая сравнения, можно лучше понять
достоинтсва и недостатки того, чем вы пользуетсь сами. Или нет?


 
 1кг = 1024г 8о) (-)
Автор: человек ()
Дата:   02/04/2004 10:35

8-)


 
 Bill - не Гейтс случайно?
Автор: Pool ()
Дата:   02/04/2004 10:37

-


 
 Не случайно не Gates :)
Автор: Bill ()
Дата:   02/04/2004 10:45

А что?


 
 Re: Конечно же я не сам придумал.
Автор: LED ()
Дата:   02/04/2004 10:48

Bill писал(а):

> Тем не менее, разница невелика. Так что, к чему "религиозные
> войны"? Толку никакого. Нравится это
> вам, или нет, но одни пользуются и будут пользоваться PIC,
> другие - AVR. Но и тем, и другим никогда
> не помешает знать то, чем они не пользуются. И тогда, делая
> сравнения, можно лучше понять
> достоинтсва и недостатки того, чем вы пользуетсь сами. Или нет?

Зря вы руками машете ... Драки то нет ! Человеку просто стало скучно и он решил
развлечься. Правда как то вяло, до драки дело не дошло, скисло.

Я думаю такие темы возникают только со скуки (за исключением редчайших клинических
случаев).


 
 Re: Что можно сделать на PICах
Автор: Romchik ()
Дата:   02/04/2004 11:30

Нет это просто Новая группа малолетних флудеров появилась в форуме, весна, а девчёнок у них нема
вот и лезут куда попало, сперма на мозги видать сильно давит.


 
 заманал
Автор: Vova ()
Дата:   02/04/2004 11:32

микрочип реально первый по объемам продаж восьмибитников. в России вроде как популярнее авр. за
бугром многие ли авр пользуют? а не пользую почему?


 
 Re: Что можно сделать на PICах
Автор: Romchik ()
Дата:   02/04/2004 11:37

Достала уже эта группа поддержки Atmela со своим впариванием железяк, как не брали их так и не б
удут брать, для серьёзных применений.
Пора бы уже преподавателям освоить для разнообразия и другие микроконтроллеры, а то талдычат бедн
ым студентам как старая заезженная пластинка одно и то же в институтах.
Не мешало бы уже перейти на другую подпрограмму, да видать программа зациклилась и повисла.


 
 Re: Что можно сделать на PICах
Автор: GRR ()
Дата:   02/04/2004 12:04

Если хотите обрабатывать картинки, AVR не поможет. Не такой уж он крутой. Потискал несколько
лет назад. У каждого контоллера свои плюсы и свои минусы.


 
 Re: Ни чего подобного!
Автор: GRR ()
Дата:   02/04/2004 13:07

А нафига нужна эта подтяжка на все порты? Я никогда не включаю эту подтяжку. Слижком она
высокоомная, ставлю внешние.


 
 Re: Что можно сделать на PICах
Автор: GOD ()
Дата:   02/04/2004 13:17

А никто и не говорит, что AVR картинки сможет
обрабатывать - ARM сможет.


 
 Re: Что можно сделать на PICах
Автор: pool ()
Дата:   02/04/2004 13:19

А что Romchik из садика пораньше отпустили.


 
 Re: Ни чего подобного!
Автор: GOD ()
Дата:   02/04/2004 13:26

Автор: GOD

Когда плата должна быть мелкой, да еще понатыканная,
то невольно ставиш вопрос куда внешние резюки разводить.
Тут-то и паришся как копыта подогнать, а ставиш камень
по разводке.

Имеет место не только количество ног, но и их разводка. (с) Altera


 
 Re: Ни чего подобного!
Автор: GRR ()
Дата:   02/04/2004 13:38

А у меня большинство плат работают в условиях сильних помех. В некоторых случаях приходится
ставить резисторы по 360-470 Ом.


 
 Re: Насчет прерываний
Автор: GRR ()
Дата:   02/04/2004 13:41

Устаревшая информация. Теперь есть dsPIC. Векторов прерывания в dsPIC аж 56.


 
 Re: Понятно (-)
Автор: GOD ()
Дата:   02/04/2004 14:10

-


 
 Re: Насчет прерываний
Автор: GOD ()
Дата:   02/04/2004 14:12

Ну давайте тепер dsPIC ставить гне ни попади
и перерыватсяпо всем случаям жизни.


 
 А причем здесь dsPIC?
Автор: Bill ()
Дата:   02/04/2004 14:41

Там же говорилось только о PIC16(18). Или там неправильно сказано?


 
 Re: заманал
Автор: Bill ()
Дата:   02/04/2004 14:51

Я думаю Россия не исключение. И в России и за рубежом и PIC и AVR используются примерно одинаково. И
не пользуются AVR потому, что пользуются PIC :)


 
 а вот не уверен
Автор: Vova ()
Дата:   02/04/2004 15:00

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


кстати, про нишу для каждого.

вот мы занимаемся промышленной автоматикой,
простенькие уст-ва - вааще несколько элементов (пара резисторов, транзисторчик один-два штука, пара
конденсаторов) и пик. и усе. глядишь на плату и удивляешься, а за что деньгу-то дерут ;) а вот тоже самое на
авр сделать не получится - огород городить стопудов придется ...


 
 Re: а вот не уверен
Автор: GOD ()
Дата:   02/04/2004 15:23

И какой же это агарод городить надо?


 
 Re: читаю постики и чувствую себя
Автор: victor ()
Дата:   02/04/2004 16:46

на работе, в коллективе. Нас там 5 и мы все такие 3.14уны-теоретики. Только для таких
широкоформатных свистежей у нас есть дежурные темы ,типа как потопить авианосец или как
похоронить слона. А контролерам мы кости не перемываем, мы их используем по назначению.


 
 Re: Что можно сделать на PICах
Автор: NSS ()
Дата:   02/04/2004 17:28

Привет! Как конференция? По поводу идущего здесь спора - по моему переливание из пустого в
порожнее. По принципу - Mercedes комфортабельный и презентабельный, зато не проедет там, где
проедет запорожец.

Я так думаю!

===============================================================================================

"Ignoramus et ignorabimus..."
(Не знаем и не будем знать...)



 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   02/04/2004 17:53

pic это мерседес или запорожец ?


 
 PIC - это микроконтролер. Сотня :) (-)
Автор: Alex B._ ()
Дата:   02/04/2004 18:13

-


 
 запорожец этож Z80( а я больше люблю 101 )
Автор: patton ()
Дата:   02/04/2004 18:38

А если сравнивать только пик и авр то один это мерин, другой бумер, а где кто - бог его знает :)


 
 Re: Что можно сделать на PICах
Автор: Eugene Sitnikov ()
Дата:   02/04/2004 20:04

А я вот сегодня Linux себе поставил :)

p.s. Может хватит превращаться в Телесистемы. Одного бардака хватит.

-------------------------------------------------------------------
Когда я работал сисадмином в маленькой психиатрической лечебнице...


 
 Re: Что можно сделать на PICах
Автор: Maxym ()
Дата:   02/04/2004 20:33

nik_al писал(а):

> pic это мерседес или запорожец ?

T34 !


 
 А чем отличается PIC от AVR?
Автор: Bill ()
Дата:   02/04/2004 21:16

Те же самые порты ВВ, и плата та же самая: контроллер, кварц, пара конденсаторов. С точки зрения
аппаратуры разницы никакой нет. Да и любой другой контроллер в этом смысле мало чем отличается.
Вопрос в цене? Давайте сравнивать. Я же говорю, что выбор типа контроллера больше зависит от личных
пристрастий разработчика, нежели от каких-то объективных факторов. Тем более, когда контроллеры
имеют приблизительно одинаковые храктеристики.
Удобство программирования это тоже один из субъективных факторов.


 
 Re: Что можно сделать на PICах
Автор: Greg ()
Дата:   02/04/2004 21:50

Maxym писал(а):

> > pic это мерседес или запорожец ?
> T34!

причем T34 в 2004 году...

только это ничего не значит.
к сведению,
самые востребованные машины у арабов и африканцев - старички Т55 и Т64.
просто (с обслуживанием и управлением справится любой араб или африканец)
и недорого (не очень жалко, если и сожгут).
а в локальных конфликтах (улицы городов и т.п.) дорогущие супер-пупер с противоатомной
защитой машины типа Т90 горят абсолюто так же...


 
 Re: А чем отличается PIC от AVR?
Автор: Greg ()
Дата:   02/04/2004 22:01

Bill писал(а):

> Тем более, контроллеры
> имеют приблизительно одинаковые храктеристики.

во-во

не грех сослаться на авторитетов
http://www.microchip.ru/phorum/read.php?f=2&i=30723&t=30671#reply_30723


 
 Re: Что можно сделать на PICах
Автор: asd ()
Дата:   03/04/2004 23:14

Вот Вы все такие умные "!?" подскажите! делаю диплом по теме "система определения коэффициента
теплопередачи пластинчатого теплообменника" (сам придумал!) выбрал PIC 18xxx с 8ю АЦП
необжодимы операции: оцифровки сигнналов спомощью внутреннего АЦП;сумма, разность, умножение,
деление с плавающей запятой; взятие натурального логарифма. Четыре датчика температуры идва
ультрозуковых датчика расхода. Могу поделиться готовым. Или переходить на другую фирму?


 
 Re: Что можно сделать на PICах
Автор: Maxym ()
Дата:   04/04/2004 00:53

asd писал(а):

> "система определения коэффициента
> теплопередачи пластинчатого теплообменника" (сам придумал!)

> Могу поделиться готовым. Или
> переходить на другую фирму?

А вопрос в чём?

Раньше люди теплосчётчики строили на старых советских x51. +АЦП и часовая
микросхема. Значит и PIC справится.
Главная сложность состояла не в контроллере, а в АЦП. Нормы, то жёсткие.

Алгоритм вычисления сложный, но значительно упрощается, если теплоноситель вода, а
не пар.


 
 Re: Что можно сделать на PICах
Автор: zksystem ()
Дата:   04/04/2004 15:08

А что мешает на C писать? На z80 помнится мне на ассемблере писали...

- www.zaocita.ru - zksystem aka Konstantin I. Zuykov - icq: 82327775 -



 
 Re: запорожец этож Z80( а я больше люблю 101 )
Автор: zksystem ()
Дата:   04/04/2004 15:11

есть помнится мне Z380 - 40МHz - что там о запорожцах? если на то пошло - то это не
контроллер, а процессор, и вообще, хватит ..... меряться

- www.zaocita.ru - zksystem aka Konstantin I. Zuykov - icq: 82327775 -



 
 НУ то что MPLAB - ДурнаяСредаРазработки это ещё мягко сказано :( (-)
Автор: Hash ()
Дата:   05/04/2004 10:55

НУ то что MPLAB - ДурнаяСредаРазработки это ещё мягко сказано :(


 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   05/04/2004 11:19

пока я работал с AVRStudio там все время были глюки одни исчезали другие
появлялись, имхо MPLAB получше будет


 
 Re: Что можно сделать на PICах
Автор: sbi ()
Дата:   05/04/2004 19:24

ddef писал(а):

> Здравствуйте
> 1.подскажите что можно сделать на этих контрл-ах (готовые
> изделия)
> 2.Можно ли обрабатывать картинку получившею с видео камеры на
> пример
> Спасибо

Привет всем.
Давно не заходил на форум.Работал над новым проектом.
Проект как раз по теме.
Я уже как год работаю с Пиками и пишу только на ассемблере.
Работал только с 16 Пиками.
Появился новый проект,где нужно было обработать картинку с ч.б.
камеры.За одну ночь прочитал даташит на Пик18Ф452.
За 3 дня собрал макетку и написал программу.
Все работает.Единственный минус это из-за быстродействия-64 точки на строке.
Для данного проекта этого хватило.
Конечно можно сказать,что это глупость обрабатывать изображение на Пике,
но задача была разработать это в максимально быстрые сроки и с минимальными
затратами.
Можно было использовать и компьютер(Даже програмка соответствующая уже имелась),
но по ценовым затратам это было не разумно.
Можно было и процессор другой использовать,но не было времени его изучать.
В общем Пик выручил меня в очередной раз.
И еще изучать 18 Пики после 16 Пиков это одно удовольствие.
Для Атмеловцев хочу сказать так:
Не надо навязывать людям свои убеждения.Сейчас я фанатик Пиков,но когда я
увижу,что Пика не хватит,то я сам выберу новый контроллер,как год назад
я выбрал Пик.
Не надо лезть со своими Атмелями на форум Пиков.Хотите доказать,что вы круче?
Хм...Большой шкаф громче падает.




 
 Re: Что можно сделать на PICах
Автор: AlexNik ()
Дата:   05/04/2004 21:08

Greg писал:
<<не грех сослаться на
авторитетов
<<http://www.microchip.ru/phorum/read.php?f=2&i=30723&t=30671#reply_30723

Данная
ссылка, а также периодические нападки фанатов Avr заставили меня посмотреть команды для Atmega. Я не хочу спорить
какой проц лучше, а просто хочу сказать для тех кто использует PIC-и, а особенно PIC18. Для себя я давно решил, что Atmeg-и
быстрей PIC18 и команды круче, т.к. их 131 штука! Но я всё-равно делал выбор в пользу PIC18, большей частью из-за
переферии. Но при ближайшем рассмотрении этих самых команд понял, что их количество реально гораздо меньше. Поясню
почему. 22 команды в Avr: SBI, CBI, BSET, BCLR, BST, BLD, SEC, CLC, SEN, CLN, SEZ, CLZ, SEI, CLI, SES, CLS, SEV, CLV, SET,
CLT, SEH, CLH в PIC16-PIC18 заменяют всего 2 команды: BCF и BSF. Идём дальше: 24 команды (в Avr) косвенной адресации LD и
ST заменяют в PIC18 всего 3 команды: MOVF, MOVWF, LFSR при обращении к 3-м регистрам FSR (автодек, автоинкр и т.д.). Это
наиболее очевидные зависимые команды, но можно продолжить и дальше. Теперь что касается лучшей производительности
Avr: 16 МГц Avr и 40 МГц PIC18 даёт преимущество Avr в 1.6 раза. Но необходимость загрузки-выгрузки РОН-в снижает это
преимущество, а результаты тестов (см. ссылку) говорят вообще об обратном (я о производительности). Я не знаток Avr,
но думаю, что выкладки мои верны, тем более, что они основываются на авторитетном мнении. Выкладки эти посвящены
больше новичкам типа меня, т.к. профессионалы и так об этом знают. И чтобы они знали, что выбранные ими
микроконтроллеры в производительности ничуть не проигрывают, и при случае всегда давали аргументированный отпор
поклонникам Avr-в. А фирме Atmel должны высказать признательность, т.к. если бы не она, то не было бы наверное ни
флешовых PIC-в ни такого ассортимента. Конкуренция-великая движущая сила!!!


 
 Не для флейма, а истины для :)
Автор: Bill ()
Дата:   05/04/2004 22:07

Никогда и ни в чем никого не хотел убеждать. Но в порядке разъяснения.
О сравнении процессоров говорить можно много и лучше всего на конкретных примерах, без эпитетов типа
"рулез", "отстой" и т.п. И наличие таких эпитетов, и категоричность заявлений с той или другой
стороны говорят скорее о недостатке профессионализма. Но не будем об этом.
Теперь, собственно что я хотел пояснить. Архитектура процессора накладывает определенный отпечаток
на стиль программирования. У PIC отсутствуют регистры, и все данные хранятся в регистровом файле, то
бишь ОЗУ. И так или иначе одним из операндов в команде является адрес ячейки памяти. И нет никакой
разницы глобальные переменные, или локальные.
У AVR кроме ОЗУ имеются регистры, и все операции выполняются с регистрами. Поэтому писать программы
так же как это делается в PIC, размещая переменные в памяти, становится невозможно, поскольку вместо
одной команды PIC потребуется 3 команды, 2 из которых - команды пересылки между регистрами и
памятью. К сожалению, мне приходилось видеть тестовые программы (на Си), в которых переменные
располагались в ОЗУ. И проводились сравнения различных процессоров, в том числе и PIC, и AVR. При
этом получалось, что PIC "играл" на своем поле, в то время, как AVR - на чужом. Отсюда делался
вывод, что производительность PIC оказывалась выше, чем у AVR. Поклонники PIC могут кричать Ура и
бросать в воздух чепчики.
Но реальные программы отличаются от тестовых. Если я пишу для AVR, я не буду размещать переменны в
ОЗУ, я буду стараться размещать их в регистрах. И мой опыт показывает, что необходимость
использования глобальных переменных крайне невелика, а локальные переменные хранятся в регистрах. А
здесь уже у AVR появляются определенные преимущества, поскольку у него нет явно выраженного
аккумулятора, как у PIC (регистр W), и не требуются его загрузка или сохранение.
Я имел опыт программирования и на PIC, и на AVR. И, стало быть, я могу достаточно непредвзято судить
как о их достоинствах, так и о их недостатках. Чего желаю и всем остальным участникам затянувшейся
полемики. Не отом спорим господа.


 
 Re: Не для флейма, а истины для :)
Автор: LED ()
Дата:   06/04/2004 09:07

Bill писал(а):

> Но реальные программы отличаются от тестовых. Если я пишу для
> AVR, я не буду размещать переменны в
> ОЗУ, я буду стараться размещать их в регистрах. И мой опыт
> показывает, что необходимость
> использования глобальных переменных крайне невелика, а
> локальные переменные хранятся в регистрах. А
> здесь уже у AVR появляются определенные преимущества, поскольку
> у него нет явно выраженного
> аккумулятора, как у PIC (регистр W), и не требуются его
> загрузка или сохранение.
> Я имел опыт программирования и на PIC, и на AVR. И, стало быть,
> я могу достаточно непредвзято судить

А как насчет привести пример реализации любого типового несложного алгоритма на AVR
дабы мы могли оценить "определенные преимущества" в сравнении скажем с PIC18 ??

Или так и будем из пустого в порожнее ?


 
 Re: Не для флейма, а истины для :)
Автор: LED ()
Дата:   06/04/2004 09:12

Как насчет примитивного копирования одного массива в другой ?
Тут наверное архитектура AVR должна показать себя с наилучшей стороны (или нет ?)


 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   06/04/2004 09:56

 

;PIC 

   LFSR   0,adr1
   LFSR   1,adr2
   MOVLW  N_bytes
   MOVWF  counter,ab

loop

    movff  POSTINC0,POSTINC1 
    decfsz counter,ab,rf
    bra    loop

;AVR
    ldi    YH,high adr1
    ldi    YL,low adr1
    ldi    ZH,high adr2
    ldi    ZL,low adr2
    ldi    r16, N_bytes

loop:
	ld	r17,Z+	
	st	Y+,r17	
	dec	r16
	brne	loop	






 
 А мне все равно лиж бы пожрать!
Автор: PIC ()
Дата:   06/04/2004 10:02

-


 
 Re: Что можно сделать на PICах
Автор: LED ()
Дата:   06/04/2004 10:03

Ну и ?

Где обещчаные "преимущества" ???


 
 Re: !!!
Автор: Putin ()
Дата:   06/04/2004 10:04

M16 от Митсубиси - вот это "мерседес", а PIC - Ока без двигателя


 
 Я пример уже приводил
Автор: Bill ()
Дата:   06/04/2004 10:24

http://www.telesys.ru/wwwboards/mcontrol/294/messages/140505.shtml


 
 Да, немного говорил и об этом
Автор: Bill ()
Дата:   06/04/2004 10:27

Но не применительно к PIC.
http://mcusoft.narod.ru/Paleo.html


 
 Re: Я пример уже приводил
Автор: LED ()
Дата:   06/04/2004 10:31

Цитата:

> локальные переменные хранятся в регистрах. А
> здесь уже у AVR появляются определенные преимущества, поскольку
> у него нет явно выраженного
> аккумулятора, как у PIC

С моей точки зрения очень сомнительное "преимущество".

И где по вашей ссылке пример данных "преимуществ" ?

Можно проиллюстрировать на примере ?


 
 А почему Вы решили, что они должны быть? :)
Автор: Bill ()
Дата:   06/04/2004 10:37

Опять же, сравниваются PIC18 и AVR. Попробуйте добавить сюда код для PIC16 для полноты картины.
Я еще раз подчеркиваю, что PIC и AVR примерно одинаковые по своим характеристикам контроллеры. И
удобство программирования это вещь субъективная. У каждого свои ощущения. О чем спорить?


 
 Re: А почему Вы решили, что они должны быть? :)
Автор: LED ()
Дата:   06/04/2004 10:45

Так значит объективных преимуществ нет ?

А я уж думал вы нам сейчас на примере продемонстрируете продвинутость регистровой
организации памяти AVR в сравнении с отстойной файловой системой пика :(

Увы, вы меня разочаровали ...


 
 Мне трудно привести простой и наглядный пример. Но
Автор: Bill ()
Дата:   06/04/2004 11:02

я попробую. Собственно, основная моя мысль была такова, что в AVR отдельные подвыражения могут
вычисляться в различных регистрах и храниться там. Это дает возможность избежать большого количества
различных пересылок, что характерно для процессоров с явно выраженным аккумулятором. PIC не
является исключением. Такую же архитектуру имеет и Z80, и просессоры фирмы Motorola.
Но маленький пример я приведу, не знаю, насколько он будет наглядным.
//
// ** SetDigit	-- the function to input a digit via SETUP button
//		Returns the digit.
//
char SetDigit(char _value, char _low, char _high, char *_ptr, char _high_nibble)
	{
	char	_bcd, _digit, _temp;

	_digit = _value;			// Start at low available value
	for (;;)
		{
		_bcd = BinToBCD(_digit);	// Convert the value to BCD digit
		if (_high_nibble)
			{
			*_ptr	= (*_ptr & 0x0F) | (_bcd << 4);
			}
		else	{
			*_ptr	= (*_ptr & 0xF0) | _bcd;
			}
		if ((_temp=GetButtons()) & MODE_BIT)
			break;
		if (_temp & SETUP_BIT)		// Increment the value
			{
			if (++_digit > _high)	// Too high then
				_digit = _low;	// set it again to low
			}
		}
	return _digit;
	}

И результат трансляции
     23          char SetDigit(char _value, char _low, char _high, char *_ptr, char _high_nibble)
     24          	{
   \   __nearfunc char SetDigit(char, char, char, char *, char);
   \                     SetDigit:
   \   00000000   924A                       ST      -Y,R4
   \   00000002   93BA                       ST      -Y,R27
   \   00000004   93AA                       ST      -Y,R26
   \   00000006   939A                       ST      -Y,R25
   \   00000008   938A                       ST      -Y,R24
   \   0000000A                              REQUIRE ?Register_R4_is_cg_reg
   \   0000000A   2F81                       MOV     R24,R17
   \   0000000C   2F92                       MOV     R25,R18
   \   0000000E   2E43                       MOV     R4,R19
   \   00000010   2FB4                       MOV     R27,R20
     25          	char	_bcd, _digit, _temp;
     26          
     27          	_digit = _value;				// Start at low available value
   \   00000012   2FA0                       MOV     R26,R16
   \   00000014   C006                       RJMP    ??SetDigit_0
     28          	for (;;)
     29          		{
     30          		_bcd = BinToBCD(_digit);	// Convert the value to BCD digit
     31          		if (_high_nibble)
     32          			{
     33          			*_ptr	= (*_ptr & 0x0F) | (_bcd << 4);
     34          			}
     35          		else	{
     36          			*_ptr	= (*_ptr & 0xF0) | _bcd;
     37          			}
     38          		if ((_temp=GetButtons()) & MODE_BIT)
     39          			break;
     40          		if (_temp & SETUP_BIT)		// Increment the value
   \                     ??SetDigit_1:
   \   00000016   FB03                       BST     R16,3
   \   00000018   F426                       BRTC    ??SetDigit_0
     41          			{
     42          			if (++_digit > _high)	// Too high then
   \   0000001A   95A3                       INC     R26
   \   0000001C   179A                       CP      R25,R26
   \   0000001E   F408                       BRCC    ??SetDigit_0
     43          				_digit = _low;	// set it again to low
   \   00000020   2FA8                       MOV     R26,R24
   \                     ??SetDigit_0:
   \   00000022   2F0A                       MOV     R16,R26
   \   00000024   ....                       RCALL   BinToBCD
   \   00000026   2DE4                       MOV     R30,R4
   \   00000028   8110                       LD      R17,Z
   \   0000002A   23BB                       TST     R27
   \   0000002C   F031                       BREQ    ??SetDigit_2
   \   0000002E   701F                       ANDI    R17,0x0F
   \   00000030   9502                       SWAP    R16
   \   00000032   7F00                       ANDI    R16,0xF0
   \   00000034   2B01                       OR      R16,R17
   \   00000036   8300                       ST      Z,R16
   \   00000038   C004                       RJMP    ??SetDigit_3
   \                     ??SetDigit_2:
   \   0000003A   7F10                       ANDI    R17,0xF0
   \   0000003C   2B10                       OR      R17,R16
   \   0000003E   2DE4                       MOV     R30,R4
   \   00000040   8310                       ST      Z,R17
   \                     ??SetDigit_3:
   \   00000042   ....                       RCALL   GetButtons
   \   00000044   2F10                       MOV     R17,R16
   \   00000046   7110                       ANDI    R17,0x10
   \   00000048   F331                       BREQ    ??SetDigit_1
     44          			}
     45          		}
     46          	return _digit;
   \   0000004A   2F0A                       MOV     R16,R26
   \   0000004C   9189                       LD      R24,Y+
   \   0000004E   9199                       LD      R25,Y+
   \   00000050   91A9                       LD      R26,Y+
   \   00000052   91B9                       LD      R27,Y+
   \   00000054   9049                       LD      R4,Y+
   \   00000056   9508                       RET
     47          	}



 
 Re: А почему Вы решили, что они должны быть? :)
Автор: Bill ()
Дата:   06/04/2004 11:13

У каждого контроллера есть свои преимущества, есть свои недостатки. И я мог бы привести Вам массу
примеров "кривизны" AVR и его недостатков. Но Вам это будет неинтересно.
Хотя, еще раз повторюсь, я всегда считал и считаю, что оба контроллера имееют примерно одинаковые
характеристики и используются в осовно именно они. Отсюда и споры.
Но лучше бы просто поближе взглянуть на то, чем не пользуешься и тогда лучше сумеешь оценить то, чем
пользуешься. А мне приходилось пользоваться и тем, и другим, и третьим и... Короче говоря, мне есть
что сравнивать и как сравнивать.


 
 не-е, калаш лучше чем м16
Автор: стечкин ()
Дата:   06/04/2004 11:21

а реактивный миномёт ваще круто


 
 Re: А почему Вы решили, что они должны быть? :)
Автор: LED ()
Дата:   06/04/2004 11:28

Да, вы правы - пример ненаглядный и притом опять весьма специфический.

> А мне приходилось пользоваться и тем, и другим, и
> третьим и... Короче говоря, мне есть
> что сравнивать и как сравнивать.

Следует ли вас так понимать что Вы есть носитель абсолютной истины ? ;)


 
 Re: не-е, калаш лучше чем м16
Автор: Putin ()
Дата:   06/04/2004 11:32

Не сейчас рулит ковровое бомбометание!


 
 итц рилли, бат...(+)
Автор: patton ()
Дата:   06/04/2004 11:40

http://www.microchip.ru/phorum/read.php?f=2&i=46124&t=45858#reply_46124
вот такой алгоритм по-моему выигрышней у пика и вроде те ограничения которые приводились выше
здесь не играют значения, то есть конечно есть( всё же имеют значение ), но я о команде DECFSZ


 
 Я это делаю не взлетая
Автор: Катюша ()
Дата:   06/04/2004 11:56

Летит вьетконговец на сэмоле. Появляется F16, вьетконговец, вспоминая инструкцию, нажимает
зелёную кнопку - нет F16. Летит вьетконговец дальше. Появляется два F16, вьетконговец,
вспоминая инструкцию, нажимает жёлтую кнопку - нет двух F16. Летит вьетконговец дальше.
Появляется эскадрилья F16, вьетконговец, вспоминая инструкцию, нажимает красную кнопку -
открывается люк, вылезает мужик и говорит - Слышь, ускоглазенький, подвинся, счас мы их сделаем.


 
 тупите ;) там команда сравнения на борту( cp )
Автор: patton ()
Дата:   06/04/2004 12:08

а в пике надо вычитание делать


 
 Re: итц рилли, бат...(+)
Автор: Bill ()
Дата:   06/04/2004 12:13

Вполне возможно, но если есть интерес можно странслировать и посмотреть кто есть who. Я для AVR
постараюсь так сделать. Чисто из интереса. А если кто-то сделает это для PIC (у меня нет
транслятора), тогда можно будет сравнить. Мне это ПРОСТО интересно.


 
 чё телесистемы упали что ль? (-)
Автор: Vova ()
Дата:   06/04/2004 12:14

чё телесистемы упали что ль? (-)


 
 высоко взлететь - больно падать ;)
Автор: patton ()
Дата:   06/04/2004 12:19

Если задачу можно реализовать на компе, не привлекая микроконтроллер, а на мк делается потому
что нет знаний компового программирования, то это изощренный мазохизм сравнимый с
штрейхбрейхерством. И не надо ля-ля - атмела(ми) пишется, ведь стек по-русски через е. ;-)


 
 Re: А почему Вы решили, что они должны быть? :)
Автор: Bill ()
Дата:   06/04/2004 12:21

Нет, не стоит :) Истина всегда где-то рядом. А вообще, я отношусь к этому спокойно. Это все мои
инструменты. Позавчера был PDP-11 и Z80, вчера PIC, сегодня AVR. И кто знает, что мне придется
осваивать послезавтра. Лет двадцать назад мне нравилась Motorola, но я не имел возможности. Сегодня
я имею возможность, но не имею желания, пока. Опять же упоминалось и про dsPIC, то же интересно,
что это такое.
Словом, есть много процессоров хороших и разных. Бери и пользуйся.


 
 Re: тупите ;) там команда сравнения на борту( cp )
Автор: Bill ()
Дата:   06/04/2004 12:26

Ну да, в этом преимущество у AVR. Но, это только один маленький пример, который демонстрирует
арифметические возможности AVR, в том числе и поддержку обработки чисел со знаком. Я и статью
написал по этому поводу, где объясняю что, отчего и почему. Как только, мы со своим редактором
расставим все точки, так он ее выложит для публики.


 
 Да это я развлекаюсь(+)
Автор: patton ()
Дата:   06/04/2004 12:34

http://www.microchip.ru/phorum/read.php?f=2&i=47752&t=47054
не поможешь с нормальным листингом для Bill-а, похоже тут мы авров сделаем. У меня в этом
примере листинг не получается нормальный. Всё получился, но когда выложу посмотри, пожалуйста,
мож подкорректируешь, если не сложно.


 
 Кстати, насчет команды DECFSZ.
Автор: Bill ()
Дата:   06/04/2004 12:58

Она безусловно полезна. Но вся проблема в том, что все равно требуется дополнительно команда
перехода goto. В этом месте ни у PIC, ни у AVR нет преимуществ, поскольку для организации цикла
требуется две команды. В MCS51 есть специальная команда, и это дает ему определенные преимущества.
Где будет выигрыш у PIC в данном случае, так это при манипуляции с портом. У AVR это узкое место.


 
 Re: итц рилли, бат...(+)
Автор: patton ()
Дата:   06/04/2004 13:01

#include <pic.h>
void func()
{
  while(1)
  {
    { unsigned char i; i=0; while(--i); }
      RB4 ^= 1;
  }
}
void main()
{
  func();
}



    18                           	psect	text0
    19  07F9                     _func
    20                           ;	_i assigned to ?a_func+0
    21  0000                     _func$i	set	?a_func
    22                           ;main.c: 4: while(1)
    23  07F9                     l3
    24                           ;main.c: 5: {
    25  07F9  0183               	clrf	3	;select bank 0
    26  07FA  01A0               	clrf	?a_func
    27  07FB                     l5
    28  07FB  0BA0               	decfsz	?a_func
    29  07FC  2FFB               	goto	l5
    30                           ;main.c: 7: RB4 ^= 1;
    31  07FD  3010               	movlw	16
    32  07FE  0686               	xorwf	6
    33                           ;main.c: 8: }
    34  07FF  2FF9               	goto	l3


или даже вот такую ф-цию посмотрите и с листингом приведите пожалуйста

void delay()
{
  { unsigned char i; i=0; while(--i); }
}


    37                           	psect	text1
    38                           ;main.c: 10: void delay()
    39                           ;main.c: 11: {
    40  07F4                     _delay
    41                           ;	_i assigned to ?a_delay+0
    42  0000                     _delay$i	set	?a_delay
    43                           ;main.c: 15: { unsigned char i; i=0; while(--i)
      +                          ; }
    44  07F4  0183               	clrf	3	;select bank 0
    45  07F5  01A0               	clrf	?a_delay
    46  07F6                     l9
    47  07F6  0BA0               	decfsz	?a_delay
    48  07F7  2FF6               	goto	l9
    49  07F8  0008               	return


хотя конечно будет что-то типа
clr r16
loop:
dec r16
cpi r16,0 ; а если использовать brbc, то наверное вообще на команду короче будет
brne loop
return

но всеже DECFSZ очень интересная вещь, но вот с примером я видимо погорячился


 
 Re: Что можно сделать на PICах
Автор: nik_al ()
Дата:   06/04/2004 14:21

А мне когда перешел на пик не хватало команд ICALL, IJMP чтобы заметь такую команду
на пике несколько инструкций писать надо


 
 а вот мне
Автор: Vova ()
Дата:   06/04/2004 15:33

сижу и попу морщу с этими банками :(((((

пик 876-ой, компилер picc. на страницы ПЗУ внимания не
обращаю - компилер все четко делает, а там где асмовые модули тоже проблем нет, а вот с банками мляяяя, да
потом и с указателями на них мляяяя

ладно бы банки были, так еще и при косвенной адресации надо
помнить про бит IRP в STATUS'е мляяяя


как ни крути, хоть танцор, а хоть хирург, но в хитропопых
проектах, да в программулинах сложноватистых организация ОЗУ банками - минус :(((


 
 100% поддерживаю!
Автор: GOD ()
Дата:   06/04/2004 16:04

-


 
 что именно?
Автор: patton ()
Дата:   06/04/2004 16:09

что нужно было отказаться от банковки в пользу "единого" адресного пространства в
ущерб "регистровости" всей оперативки и получить в итоге авээр?

юзера дурковали по чёрному... ©

Отправка отредактированного (06/04/2004 16:09)


 
 Re: что именно?
Автор: GOD ()
Дата:   06/04/2004 16:16

Нет, чтобы получить совершенную структуру :)


 
 хочу вааще линейную память ;)
Автор: Vova ()
Дата:   06/04/2004 16:17

пришлось переделывать свою прогу давнишнюю, а там и так все по банкам распихано, но не хватает мне,
решил перетасовать и запарился все корректировать :(( то там вылезает фиксап оверфлоу (например, при
использовании #define _B0(x) ( *( (byte*)(&x) + 0 ) ) ), то здесь нельзя указатель на второй и третий
банки использовать, короче сексом сижу вот занимаюсь :((

и макросы эти (см. выше) для доступа к
байту многобайтовых переменных хочу более не использовать - переместил по банкам и звездец :(( а юнионы
громоздко как-то выглядят, даже и не знаю куда сколняться ... как быть-то?


 
 у 18-ых с этим все лучше, конечно, но
Автор: Vova ()
Дата:   06/04/2004 16:21

вот помнится на БК'шке программил, а она хоть и медленная, зато полностью 16-битная (в отличие,
например, от спектрУма ;) и все-все там линейно - куда хочу туда и пишу, эх ... правда всего 64 килобайта, но
все равно :)


 
 (неохота куки опять отключать) Пока не удаётся ;) Автор: Разработчики МК( всех )
Автор: patton ()
Дата:   06/04/2004 16:27

-


 
 Мне повезло(+)
Автор: patton ()
Дата:   06/04/2004 16:35

Мы на 18 заложились, а не на 16. Как-то умный человек в начале 2003года сказал мне - "чё вы
думаете, берите 18, цена меньше чем 877" и о всякой помехозащищенности я ни думал ни о какой и
прочих ужасах которых позже начитался. Имхо 16 выпускаются только для того чтоб было что в
старые проекты ставить. Убеди как-нибудь своих переползти на 18. А то как говорится это жесткач.


 
 Vova Объясни пож.
Автор: IgorV ()
Дата:   06/04/2004 17:37

Чего нельзя делать в хитече под 876 да и другой камень с кучей банков?
Я вот тоже сижу парюсь.
Понадобилось массив структур разместить в банке 2 или 3 - даёт разместить, а как
только начинаю использовать говорит ошибка. Только что в нулевом банке работало.
Даже можно ещё раз такой же массив структур добавить во 2 или 3- ем банках.

Привести что за ошибка не могу т.к. до сих пор (как-то Вову спрашивал уже по
гибриду 8.02ПЛ1 + МПЛАБ5.7.40) с гибридом работаю.
Что имеется ввиду "надо помнить про бит IRP в STATUS'е мляяяя"
По отдельности слова понятны, а вместе, это что, если хочу использовать указатель
на структуру в массиве надо ещё что то делать с IRP?


 
 Кстати, а чего так не пишете
Автор: patton ()
Дата:   06/04/2004 18:09

uint mymax (uint a, uint b)
{
  return a >= b ? a : b;// я про это
}



 
 Это будет несколько короче :)
Автор: Bill ()
Дата:   06/04/2004 18:15

      clr     r16
loop: dec     r16
      brne    loop

      ret



 
 вот что я скажу
Автор: Vova ()
Дата:   06/04/2004 18:17

IgorN писал(а):
> Привести что за ошибка не могу т.к. до сих пор (как-то Вову
> спрашивал уже по
гибриду 8.02ПЛ1 + МПЛАБ5.7.40) с гибридом работаю.

эт плохо, что ты ошибок не видишь - экстрасЕнс ?
;)
err-файл тоже не генерится? (если в настройках выставить)

> Что имеется ввиду "надо помнить
про бит IRP в STATUS'е мляяяя"

это я накололся в асмовых модулях ;)
вроде все работало, а как
запихал чёта в второй-третий банки и так сложилось, что после того, как компилер поработал с
переменными там или еще где, но бит IRP в STATUS'е выставился, а в своих асмовых ф-циях я про него забыл :) и
работая с переменными через FSR писал не туда :( как-то нечасто до этого меня касалась такая фигня, вот и
забыл.

> По отдельности слова понятны, а вместе, это что, если хочу
> использовать указатель на
структуру в массиве надо ещё что то делать с IRP?

штука такая, что picc не умеет просто так работать с
указателями на все банки. я уже говорил об этом, суть в том, что указатель в picc на ОЗУ восьмибитный (так
уж реализовано), а ОЗУ больше 256 байт бывает. поэтому, если нужен указатель на переменные во втором-
третем банках, то его надо явно так и определять:

char bank2 * ptr;
тогда указатель ptr сможет
указывать на переменные во втором банке (может и в третем - не проверял). если же указатель объявлен
как:
char * ptr;
то он может указывать только на переменные в нулевом и первом банках (при адресации
через FSR бит IRP статуса сброшен)

вот такая
фигня.


http://www.microchip.ru/phorum/read.php?f=2&i=43938&t=43855


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


 
 Re: Кстати, а чего так не пишете
Автор: Bill ()
Дата:   06/04/2004 18:22

Ну наверное потому, что некоторым кажется такое выражение нечитаемым (я не для себя пример писа
л).Во-вторых, скорее по привычке, потому что IAR хуже обрабатывает тернарные выражения, чем if
... else. Хотя в данном случае это без разницы.


 
 ну да, отвык :)
Автор: patton ()
Дата:   06/04/2004 18:23

но... пересылка в r16 при входе в ф-цию, хотя... в пик16 btemp вроде всего 16 байт( 70-7f ), а
в 18 - 128( адреса 0-128 ), тут у меги получается маловато и косвенная адресация отъест это
преимущество :)


 
 в данном случае тоже
Автор: patton ()
Дата:   06/04/2004 18:28

в HI-TECH не проверял везде, но здесь без разницы.


 
 можно и ксорить, но здесь это не суть (-)
Автор: patton ()
Дата:   06/04/2004 18:30

-


 
 Спасибо большое!
Автор: IgorV ()
Дата:   06/04/2004 18:33

Vova писал(а):

> IgorN писал(а):
> > Привести что за ошибка не могу т.к. до сих пор (как-то Вову
> > спрашивал уже по
> гибриду 8.02ПЛ1 + МПЛАБ5.7.40) с гибридом работаю.
>
> эт плохо, что ты ошибок не видишь - экстрасЕнс ?
> ;)
> err-файл тоже не генерится? (если в настройках выставить)


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

Самое странное что указатель bank0 и 1 могут указывать на любой х.. из любого
банка 0 или 1, а видимо так же и для 2 и 3. Но 01 не может в 23 и наоборот. Похоже
что так. Надеюсь сокращение слов не повлияло на смысл.


 
 Re: ну да, отвык :)
Автор: Bill ()
Дата:   06/04/2004 18:33

Немного не понял. У AVR, действительно, аргументы передаются через регистры. Если их не хватает
- через стек. У PIC приходится передавать через временные ячейки памяти. Чего у mega маловато,
поясните. Кстати "бестселлер года" не хотите взглянуть. Я там этот вопрос затрагивал
http://www.caxapa.ru/url?http://www.caxapa.ru/faq/


 
 ну так об этом и говорю
Автор: Vova ()
Дата:   06/04/2004 18:47

IgorN писал(а):
> Самое странное что указатель bank0 и 1 могут указывать на любой
> х.. из любого
банка 0 или 1, а видимо так же и для 2 и 3. Но 01 не может в 23
> и наоборот.


так об этом и говорю. и у них в
документации написано. и об этом же с Иваном разговаривали (ссылку давал). А все от того, что указатель
на ОЗУ восьмибитный. вот.

и восьмью битами никак не получается адресовать все-все
ОЗУ.

(проводя аналогии - 8 бит это FSR, но для косвенной адресации еще один бит используется - IRP в
STATUS'е, который говорит на какие банки будет показывать FSR (сброшен - 0-1, установлен - 2-3)).


 
 Видимо я облажался, про стек я и думать забыл :(
Автор: patton ()
Дата:   06/04/2004 18:51

Сейчас... А внутри ф-ций если нужно использовать большую память чем 32 регистра надо где-то это
всё хранить. Почти понимаю, но хочется что-нибудь в ответ услышать.


 
 Re: Видимо я облажался, про стек я и думать забыл :(
Автор: Bill ()
Дата:   06/04/2004 18:57

В стеке, вестимо. Кстати, компилятор не все регистры использует (IAR). И я тоже об этом писал в
"бестселлере" (он теперь так называется :)))). Применительно к AVR, хотя и про PIC упомянул.


 
 предположим
Автор: patton ()
Дата:   06/04/2004 19:08

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


 
 Re: А я слышал, что Microchip продает 80% своих акций фирме Atmel!
Автор: mron ()
Дата:   06/04/2004 20:25

-


 
 Re: ну так об этом и говорю
Автор: IgorV ()
Дата:   06/04/2004 21:11

Vova писал(а):


>
> так об этом и говорю. и у них в
> документации написано. и об этом же с Иваном разговаривали
> (ссылку давал). А все от того, что указатель
> на ОЗУ восьмибитный. вот.
>
> и восьмью битами никак не получается адресовать все-все
> ОЗУ.
>
> (проводя аналогии - 8 бит это FSR, но для косвенной адресации
> еще один бит используется - IRP в
> STATUS'е, который говорит на какие банки будет показывать FSR
> (сброшен - 0-1, установлен - 2-3)).

Чёто стройная теория расходится с практикой. ;[

Вот так не даёт:
struct b24 bank3 A[16];
struct b24 bank1 B[16];
struct b24* bank3  pA=A;
struct b24* bank1 pB=B;
пишет:
Error[000] STAB876.OBJ 61 : Fixup overflow in expression (loc 0xFF8 (0xFF8+0), size
1, value 0x190)
Error[000] STAB876.OBJ 91 : Fixup overflow in expression (loc 0xD50 (0xD2E+34),
size 1, value 0x190)
Error[000] STAB876.OBJ 135 : Fixup overflow in expression (loc 0x3A0 (0x380+32),
size 1, value 0x190)



А если так:
struct b24 A[16];
struct b24 bank1 B[16];
struct b24* bank3  pA=A;
struct b24* bank1 pB=B;

то работает. или это иллюзия работы(?), во всяком случае компилится без ошибок.


 
 ты банк не туда зафигачил
Автор: Vova ()
Дата:   06/04/2004 21:28

IgorN писал(а):
> Вот так не даёт:
>
> struct b24 bank3 A[16];
> struct b24 bank1 B[16];
> struct b24* bank3  pA=A;
> struct b24* bank1 pB=B;
> 
пишет:

квалификатор банк не там разместил.

char * ptr;
// указатель на нулевой и первый банк, размещен (сам указатель, один байт) в
нулевом банке

char bank2 * ptr;
// указатель на второй (а может и на третий прокати) банк, размещен (сам указатель,
один байт) в нулевом банке


char * bank2 ptr;
// указатель на нулевой-первый банки, размещен (сам указатель, один байт) во втором
банке

bank2 char * bank1 ptr;
// указатель на второй банк, размещен (сам указатель, один байт) в первом банке


понял мыслю?


 
 а чего там у тебя за структура такая?
Автор: Vova ()
Дата:   06/04/2004 21:37

IgorN писал(а):
> struct b24 A[16];

это чего такое?
что есть б24?

может лучше сделать
через typedef?

typedef struct { unsigned char qwe; int asd } my_t;

my_t A[16];

объявили
массив из 16 элементов типа my_t ...


 
 Re: ты банк не туда зафигачил
Автор: Igor_N ()
Дата:   07/04/2004 07:30

Vova писал(а):

> понял мыслю?


А ну да, то я и смотрю (асм нагенерённого) что там IRP в нуле держится.

Век живи, а учиться - жизни не хватит.


 
 Re: а чего там у тебя за структура такая?
Автор: Igor_N ()
Дата:   07/04/2004 07:36

Vova писал(а):

> IgorN писал(а):
> > struct b24 A[16];
>
> это чего такое?
> что есть б24?
>
> может лучше сделать
> через typedef?
>
> typedef struct { unsigned char qwe; int asd } my_t;
>
> my_t A[16];
>
> объявили
> массив из 16 элементов типа my_t ...

union four{unsigned long L;
struct b24{
char lo;
char mid;
char hi;

}b;
};


Можно лучше? Суть объединения - выдрать младшие 3 байта из long, старший не нужен
(всё равно ноль). Если бы были целые трёхбайтные я бы лонг вообще не использовал.


 
 Re: Т-34 признан лучшим танком ХХ века
Автор: Maxym ()
Дата:   27/11/2006 08:22

Лучшим танком всех времен и народов стал советский Т-34. Он получил близкие к
предельным оценки за огневую мощь, защищенность, подвижность, высшую оценку за
освоение промышленностью. Репутация Т-34, завоеванная им на полях сражений,
обеспечила танку высокий балл по последнему критерию.

http://www.podrobnosti.ua/kaleidoscope/2006/11/21/369525.html


 
 Вот это топик подняли! Рекордное количество постов однозначно! (-)
Автор: InsolentS ()
Дата:   27/11/2006 15:37

-

-----------------------------------------------------
Итерация присуща человеку, а рекурсия - Богу. Л. Дойч.

Отправка отредактированного (27/11/2006 15:39)





Горячие темы на нашем форуме: