Несколько слов о MCS-51
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
Кстати помотреть "как должно быть" можно в PROTEUS - взять модельку at89c52 и память или просто посмотреть как она ножками должна дрыгать.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- Mozart
- Мучитель микросхем
- Сообщения: 413
- Зарегистрирован: Пт мар 10, 2006 12:23:05
- Откуда: Moscow
- Контактная информация:
честно прочитал всю тему... это о mcs51?? что-то я ничего не прочитал кроме первого поста про производительность, а также обсуждение языков... ну как обычно сравнили прогу "hello world" написанную на си и асме... и мне стало грустно...
... как можно сравнить корову с быком??? сейчас пишут на си потом, если критично по времени оптимизирует - делают асмовские вставки, как мне кажется оч правильный подход..., мне было бы интересно посмотреть сколько строчек будет и времени займёт, если написать программу управления 8мью вентиляторами... и передачи скорости и температуры в комп... связь с другими МК по и2с... и т.д. ...
но разговор не об этом разговор о 51ых... так чем они лучше хуже?? вот к примеру ARM... почему не АRM??
вообще было бы круто, если бы это появилось в обучалке... там к примеру чем программить чем отлаживать в чём писать... где лучше применять...
но разговор не об этом разговор о 51ых... так чем они лучше хуже?? вот к примеру ARM... почему не АRM??
вообще было бы круто, если бы это появилось в обучалке... там к примеру чем программить чем отлаживать в чём писать... где лучше применять...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
Mozart писал(а):вот к примеру ARM... почему не АRM??
чем программить чем отлаживать в чём писать...
arm2day. народ .ru - "ARM на пару дней" типа.
Mozart писал(а):ARM где лучше применять...
Подойдут там же где используют и 8 и 16 битные МК.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Mozart писал(а):сейчас пишут на си потом, если критично по времени оптимизирует - делают асмовские вставки, как мне кажется оч правильный подход..., мне было бы интересно посмотреть сколько строчек будет и времени займёт, если написать программу управления 8мью вентиляторами... и передачи скорости и температуры в комп... связь с другими МК по и2с... и т.д. ...
Сейчас пишут.... да, пишут, потому что идет бездумное "упрощенчество" всего: поглядите, все за нас уже придумано, а нам подсовывают готовенькое - компьютеры, которые лучше нас знают, что и как надо делать, заготовки программ, которые за нас все делают... Вы же превращаетесь из художника в простого штамповщика, который тискает готовые штампы. Но слава достается не вам, а тому, кто этот штамп вырезал... В интернете есть немало доказательств того, что разработка "с нуля" программы на Си не более чем на 5-6% времени быстрее, а часто наоборот - дольше, чем на ассемблере, но этот факт упopно игнорируется всеми... А с учетом ассемблерной оптимизации - гарантированно дольше в разы! Видят только мизер: использование готовых процедур, которые в сущности в серьезном проекте ничего не решают... Дело ваше, кушайте пережеванную другими пищу, теряйте собственные зубы - мне все равно...
И напоследок: вам хотелось бы посмотреть на строчки и сколько будет занимать? Так посмотрите: возьмите мой код для термомтера из моей статьи и напишите на любимом Си аналогичный - только полностью аналогичный (т.е. сделайте ПОСЕГМЕНТНУЮ индикацию, как у меня) - примените ваши заготовки для 1-Wire, преобразования температуры и т.п... думаю, сравнение результирующего размера кода вас неприятно удивит. И уверен, что времени у вас на написание этой программы уйдет никак не меньше пары дней - а я свою написал за 6 часов... Сравните и напишите нам о результате.
И еще, про АРМы, не смотря на то, что тема про 51-е. Вы забыли, что есть ведь и 32-разрядные МК...или DSP (они и 128-битные не редкость)... может, сразу на них обучалку надо? А что, tych вам сбацает - какие проблемы? 90% из здесь присутствующих (да и вообще среди любителей, наверное) ни разу не написали программу, которая задействовала бы хотя бы 70% ресурсов даже паршивенького тини2313, не говоря про Atmega16, - но АРМы нам подавай! ДА ЗАЧЕМ ОНИ ВАМ?!?! Только потому, что это модно и "круто"? Тогда я пас, больше в теме обсуждения МК не участвую - ну не крутой я, что поделать...
Извините, я снова сорвался на недопустимый тон, но я искренне возмущен подобными высказываниями. Больше не буду, прошу прощения.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
ARV писал(а):Но слава достается не вам, а тому, кто этот штамп вырезал...
Беда
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- Mozart
- Мучитель микросхем
- Сообщения: 413
- Зарегистрирован: Пт мар 10, 2006 12:23:05
- Откуда: Moscow
- Контактная информация:
Извините, я снова сорвался на недопустимый тон, но я искренне возмущен подобными высказываниями. Больше не буду, прошу прощения.
всё нормально... накипело...
...идет бездумное "упрощенчество" всего...
ну да... зачем тратить время?? когда уже всё сделано... когда делаешь что-то новое и тратишь время разбираешься... посмотрите RTOS AVRx зачем это писать когда уже написано??? единственно иногда хочется самому это сделать - сидишь и делаешь...
а вы сами себе компилятор написали??? а может быть и ОС себе написали??? и она у вас своя....
никто не преващается... вы же себе машину покупаете, а не собираете... материнку вы тоже себе покупаете и различную преблуду... так вот ваша задача её спаять!!! - бред... я ещё раз говорю "для чего тратить время на то что уже написано?" дописать, исправить, уменьшить размер и т.д..... подумайте - это экономия нашего времени... художник не должен думать о кистях... где их купить и т.д. они должны быть у него и он должен ими рисовать!!!Вы же превращаетесь из художника в простого штамповщика
о каких процедурах вы говорите???использование готовых процедур
- вот это я делал на пиках и как раз на асме - оказалось лучше по быстродействию, но намаялся то один сегмент ярче другого то вообще не видно как светится... даже видео есть...сделайте ПОСЕГМЕНТНУЮ индикацию, как у меня
И еще, про АРМы, не смотря на то, что тема про 51-е. Вы забыли, что есть ведь и 32-разрядные МК...или DSP (они и 128-битные не редкость)... может, сразу на них обучалку надо? А что, tych вам сбацает - какие проблемы? 90% из здесь присутствующих (да и вообще среди любителей, наверное) ни разу не написали программу, которая задействовала бы хотя бы 70% ресурсов даже паршивенького тини2313, не говоря про Atmega16, - но АРМы нам подавай! ДА ЗАЧЕМ ОНИ ВАМ?!?! Только потому, что это модно и "круто"? Тогда я пас, больше в теме обсуждения МК не участвую - ну не крутой я, что поделать...
зря вы так... я хотел спросить почему вы отдаёте предпочтение 51ым... только из-за быстродействия??? и спросил а почему бы не взять АРМы?? они тоже относительно быстрые... если бы вы в обучалку про 51ые написали...
з.ы. я в 16ой меге использовал, 4канала ШИМа 4 канала АЦП, УСАРТ,.
так мало написать, нужно ещё и отладить...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
- Mozart
- Мучитель микросхем
- Сообщения: 413
- Зарегистрирован: Пт мар 10, 2006 12:23:05
- Откуда: Moscow
- Контактная информация:
я потратил минутку, которые ушли на то чтобы текст набрать...
и получилось вот что
я хочу конструктивного обсуждения почему не Си... вот пример кода дёргания ноги меги... что тут оптимизировать??? что здесь лишнего??
и получилось вот что
Код: Выделить всё
/*c - language*/
#include <avr>
int main()
{
DDRC = 0x01;
PORTC = 0x00;
while (1)
{
PORTC |= (1 << 0);
for(uint16_t i = 0; i < 10000; i++);
PORTC &= ~(1 << 0);
for(uint16_t i = 0; i < 10000; i++);
}
}
Код: Выделить всё
/*disasm*/
00000000: 940C0046 JMP 0x00000046 Jump
+00000002: 940C0063 JMP 0x00000063 Jump
+00000004: 940C0063 JMP 0x00000063 Jump
+00000006: 940C0063 JMP 0x00000063 Jump
+00000008: 940C0063 JMP 0x00000063 Jump
+0000000A: 940C0063 JMP 0x00000063 Jump
+0000000C: 940C0063 JMP 0x00000063 Jump
+0000000E: 940C0063 JMP 0x00000063 Jump
+00000010: 940C0063 JMP 0x00000063 Jump
+00000012: 940C0063 JMP 0x00000063 Jump
+00000014: 940C0063 JMP 0x00000063 Jump
+00000016: 940C0063 JMP 0x00000063 Jump
+00000018: 940C0063 JMP 0x00000063 Jump
+0000001A: 940C0063 JMP 0x00000063 Jump
+0000001C: 940C0063 JMP 0x00000063 Jump
+0000001E: 940C0063 JMP 0x00000063 Jump
+00000020: 940C0063 JMP 0x00000063 Jump
+00000022: 940C0063 JMP 0x00000063 Jump
+00000024: 940C0063 JMP 0x00000063 Jump
+00000026: 940C0063 JMP 0x00000063 Jump
+00000028: 940C0063 JMP 0x00000063 Jump
+0000002A: 940C0063 JMP 0x00000063 Jump
+0000002C: 940C0063 JMP 0x00000063 Jump
+0000002E: 940C0063 JMP 0x00000063 Jump
+00000030: 940C0063 JMP 0x00000063 Jump
+00000032: 940C0063 JMP 0x00000063 Jump
+00000034: 940C0063 JMP 0x00000063 Jump
+00000036: 940C0063 JMP 0x00000063 Jump
+00000038: 940C0063 JMP 0x00000063 Jump
+0000003A: 940C0063 JMP 0x00000063 Jump
+0000003C: 940C0063 JMP 0x00000063 Jump
+0000003E: 940C0063 JMP 0x00000063 Jump
+00000040: 940C0063 JMP 0x00000063 Jump
+00000042: 940C0063 JMP 0x00000063 Jump
+00000044: 940C0063 JMP 0x00000063 Jump
+00000046: 2411 CLR R1 Clear Register
+00000047: BE1F OUT 0x3F,R1 Out to I/O location
+00000048: EFCF SER R28 Set Register
+00000049: E1D0 LDI R29,0x10 Load immediate
+0000004A: BFDE OUT 0x3E,R29 Out to I/O location
+0000004B: BFCD OUT 0x3D,R28 Out to I/O location
+0000004C: E011 LDI R17,0x01 Load immediate
+0000004D: E0A0 LDI R26,0x00 Load immediate
+0000004E: E0B1 LDI R27,0x01 Load immediate
+0000004F: EFE2 LDI R30,0xF2 Load immediate
+00000050: E0F0 LDI R31,0x00 Load immediate
+00000051: E000 LDI R16,0x00 Load immediate
+00000052: BF0B OUT 0x3B,R16 Out to I/O location
+00000053: C002 RJMP PC+0x0003 Relative jump
+00000054: 9007 ELPM R0,Z+ Extended load program memory and postincrement
+00000055: 920D ST X+,R0 Store indirect and postincrement
+00000056: 30A0 CPI R26,0x00 Compare with immediate
+00000057: 07B1 CPC R27,R17 Compare with carry
+00000058: F7D9 BRNE PC-0x04 Branch if not equal
+00000059: E011 LDI R17,0x01 Load immediate
+0000005A: E0A0 LDI R26,0x00 Load immediate
+0000005B: E0B1 LDI R27,0x01 Load immediate
+0000005C: C001 RJMP PC+0x0002 Relative jump
+0000005D: 921D ST X+,R1 Store indirect and postincrement
+0000005E: 30A0 CPI R26,0x00 Compare with immediate
+0000005F: 07B1 CPC R27,R17 Compare with carry
+00000060: F7E1 BRNE PC-0x03 Branch if not equal
+00000061: 940C0065 JMP 0x00000065 Jump
+00000063: 940C0000 JMP 0x00000000 Jump
@00000065: main
---- main.c ----------
3: {
+00000065: EFCF SER R28 Set Register
+00000066: E1D0 LDI R29,0x10 Load immediate
+00000067: BFDE OUT 0x3E,R29 Out to I/O location
+00000068: BFCD OUT 0x3D,R28 Out to I/O location
4: DDRC = 0x01;
+00000069: E081 LDI R24,0x01 Load immediate
+0000006A: BB84 OUT 0x14,R24 Out to I/O location
5: PORTC = 0x00;
+0000006B: BA15 OUT 0x15,R1 Out to I/O location
9: PORTC |= (1 << 0);
+0000006C: 9AA8 SBI 0x15,0 Set bit in I/O register
+0000006D: E08F LDI R24,0x0F Load immediate
+0000006E: E297 LDI R25,0x27 Load immediate
11: for(uint16_t i = 0; i < 10000; i++);
+0000006F: 97C2 SBIW R24,0x32 Subtract immediate from word
+00000070: FF97 SBRS R25,7 Skip if bit in register set
+00000071: CFFD RJMP PC-0x0002 Relative jump
13: PORTC &= ~(1 << 0);
+00000072: 98A8 CBI 0x15,0 Clear bit in I/O register
+00000073: E08F LDI R24,0x0F Load immediate
+00000074: E297 LDI R25,0x27 Load immediate
15: for(uint16_t i = 0; i < 10000; i++);
+00000075: 97C2 SBIW R24,0x32 Subtract immediate from word
+00000076: FF97 SBRS R25,7 Skip if bit in register set
+00000077: CFFD RJMP PC-0x0002 Relative jump
+00000078: CFF3 RJMP PC-0x000C
я хочу конструктивного обсуждения почему не Си... вот пример кода дёргания ноги меги... что тут оптимизировать??? что здесь лишнего??
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
Всё лишнее! Топик то про 8051.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Я предпочитаю 51-е только потому, что система их команд по моему разумению - самая красивая, удобная и логичная. Кроме того у них есть несомненные плюсы: например, команда деления, которой нет до сих пор в AVR-ах, стандартно два 16-разрядных таймера (а в более свежих моделях - 3...5 и более), гораздо более удобная работа с портами ввода-вывода, наличие битовых переменных... Для меня быстродействие, как правило, второстепенно, а вот удобство работы - первично. Обучалку по 51-ым я сделал давно и она печатается в журнале Радиолюбитель.. хотите - почитайте... кстати, AVR-ы я применяю не меньше 51-ых, а учитывая, что публикации на тему 51-ых не находят отклика (например, на этом сайте), то последнее время я их применяю даже чаще
.
Про Си и ассемблер - разговор отдельный, не для здесь
.
На счет художника и кистей: те, кто автомобиль понимает как средство самовыражения, т.е. искусства, тот именно сам его собирает - и таких фанатов немало. Некоторые их них тратят на переделку старенькой победы денег больше, чем на бумера 6-й серии - и рады до слез! А вот когда вы берете КодВизион и за 5 секунд он вам генерирует какие-то процедуры для работы, например, с 1-wire, то это именно штамповка, что бы вы мне не говорили. Кстати, обратите внимание, что вопросов на форуме типа "код мастера кодвизион не работает почему-то" очень много... почему бы это? Да потому, что вынужденный ползать - не взлетит... когда я вам даю свой код, а вы его просто прошиваете - какое ваше участие в процессе? - минимальное. А если что-то не работает - вы кричите мне - помоги! А те, кто берет код всяких кодвизардов - кричит на форуме... А вот я не кричу, потому что вполне без усилий разбираюсь со всеми нюансами, потому что я свой код знаю, как свои 5 пальцев, знаю архитектуру и прочее... знаю, потому что сам все делаю.
АРМы - это очередной способ убедить покупателей-разработчиков потратить деньги там, где прекрасно можно обойтись и без этого. Потому они очень привлекательны - много памяти, быстродействия и всего-всего... Но если вы делаете не стабилизатор полета самолета с обратной стреловидностью крыла - вам эти навороты до лампочки. Согласитесь, что чем выше производительность, тем более длительные задержки вы добавляете в свои программы, т.к. они работают с человеком, которому и 20 событий за секунду - перебор... Т.е. взяв более мощный процессор вы станете тратить его производительность на торможение его же работы! Абсурд! Неужели никто не понимает, что увлечение всеми этими наворотами ничего, кроме роста собственного тщеславия, не приносит? Посмотрите на компьютеры: за 10 лет их производительность возрасла в тысячи раз, и что, набирать тексты стало легче? а на что тратится эта производительность? на картиночки... и на средства снижения производительности в моменты простоя... т.е. оказалось, что выгоднее тормозить процессор, ибо он простаивает больше, чем работает... это тупик разума... удав, пожирающий свой хвост...
Про Си и ассемблер - разговор отдельный, не для здесь
На счет художника и кистей: те, кто автомобиль понимает как средство самовыражения, т.е. искусства, тот именно сам его собирает - и таких фанатов немало. Некоторые их них тратят на переделку старенькой победы денег больше, чем на бумера 6-й серии - и рады до слез! А вот когда вы берете КодВизион и за 5 секунд он вам генерирует какие-то процедуры для работы, например, с 1-wire, то это именно штамповка, что бы вы мне не говорили. Кстати, обратите внимание, что вопросов на форуме типа "код мастера кодвизион не работает почему-то" очень много... почему бы это? Да потому, что вынужденный ползать - не взлетит... когда я вам даю свой код, а вы его просто прошиваете - какое ваше участие в процессе? - минимальное. А если что-то не работает - вы кричите мне - помоги! А те, кто берет код всяких кодвизардов - кричит на форуме... А вот я не кричу, потому что вполне без усилий разбираюсь со всеми нюансами, потому что я свой код знаю, как свои 5 пальцев, знаю архитектуру и прочее... знаю, потому что сам все делаю.
АРМы - это очередной способ убедить покупателей-разработчиков потратить деньги там, где прекрасно можно обойтись и без этого. Потому они очень привлекательны - много памяти, быстродействия и всего-всего... Но если вы делаете не стабилизатор полета самолета с обратной стреловидностью крыла - вам эти навороты до лампочки. Согласитесь, что чем выше производительность, тем более длительные задержки вы добавляете в свои программы, т.к. они работают с человеком, которому и 20 событий за секунду - перебор... Т.е. взяв более мощный процессор вы станете тратить его производительность на торможение его же работы! Абсурд! Неужели никто не понимает, что увлечение всеми этими наворотами ничего, кроме роста собственного тщеславия, не приносит? Посмотрите на компьютеры: за 10 лет их производительность возрасла в тысячи раз, и что, набирать тексты стало легче? а на что тратится эта производительность? на картиночки... и на средства снижения производительности в моменты простоя... т.е. оказалось, что выгоднее тормозить процессор, ибо он простаивает больше, чем работает... это тупик разума... удав, пожирающий свой хвост...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- Mozart
- Мучитель микросхем
- Сообщения: 413
- Зарегистрирован: Пт мар 10, 2006 12:23:05
- Откуда: Moscow
- Контактная информация:
на счёт кодвижн согласен барахло и деградация!!! но есть IAR, WinAVR gcc...
вообще насчёт простоя и производительности... я даже не знаю как можно загрузить проц по полной.... можно поставить компилиться проект плисовский какой-нить большой... или в visual C++ что-нить огромное откомпилировать... или играшку поствить... а так ну где ещё или как ещё?? хз...
сейчас на работе осваиваю АРМ ну надо так... вообще в нём много чего есть к примеру встроенный юсб, контроллер DMA, можно спокойно реализовать цифровой фильтр, массивчек размещать в память, и спокойно не обращаясь к ресурсам ядра передавать по юсб... возможности колосальные, но только где применить простому радиолюбителю (коим и я являюсь), я не знаю... и после авр это что-то такое очень сложное... авр гораздо проще...
з.ы. да и вообще надо чем-то себе деньги зарабатывать... вот и приходится за всё хвататься...
вообще насчёт простоя и производительности... я даже не знаю как можно загрузить проц по полной.... можно поставить компилиться проект плисовский какой-нить большой... или в visual C++ что-нить огромное откомпилировать... или играшку поствить... а так ну где ещё или как ещё?? хз...
сейчас на работе осваиваю АРМ ну надо так... вообще в нём много чего есть к примеру встроенный юсб, контроллер DMA, можно спокойно реализовать цифровой фильтр, массивчек размещать в память, и спокойно не обращаясь к ресурсам ядра передавать по юсб... возможности колосальные, но только где применить простому радиолюбителю (коим и я являюсь), я не знаю... и после авр это что-то такое очень сложное... авр гораздо проще...
з.ы. да и вообще надо чем-то себе деньги зарабатывать... вот и приходится за всё хвататься...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Оратите внимание: я ни слова не говорил про зарабатывание денег. Увы, зарабатываем тем, за что платят, но ведь это не обязывает нас тем же самым заниматься для себя, для души и хобби? Действительно, для любительских применений АРМ совсем не требуется... и тем более за 2 дня - чему там научишься, кроме вершков, кроме готовых примеров? А USB во многих МК есть нынче, но цена их, мягко говоря, не для всех...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
Silabs жгёт !
Silabs C8051F9xx: 25 MIPS @ 0.9V -->
http://www.silabs.com/tgwWebApp/public/ ... agemcu.htm
Silabs C8051F9xx: 25 MIPS @ 0.9V -->
http://www.silabs.com/tgwWebApp/public/ ... agemcu.htm
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
51's forever!!!
Рок-н-Ролл жив!!!
мы еще покажем миру!!!

Рок-н-Ролл жив!!!
мы еще покажем миру!!!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- Brutaller
- Встал на лапы
- Сообщения: 87
- Зарегистрирован: Пн ноя 05, 2007 12:44:43
- Откуда: C:\Russia\SPb
- Контактная информация:
Выкопал на одном из форумов такое высказывание(идет сравнение с AVR):
О каких плясках с бубном речь? Как я понимаю о том, что в x51 нет команд подобных avr-овским, как например: BRSH, BRLO, BRMI, BRPL, BRGE и т.п. ?
Кстати, а как в x51 прыгать в зависимости от выше описанных условий? Только с помощью прямо анализа регистра PSW ?
Между прочим, один человек с работы дал мне на выходные поиграться такую плату от Silabs, в комплекте у нее идет вот такой USB программатор/отладчик, маленькая такая коробочка (на ладони умещается).
Ну что могу сказать, впечатления остались очень хорошие, особенно что касается отладки. Не сравнить с AVR. По работе приходится иметь дело с avr-овским JTAGICE mkII, это просто монстр, здоровая коробка, цена которой что то около 300$, тормозная и глюкавая :-/
Силабовский же отладчик всего 35$ стоит, у нас в городе например за 42$ можно взять. При чем схема этого отладчика есть в даташите, а прошивку как то сумели выдрать. Т.е. если есть желание, то можно и самому собрать. Если отладка не нужна, то можно собрать программатор совсем "на коленке" (под LPT порт), схема не сложнее чем у ByteBlaster.
Так что Silabs, как уже говорил tych, жжёт! :)))
Правда вот не смотря на дешевые отладочные средства, цены на сами кристаллы всё таки побольше, чем на аналогичные AVR.
И еще один момент. Поковырявшись по силабовским даташитам, я понял, что любой внутренний модуль можно отмапить на любой пин. Я правильно понял? Если да, то это очень круто и удобно.
По моему наличие всех необходимых бит признаков и установка их при любой операции - самый большой прорыв, по сравнению с х51. Именно это дало такой прирост производительности при работе с арифметикой. Там сравнение - это просто пляски с бубном.
О каких плясках с бубном речь? Как я понимаю о том, что в x51 нет команд подобных avr-овским, как например: BRSH, BRLO, BRMI, BRPL, BRGE и т.п. ?
Кстати, а как в x51 прыгать в зависимости от выше описанных условий? Только с помощью прямо анализа регистра PSW ?
Между прочим, один человек с работы дал мне на выходные поиграться такую плату от Silabs, в комплекте у нее идет вот такой USB программатор/отладчик, маленькая такая коробочка (на ладони умещается).
Ну что могу сказать, впечатления остались очень хорошие, особенно что касается отладки. Не сравнить с AVR. По работе приходится иметь дело с avr-овским JTAGICE mkII, это просто монстр, здоровая коробка, цена которой что то около 300$, тормозная и глюкавая :-/
Силабовский же отладчик всего 35$ стоит, у нас в городе например за 42$ можно взять. При чем схема этого отладчика есть в даташите, а прошивку как то сумели выдрать. Т.е. если есть желание, то можно и самому собрать. Если отладка не нужна, то можно собрать программатор совсем "на коленке" (под LPT порт), схема не сложнее чем у ByteBlaster.
Так что Silabs, как уже говорил tych, жжёт! :)))
Правда вот не смотря на дешевые отладочные средства, цены на сами кристаллы всё таки побольше, чем на аналогичные AVR.
И еще один момент. Поковырявшись по силабовским даташитам, я понял, что любой внутренний модуль можно отмапить на любой пин. Я правильно понял? Если да, то это очень круто и удобно.
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
Brutaller писал(а):любой внутренний модуль можно отмапить на любой пин. Я правильно понял? Если да, то это очень круто и удобно.
Да. прально.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
нет, не правильно. "матрица коммутации" самостоятельно "мапит" выводы в зивисимости от того, какие периферийные устройства задействованы. при этом почти любое устройство может оказаться почти на любых выводах, однако не на конкретно указанных пользователем, а в соответствии с логикой матрицы коммутации.Brutaller писал(а):Поковырявшись по силабовским даташитам, я понял, что любой внутренний модуль можно отмапить на любой пин. Я правильно понял?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- tych
- Э...
- Сообщения: 2792
- Зарегистрирован: Ср апр 04, 2007 08:39:14
- Откуда: Москва
- Контактная информация:
ARV писал(а):однако не на конкретно указанных пользователем, а в соответствии с логикой матрицы коммутации.
Дак логику коммутации пользователь знает надеюсь из даташит ...
Иначе он ламер а не юзер.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
- Brutaller
- Встал на лапы
- Сообщения: 87
- Зарегистрирован: Пн ноя 05, 2007 12:44:43
- Откуда: C:\Russia\SPb
- Контактная информация:
ARV писал(а):нет, не правильно. "матрица коммутации" самостоятельно "мапит" выводы в зивисимости от того, какие периферийные устройства задействованы. при этом почти любое устройство может оказаться почти на любых выводах, однако не на конкретно указанных пользователем, а в соответствии с логикой матрицы коммутации.
Тогда это наоборот не фига не удобно :-/
А я то уж по началу обрадовался, что на любой пин можно настроить. Эх...
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
я просто хотел подчеркнуть, что хотя сигналы, например, SPI погут "гулять" по ножкам корпуса МК, однако не произвольно, а строго в определенном порядке: если назначенные по умолчанию выводы свободны - они и будут сигналами SPI, а если более приоритетное устройство (АЦП например) заняло один из этих выводов - сигналы SPI будут сдвинуты на необходимое число линий - примерно так...tych писал(а):ARV писал(а):однако не на конкретно указанных пользователем, а в соответствии с логикой матрицы коммутации.
Дак логику коммутации пользователь знает надеюсь из даташит ...
Иначе он ламер а не юзер.
Brutaller, удобно или нет - это уж как посмотреть. Иногда очень даже удобно, иногда - ничуть не хуже, чем у статически прописанных выводов, как у AVR, например. Чтобы это было именно неудобно - даже и не представляю, почему вдруг...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!