Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Инструментарий

Инструментарий Тестеры, паяльники, осциллографы, программаторы, IDE.

Ответ
 
Опции темы Опции просмотра
Старый 30.01.2017, 12:57   #1
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Keil uvision как объявить неинициализированную переменную

В HI-TECH - persistent, в EWARM - __no_init, а в Keil как? Чего то не нахожу?
За ранее спасибо!
Pasha_Bi вне форума   Ответить с цитированием
Старый 30.01.2017, 14:19   #2
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Адрес: Russia, Orel
Возраст: 40
Сообщений: 4,750
Вес репутации: 4545/133
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pasha_Bi Посмотреть сообщение
В HI-TECH - persistent, в EWARM - __no_init, а в Keil как? Чего то не нахожу?
За ранее спасибо!
Это не оно? И какой смысл в таком объявлении?
Цитата:
ARM ® Compiler toolchain Version 5.02 Using the Compiler

6.85 How to prevent uninitialized data from being initialized to zero
The ANSI C specification states that static data that is not explicitly initialized, is to be
initialized to zero. Therefore, by default, the compiler puts both zero-initialized and
uninitialized data into the same ZI data section, which is populated with zeroes at runtime by
the C library initialization code.

You can prevent uninitialized data from being initialized to zero by placing that data in a
different section. This can be achieved using #pragma arm section , or with the GNU compiler
extension __attribute__((section("name")))

Example 6-9 Retaining uninitialized data using #pragma arm section

#pragma arm section zidata = “non_initialized”
int i, j; // uninitialized data in non_initialized section (without the pragma,
would be in .bss section by default)

#pragma arm section zidata // back to default (.bss section)
int k = 0, l = 0; // zero-initialized data in .bss section
The non_initialized section is then placed into its own UNINIT execution region:

LOAD_1 0x0
{
EXEC_1 +0
{
* (+RO)
* (+RW)
* (+ZI) ; ZI data gets initialized to zero
}
EXEC_2 +0 UNINIT
{
* (non_init) ; ZI data does not get initialized to zero
}
}
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 30.01.2017, 14:24   #3
Рак
Senior Member
 
Регистрация: 02.04.2008
Адрес: Кременчуг
Возраст: 34
Сообщений: 1,400
Вес репутации: 2524/83
Рак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond reputeРак has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Это не оно? И какой смысл в таком объявлении?
Что бы сохранить значение переменной при перезагрузке от watchdoga, например.
Рак вне форума   Ответить с цитированием
Старый 30.01.2017, 14:42   #4
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Адрес: Russia, Orel
Возраст: 40
Сообщений: 4,750
Вес репутации: 4545/133
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Рак Посмотреть сообщение
Чтобы сохранить значение переменной при перезагрузке от watchdoga, например.
Спасибо, я не знал! Это получается таким способом можно хоть половину оперативки (сколько выделишь) сохранить при перезагрузке от сторожевого таймера, т.е. когда питание не сбрасывалось. Пиши вместе, всегда пишешь раздельно.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 30.01.2017, 14:48   #5
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Я эту конструкцию попробовал. Ругается на “non_initialized” - неизвестная область. Ее как то в линкере надо определить сначала. Без “non_initialized” компилируется, но переменная сбрасывается в 0 при старте программы. Я надеялся что есть какой нибудь простой инструмент, чтоб в линкер не лезть.
Pasha_Bi вне форума   Ответить с цитированием
Старый 30.01.2017, 15:04   #6
Daniil
Senior Member
 
Регистрация: 22.09.2008
Адрес: Санкт-Петербург
Сообщений: 133
Вес репутации: 501/48
Daniil is a glorious beacon of lightDaniil is a glorious beacon of lightDaniil is a glorious beacon of lightDaniil is a glorious beacon of lightDaniil is a glorious beacon of lightDaniil is a glorious beacon of light
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

http://www.keil.com/support/man/docs/ca/ca_noinit.htm

Код:
#pragma NOINIT 
char states[100];     /* Uninitialized Variable */ 
#pragma INIT 
char array[100];      /* Initialized Variable */
Daniil вне форума   Ответить с цитированием
Старый 30.01.2017, 15:07   #7
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 41
Сообщений: 3,246
Вес репутации: 3684/116
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pasha_Bi Посмотреть сообщение
В HI-TECH - persistent, в EWARM - __no_init, а в Keil как? Чего то не нахожу?
За ранее спасибо!
вообще-то persistent это сишная фича, и она должна работать в Си компиляторе изначально.
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 30.01.2017, 15:09   #8
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 41
Сообщений: 3,246
Вес репутации: 3684/116
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Спасибо, я не знал! Это получается таким способом можно хоть половину оперативки (сколько выделишь) сохранить при перезагрузке от сторожевого таймера, т.е. когда питание не сбрасывалось. Пиши вместе, всегда пишешь раздельно.
Не совсем, эта компилятор не будет делать код для инициализации этой памяти вообще. Т.е. не важно почему программа начала выполняться с начала, собака сработала, или по питанию сброс или по ножке ресет.
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 30.01.2017, 15:12   #9
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Адрес: Russia, Orel
Возраст: 40
Сообщений: 4,750
Вес репутации: 4545/133
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от IceS Посмотреть сообщение
Не совсем, эта компилятор не будет делать код для инициализации этой памяти вообще. Т.е. не важно почему программа начала выполняться с начала, собака сработала, или по питанию сброс или по ножке ресет.
Когда с самого начала - понятно, а мне интересно было зачем вообще. Такой способ может добавить косяков: например произошла ошибка и счетчик в ОЗУ улетел за диапазон, а после перезагрузки улетевшее значение сохранится и снова улетаем. Вот я и спросил, а зачем? Какой смысл?

