тебе уже 300 раз не то что намекали - прямо и без обиняков говорили. а ты что? наводящие вопросы игнорируешь, от прямых - уклоняешься, советами пренебрегаешь, обсуждать отказываешься...
Один раз я поставил не правильные FUSE биты и у меня AVR-ка перестала программироваться. После "плясок с бубном" я выяснил, что частота МК была 100кГц. Попробовал ввести задержки в программе программатора, довольно большие и прошил заново МК.
У тебя волшебный бубен. Я тож такой хочу. А я вот не знаю в СVAVR можно задержки делать? Самое интересное что 1мгц на XT1 не выручает. Накосячил млин я. Нужно было сделать таймер обратного отсчета. Косяк в том что, сделал 32768 гц такт всего мк. Пошарив малость по литературке, оказалось, что можно было сделать проще и лучше. Зашить фьюзы для внутреннего RC-генератора на 1 Мгц(кому нить для справки это SKSEL1 SKSEL2 SKSEL3 SUT0), а в регистр ASSR вкатать 0x08, а TCCR2=0x05. Припаять кварц к ногам TOSC1 TOSC2. И все будет офигенно.
Мне в этом отношении нравица ЮСБ программатор, тот о котором тема прилеплена в Микроконтроллерах я с его помощью ваще без кварца шью, там такт идет с ножки я его на XTAL1 завел и все пучком.
int alfa(void) { /* declare and initialize the static variable */ static int n=1; return n++; } void main(void) { int i; /* the function will return the value 1 */ i=alfa(); /* the function will return the value 2 */ i=alfa(); }
Потому что если бы было написано ++n то да вначале бы n было присвоено значение на единицу большее чем оно есть, а уже потом это значение отправлено как результирующая функции, в примере написано n++, т. е. вначале значение n = 1 возвращено функции, а уже потом к нему добавлена единица. Не вру, но могу ошибаца.
Спасибо за ответ в столь поздний час. Новичок в СИ. Это настолько последовательно нужно читать код в СИ? То есть у записи return больший приоритет чем у ++? Ведь ++n эквивалентно n++?