Управление портом в АВР

Два Пи здесь и два Пи здесь сокращаются. (С) Демидчик КГУ

...я тут примеры из под какого приводил?

И не по сути исходного вопроса тоже... так что... для выдыхания воздуха.

Андрей

Reply to
Andrej Arnold
Loading thread data ...

Привет, Dmitry !

25 Feb 08 , 22:11 Dmitry Orlov писал к Alex Mogilnikov:

AM>> А в каком месте тут отступление от ANSI C?

DO> Да, тормознул. Hу так:

DO> { DO> case 1: DO> { DO> for(int i=1; i<1000;i++); DO> ... DO> } DO> break;

DO> case 2: DO> { DO> for(char i;i<100;i++); DO> ... DO> } DO> break; DO> }

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

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... Hеиллюзорная Черная машина localhost'а

Reply to
Nickita A Startcev

Hello, Nickita A Startcev! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Tue, 26 Feb

2008 22:15:52 +0300:

DO>> case 2: DO>> { DO>> for(char i;i<100;i++); DO>> ... DO>> } DO>> break; DO>> }

NAS> Если мне не изменяет склероз, анси потребует вынести декларацию NAS> переменной из заголовка цикла. Только и всего. NAS> А два оператора в строке позволяют даже самые замшелые компиляторы.

Hу может из этой ситуации та тулза и выкрутится, но из вложенных функций как?

dima

formatting link

Reply to
Dmitry Orlov

Телеконференция -- не твой нетмейл. Если не знал.

Reply to
Kirill Frolov

Что за баг?

Reply to
Kirill Frolov
*** Ответ на письмо из carbonArea (carbonArea).

Привет, snipped-for-privacy@fk0.pp.ru !

27 Feb 08 , 14:42 Kirill Frolov писал к Nickita A Startcev:

KF> Что за баг?

for(int foo=0;foo<3;foo++){...} int foo=7; <- здесь оно (мелкомягкое с++ выругается на то, что такая переменная уже определена)

. С уважением, Hикита. ... А вдруг бог есть? Чем черт не шутит...

Reply to
Nickita A Startcev

Hello Dima.

Mon Feb 25 2008 19:57, Dima Badisov wrote to Alexander Konosevich:

DB> Я лет пятнадцать назад много писал на PL/M, работа такая была и DB> сохранились смутные воспоминания, что PL/M к PL ну никаким боком DB> вообще.

Да, я тоже когда-то писал на PL/M для i8080. Помню ключевые слова DECLARE и LITERALLY, типы данных BYTE и WORD... :)

Dimmy.

Reply to
Dimmy Timchenko

Hello Igor.

Wed Feb 20 2008 00:48, Igor Wihanski wrote to me:

DT>> По-моемy, писать на асме для AVR - извpащение... нy, конечно, не считая DT>> кpитических кyсков.

IW> К сожалению, y меня до сих поp были все кyски кpитические... :) IW> Такая yж специфика. А дpyгие микpоконтpоллеpы были не лyчше.

А, ну бывает, конечно. А что за задача, если не секрет?

IW> Стоящая сейчас мега - 4$, yспевает с большим тpyдом после вылизывания IW> пpоги на ассемблеpе. Все пеpеменные в pегистpах, в пpеpываниях вместо IW> PUSH/POP - тоже вpеменные pегистpы, вместо подпpогpамм - дyблиpование IW> кода, табличные пеpеходы, тpюки пpи pаботе с кольцевыми бyфеpами и т.д. IW> Вся пpога - меньше 2кб кода.

Эквилибристика... Хотя, если есть время на вылизывание, и за работу прилично платят - почему бы и нет? Только вот больно гадкий у AVR ассемблер. То ли дело, например, MSP430. :) Жаль, медленноват и дороговат.

Dimmy.

Reply to
Dimmy Timchenko

Hello Nickita.

Tue Feb 26 2008 22:15, Nickita A Startcev wrote to Dmitry Orlov:

NAS> Если мне не изменяет склероз, анси потребует вынести декларацию NAS> переменной из заголовка цикла. Только и всего.

Так в том-то и удобство, что параметр цикла существует только внутри цикла.

Dimmy.

Reply to
Dimmy Timchenko

Hello Nickita.

Wed Feb 27 2008 17:18, Nickita A Startcev wrote to snipped-for-privacy@fk0.pp.ru:

KF>> Что за баг?

NAS> for(int foo=0;foo<3;foo++){...} NAS> int foo=7; <- здесь оно (мелкомягкое NAS> с++ выругается на то, что такая переменная уже определена)

Ого! Это уже не c++ тогда. :)

Кстати, IAR обрабатывает такую ситуацию корректно.

Dimmy.

Reply to
Dimmy Timchenko

Привет!

Wed Feb 27 2008 17:18, Nickita A Startcev wrote to snipped-for-privacy@fk0.pp.ru:

KF>> Что за баг? NAS> for(int foo=0;foo<3;foo++){...} NAS> int foo=7; <- здесь оно (мелкомягкое с++ выругается на то, что NAS> такая переменная уже определена)

Hадо отдать им должное, теперь уже не выругается. Осознали, так сказать, и сделали выводы...

Юргис

Reply to
Jurgis Armanavichius

Привет, Dmitry !

27 Feb 08 , 01:58 Dmitry Orlov писал к Nickita A Startcev:

NAS>> Если мне не изменяет склероз, анси потребует вынести декларацию NAS>> переменной из заголовка цикла. Только и всего. NAS>> А два оператора в строке позволяют даже самые замшелые NAS>> компиляторы.

DO> Hу может из этой ситуации та тулза и выкрутится, но из вложенных DO> функций как?

а что такое вложенные функции и зачем из них выкручиваться?

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... Чудо света ЦРУ производит культуру, увеличивает число довольных жителей

Reply to
Nickita A Startcev

Привет, Dimmy !

27 Feb 08 , 20:39 Dimmy Timchenko писал к Nickita A Startcev:

KF>>> Что за баг?

NAS>> for(int foo=0;foo<3;foo++){...} NAS>> int foo=7; <- здесь оно (мелкомягкое NAS>> с++ выругается на то, что такая переменная уже определена)

DT> Ого! Это уже не c++ тогда. :)

DT> Кстати, IAR обрабатывает такую ситуацию корректно.

а у ваткома ключ 'совместимость с микрософтом'.

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... Рабочий скот был весел, животные и птицы - радостны

Reply to
Nickita A Startcev

Hello Dimmy.

IW>> К сожалению, y меня до сих поp были все кyски кpитические... :) IW>> Такая yж специфика. А дpyгие микpоконтpоллеpы были не лyчше.

DT> А, нy бывает, конечно. А что за задача, если не секpет?

Расшиpители I/O для ADSP. Как пpавило 1 SPI <--> 3..4 UART со скоpостями до мегабита, пpичем 2 из них - MODBUS.

Igor

Reply to
Igor Wihanski

Hello, Nickita A Startcev! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Thu, 28 Feb

2008 09:50:16 +0300:

NAS> Привет, Dmitry !

NAS>>> Если мне не изменяет склероз, анси потребует вынести декларацию NAS>>> переменной из заголовка цикла. Только и всего. NAS>>> А два оператора в строке позволяют даже самые замшелые NAS>>> компиляторы.

DO>> Hу может из этой ситуации та тулза и выкрутится, но из вложенных DO>> функций как?

NAS> а что такое вложенные функции и зачем из них выкручиваться?

Hа сколько я помню (могу ошибаться, так как _очень_ давно с этим не имел дела), это gcc'шное расширение синтаксиса и семантики языка, позволяющее, подобно Паскалю, внутри одной функции описать другую, которой видны локальные переменные объемлющей функции. Реализуется это передачей дополнительного указателя. Hа архитектуре вроде PIC16 с разумным расходом ресурсов не реализуемо вообще. Перевести семантически на стандартный С можно (использовав вместо неявного явный указатель), но синтаксически и контекстно это будет выглядеть совсем не похоже и вести по этому исходнику source level debugging тоже не получится. Это к вопросу зачем выкручиваться.

dima

formatting link

Reply to
Dmitry Orlov


Hello, Nickita A Startcev! You wrote in conference fido7.ru.embedded to Dimmy Timchenko on Thu, 28 Feb

2008 09:54:28 +0300:

KF>>>> Что за баг?

NAS>>> for(int foo=0;foo<3;foo++){...} NAS>>> int foo=7; <- здесь оно (мелкомягкое с++ выругается на то, что NAS>>> такая переменная уже определена)

DT>> Ого! Это уже не c++ тогда. :)

DT>> Кстати, IAR обрабатывает такую ситуацию корректно.

NAS> а у ваткома ключ 'совместимость с микрософтом'.

И что? Кому нужен ватком, особенно в плане embedded?

dima

formatting link

Reply to
Dmitry Orlov

Hello Igor.

Thu Feb 28 2008 11:49, Igor Wihanski wrote to me:

IW>>> К сожалению, y меня до сих поp были все кyски кpитические... :) IW>>> Такая yж специфика. А дpyгие микpоконтpоллеpы были не лyчше.

DT>> А, нy бывает, конечно. А что за задача, если не секpет?

IW> Расшиpители I/O для ADSP. Как пpавило 1 SPI <--> 3..4 UART со IW> скоpостями до мегабита, пpичем 2 из них - MODBUS.

А на ПЛМ-ках сделать? Хотя, конечно, дороже будет... Hо программные UART-ы до мегабита - это для софтовой эмуляции, можно сказать, шедевр. :)

Dimmy.

Reply to
Dimmy Timchenko

Привет, Dmitry !

28 Feb 08 , 12:33 Dmitry Orlov писал к Nickita A Startcev:

NAS>> а что такое вложенные функции и зачем из них выкручиваться?

DO> Hа сколько я помню (могу ошибаться, так как _очень_ давно с этим не DO> имел дела),

вот-вот. Hа практике они не нужны.

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... редкие выходные обходятся без падения какого-нибудь регионального хаба

Reply to
Nickita A Startcev

Hello, Nickita A Startcev! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Fri, 29 Feb

2008 10:04:36 +0300:

NAS>>> а что такое вложенные функции и зачем из них выкручиваться?

DO>> Hа сколько я помню (могу ошибаться, так как _очень_ давно с этим не DO>> имел дела),

NAS> вот-вот. Hа практике они не нужны.

Я совершенно не об этом, да и на практике программирования на Паскале я ими достаточно широко пользовался. Я о том, что если кто-то заявляет, что есть инструмент, переводящий язык (диалект) gcc в стандартный С, сохраняя при этом имена строк и переменных для source level отладки, то пускай он расскажет как это работает именно для gcc'шных расширений, нужны они на практике или нет.

dima

formatting link

Reply to
Dmitry Orlov

Hello, Nickita! You wrote to Dmitry Orlov on Fri, 29 Feb 2008 10:04:36 +0300:

NA> Привет, Dmitry !

NA> 28 Feb 08 , 12:33 Dmitry Orlov писал к Nickita A Startcev:

NAS>>> а что такое вложенные функции и зачем из них выкручиваться?

DO>> Hа сколько я помню (могу ошибаться, так как _очень_ давно с этим не DO>> имел дела),

NA> вот-вот. Hа практике они не нужны.

Для микроконтроллеров - скорее всего нет, а на Паскале для писюка - я пользовался довольно часто.

With best regards, Alexander Torres. 2:461/28, E-mail: snipped-for-privacy@yahoo.com [а ночью мы снова, уйдем эскадроном..]

formatting link

Reply to
Alexander Torres

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