Цитата:
Сообщение от Daniil Посмотреть сообщение
http://www.keil.com/support/man/docs/ca/ca_noinit.htm

Код:
#pragma NOINIT 
char states[100];     /* Uninitialized Variable */ 
#pragma INIT 
char array[100];      /* Initialized Variable */
main.c
#pragma NOINIT
char states[100]; /* Uninitialized Variable */
#pragma INIT
char array[100]; /* Initialized Variable */

compiling main.c...
main.c(14): warning: #161-D: unrecognized #pragma
main.c(17): warning: #161-D: unrecognized #pragma
linking...

PS: C Compiler ARMCC v5.03
PPS: Эти директивы работали в каком-то очень старом компиляторе CARM Compiler? Сейчас он называется ARMCC.
Миниатюры
Discontinued.PNG  
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 30.01.2017 в 15:28.
Pridnya вне форума   Ответить с цитированием
Старый 30.01.2017, 15:30   #10
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 41
Сообщений: 3,246
Вес репутации: 3684/116
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Когда с самого начала - понятно, а мне интересно было зачем вообще. Такой способ может добавить косяков: например произошла ошибка и счетчик в ОЗУ улетел за диапазон, а после перезагрузки улетевшее значение сохранится и снова улетаем. Вот я и спросил, а зачем? Какой смысл?
Ну начнем с того что компилятор знает о существовании системных портов, управлении направлением ножек контроллера и т.п. Но он не должен их трогать при старте программы. Об их состоянии при рестарте позаботились разработчики процессора. Так вот эти все регитры обозваны как persistent (в иаре любят слово __no_init, но persistent там тоже должен работать).
Так же есть всякие часы, счетчики, которые тоже не должны изменяться при запуске программы. Ну и бывает что прога стартуя должны иметь доступ к некоторым ячейкам самой себя, чтобы определить какие-то состояния (вход/выход из BOOT'а, определить причину сброса и т.п.).
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 30.01.2017, 15:40   #11
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

классификатор persistent "не проходит" ни EWARM ни в Keil v5.17.
Pasha_Bi вне форума   Ответить с цитированием
Старый 30.01.2017, 15:42   #12
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

#pragma NOINIT выдала предупреждение и переменная все равно инициализируется 0
Pasha_Bi вне форума   Ответить с цитированием
Старый 30.01.2017, 15:45   #13
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Адрес: Russia, Orel
Возраст: 40
Сообщений: 4,750
Вес репутации: 4545/133
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от IceS Посмотреть сообщение
Ну начнем с того что компилятор знает о существовании системных портов, управлении направлением ножек контроллера и т.п. Но он не должен их трогать при старте программы. Об их состоянии при рестарте позаботились разработчики процессора. Так вот эти все регитры обозваны как persistent (в иаре любят слово __no_init, но persistent там тоже должен работать).
Так же есть всякие часы, счетчики, которые тоже не должны изменяться при запуске программы. Ну и бывает что прога стартуя должны иметь доступ к некоторым ячейкам самой себя, чтобы определить какие-то состояния (вход/выход из BOOT'а, определить причину сброса и т.п.).
Про выход из BOOT-а не знаю, нужды не было определять (прыгнуло в приложение и все), а вот причину сброса в STM32F407 определить можно по содержимому специального регистра:
Код:
    if    (RCC_GetFlagStatus(RCC_FLAG_IWDGRST))      {i = 0x7D;} // 125 = IWDG.        
    else if  (RCC_GetFlagStatus(RCC_FLAG_SFTRST))    {i = 0x7C;} // 124 = SFT.        
    else if  (RCC_GetFlagStatus(RCC_FLAG_PORRST))    {i = 0x7B;} // 123 = PWR.
    else if  (RCC_GetFlagStatus(RCC_FLAG_PINRST))    {i = 0x7A;} // 122 = PIN.
Цитата:
Сообщение от Pasha_Bi Посмотреть сообщение
классификатор persistent "не проходит" ни EWARM ни в Keil v5.17.
Цитата:
Сообщение от Pasha_Bi Посмотреть сообщение
#pragma NOINIT выдала предупреждение и переменная все равно инициализируется 0
Это Daniil привел ссылку и цитату от давно издохшего компилятора. См сообщение.
Причем ответил кратко, без комментариев. Хотел "за умного" сказать.
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 30.01.2017 в 15:54.
Pridnya вне форума   Ответить с цитированием
Старый 30.01.2017, 16:13   #14
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Если в плане "зачем это нужно?": например, на период отладки хочу считать количество сбросов по WDT. Или другой пример: идет подсчет каких то важных событий и произошел провал Vdd. Если счетчик достоверен (совпала CRC) продолжаем считать от этого значения. Если нет - есть копия, проверяем её (ведь сброс может произойти и при обновлении данных счетчика).
Pasha_Bi вне форума   Ответить с цитированием
Старый 30.01.2017, 16:19   #15
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 41
Сообщений: 3,246
Вес репутации: 3684/116
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pasha_Bi Посмотреть сообщение
Если в плане "зачем это нужно?": например, на период отладки хочу считать количество сбросов по WDT. Или другой пример: идет подсчет каких то важных событий и произошел провал Vdd. Если счетчик достоверен (совпала CRC) продолжаем считать от этого значения. Если нет - есть копия, проверяем её (ведь сброс может произойти и при обновлении данных счетчика).
То что это нужно - спорит только Дима, но он не понимает - и это его проблема, пусть с ней сам и разбирается (ему привели несколько задач где это необходимо, если он ими не пользовался, так ему и надо ). А вот вопрос какой квалификатор применить - так и остался открытым.
Я всегда считал что persistent это стандартный, но в кейле и иаре не работает :-(.
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 30.01.2017, 16:20   #16
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Адрес: Russia, Orel
Возраст: 40
Сообщений: 4,750
Вес репутации: 4545/133
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от IceS Посмотреть сообщение
То что это нужно - спорит только Дима, но он не понимает - и это его проблема, пусть с ней сам и разбирается (ему привели несколько задач где это необходимо, если он ими не пользовался, так ему и надо ). А вот вопрос какой квалификатор применить - так и остался открытым.
Я всегда считал что persistent это стандартный, но в кейле и иаре не работает :-(.
Я ж не спорю, я спрашиваю и поглощаю знания. В институтах про это не упомянут. И если кто-то что-то предлагает, то по возможности проверяю и, если результат успешный складываю в ящик.
Цитата:
Сообщение от Pasha_Bi Посмотреть сообщение
Если в плане "зачем это нужно?": например, на период отладки хочу считать количество сбросов по WDT. Или другой пример: идет подсчет каких то важных событий и произошел провал Vdd. Если счетчик достоверен (совпала CRC) продолжаем считать от этого значения. Если нет - есть копия, проверяем её (ведь сброс может произойти и при обновлении данных счетчика).
Понятно. Я в SPI-флэшке веду журнал "дата/время/причина сброса".
А вообще второй алгоритм может быть полезен. В мультиварке и стиральной машине реализован: пропал свет на несколько секунд, а мультиварка и стиральная машина продолжила процесс.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 30.01.2017, 16:22   #17
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 41
Сообщений: 3,246
Вес репутации: 3684/116
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Про выход из BOOT-а не знаю, нужды не было определять (прыгнуло в приложение и все), а вот причину сброса в STM32F407 определить можно по содержимому специального регистра:
А вот этот регистр нужно объявить, чтобы ты получил к нему доступ, и тут окажется что без persistent он будет "обнуляться компилятором" при старте программы :-).
__________________
- Готово, мастер !!!
- Что готово ???
- Сломал ...
IceS вне форума   Ответить с цитированием
Старый 30.01.2017, 16:26   #18
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

А как на счет моего вопроса? Он пока не решен. В IAR __no_init. А в Keil?
Pasha_Bi вне форума   Ответить с цитированием
Старый 30.01.2017, 16:40   #19
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 47
Сообщений: 3,794
Вес репутации: 6357/147
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

http://www.keil.com/support/docs/3480.htm
dosikus вне форума   Ответить с цитированием
Старый 31.01.2017, 09:12   #20
Pasha_Bi
Senior Member
 
Регистрация: 24.07.2009
Адрес: г. Иваново
Возраст: 45
Сообщений: 294
Вес репутации: 640/47
Pasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to allPasha_Bi is a name known to all
По умолчанию Re: Keil uvision как объявить неинициализированную переменную

Спасибо, уважаемый dosicus. Все получилось. От себя добавлю (может кому пригодится): в опциях линкера галочка Use Memory Layout from Target Dialog должна быть снята, а в папке с проектом нужно создать оригинальный файл с раширением sct и указать путь к нему.
Pasha_Bi вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Имитатор DS18B20 Filya44 Вопросы начинающих 14 12.03.2012 17:39
C18. Как объявить переменную с указанием адреса? FlashBack Продукция MICROCHIP 8 03.05.2011 15:01
Как перевести переменную int в строку Mizar Вопросы начинающих 14 13.10.2010 18:25
как объявить битовое поле в mcc18? ШуркоL Продукция MICROCHIP 6 10.03.2009 19:52
как в си хайтековском объявить массив и сказать чтобы он лежал на границе килобайта? Sergey Продукция MICROCHIP 1 22.05.2007 17:22


Часовой пояс GMT +3, время: 17:50.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot