ADAM-5510_рус (Раздаточный материал к курсовому проекту), страница 13
Описание файла
Файл "ADAM-5510_рус" внутри архива находится в следующих папках: Раздаточный материал к курсовому проекту, ADAM5510. PDF-файл из архива "Раздаточный материал к курсовому проекту", который расположен в категории "". Всё это находится в предмете "системы автоматического управления (сау) (мт-11)" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "системы автоматического управления (сау) (мт-11)" в общих файлах.
Просмотр PDF-файла онлайн
Текст 13 страницы из PDF
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruWDT_clear, WDT_disable,WDT_enableСинтаксис:void WDT_clear(void)void WDT_disable(void)void WDT_enable(void)Описание:Сброс сторожевого таймераАктивизация сторожевого таймераОтключение сторожевого таймераЕсли работа сторожевого таймера разрешена, пользовательская программадолжна осуществлять сброс сторожевого таймера не реже, чем через каждые1,5 с. По умолчанию работа сторожевого таймера запрещена.ПАРАМЕТРНетОПИСАНИЕВозвращаемое значение:НетПример:void main(void){int I;WDT_enable();For (I=0; I<10; I++){ADAMdelay(1000);WDT_clear();}WDT_disable();}Примечание:Нет90Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruwrite_backup_ramСинтаксис:void write_backup_ram(unsigned int index, BYTE data)Описание:Запись байта данных в область статического ОЗУ с резервным питанием отбатареиПАРАМЕТРindexОПИСАНИЕАдресный индекс байта данных вобласти статического ОЗУ с резервнымпитанием, имеющей размер 60 кбайт.Значение адресного индекса можетпринимать значение от 0 до 61439dataЗначение байта данных для записи вобласть статического ОЗУ с резервнымпитаниемВозвращаемое значение:НетПример:void main(){unsigned char data = 0х55;/* Запись байта 55h в область ОЗУ с резервнымзначением адресного индекса равного 10 */write_backup_ram(10, data);}Примечание:Нет91питаниемсоCopyright 19992000, ProSoft, Ltd.
All Rights Reserved.7.5.2. Библиотека(LIO*.LIB)функцийТел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruобслуживаниямедленныхмодулейвводаCвыводаAiUpdateСинтаксис:int AiUpdate(int Board, int *channel)Описание:Проверка готовности результатов измерения входного сигнала в такихмодулях аналогового ввода, как ADAM5017, ADAM5018 и ADAM5013ПАРАМЕТРint BoardОПИСАНИЕНомер слота ADAM5510 в диапазоне от0 до 3int *channelНомер канала модуля, для которогозапрашивается готовность данныхВозвращаемое значение:int status0 – данные готовы1 – данные не готовы2 – аппаратный отказ модуляПример:void main(){/* Проверка готовности данных измерения медленного модуляаналогового ввода, установленного в слот 0 */if (AiUpdate(0, &channel) == 0){/* Прием данных из модуля */}}Примечание:Нет92Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet5013Синтаксис:void Get5013(int Board, int Channel, void *pValue)Описание:Чтение данных из модуля ADAM5013ПАРАМЕТРBoardОПИСАНИЕНомер слота (0 3)ChannelНомер канала модуля ADAM5013 (0 2)*pValueУказатель, по которому будет записаноизмеренное значениеПримечание.
Параметр *pValue для модуля ADAM5013 должен приводитьсяк типу, соответствующему входному диапазону, значение которогоустанавливается при конфигурировании модуляВозвращаемое значение:Значение возвращается по передаваемому указателюПример://ПримериспользованияфункцийInit5013,Get5013иGetRange5013main (){int *value, *range, i, j;/* Один модуль типа ADAM95013 установлен в слот 0микроконтроллера ADAM95510 */printf ("Инициализация ADAM95013…\n");Init5013(0);printf ("Чтение данных из модуля ADAM95013…\n");for (j=0; j<3; j++){for (i=0; i<4; i++){/*Чтениеданныхизмеренияизначениявходногодиапазона для каналов с 0 по 2 модуля ADAM95013, установленногов слот 0 микроконтроллера ADAM95510 */Get5013 (0, j, value);if (i==3){GetRange5013 (0, j, range);/*Значенияпараметра"range"приведенывприложении С */printf("ADAM95013#%d=%d\n", j, *value);printf("значение входного диапазона равно 0x%x",*range);}}}}Примечание:Нет93Copyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet501718Синтаксис:void Get501718(int Board, int Channel, void *pValue)Описание:Чтение данных из модуля вводавыводаПАРАМЕТРBoardОПИСАНИЕНомер слота (03)ChannelНомер канала 06 для модуля ADAM5018Номер канала 07 для модуля ADAM5017*pValueУказатель, по которому будет записаноизмеренное значениеПримечание.
Параметр *pValue для модулей ADAM5017 и ADAM5018должен приводиться к типу, соответствующему входному диапазону,значение которого устанавливается при конфигурировании модулейВозвращаемое значение:Значение возвращается по передаваемому указателюПример:// Пример использования функций Init501718, Get501718иGetRange501718main (){int *value, *range, i, j;/* Один модуль типа ADAM95018 (ADAM95017) установлен в слот 3микроконтроллера ADAM95510 */printf ("Инициализация ADAM95018 (или ADAM95017)…\n");Init501718(3);printf ("Чтение данных из модуля ADAM95018 (или ADAM95017)…\…\n");for (j=0; j<7; j++)for (i=0; i<4; i++){/* Чтение данных измерения и значения входного диапазона дляканалов с 0 по 6 модуля ADAM95018, установленного в слот 3микроконтроллера ADAM95510 */Get501718 (3, j, value);if (i==3)94Copyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ru{GetRange5013 (0, j, range);/* Значения параметра " range" приведеныв приложении С */printf("ADAM95018(или5017)#%d=%d\n", j, *value);printf("значениевходногоравно 0x%x", *range);}}}}Примечание:Нет95ADAM9диапазонаCopyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGetRange5013Синтаксис:void GetRange5013(int Board, int Channel, void *pRange)Описание:Чтение значения входного диапазона модуля ADAM5013ПАРАМЕТРBoardОПИСАНИЕНомер слота (03)ChannelНомер канала модуля ADAM5013 (0 2)*pRangeУказатель на переменную, по которомубудет записано значение кода входногодиапазона (см. приложение С)Возвращаемое значение:Значение возвращается по передаваемому указателюПримечание:Нет96Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGetRange501718Синтаксис:void GetRange501718(int Board, int Channel, void *pRange)Описание:Чтение значения входного диапазона модуля ADAM5018 или ADAM5017ПАРАМЕТРBoardОПИСАНИЕНомер слота (03)ChannelНомер канала 06 для модуля ADAM5018Номер канала 07 для модуля ADAM5017*pRangeУказатель на переменную, по которомубудет записано значение кода входногодиапазона (см.
приложение С)Возвращаемое значение:Значение возвращается по передаваемому указателюПримечание:Нет97Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruInit5013Синтаксис:void Init5013(int Slot)Описание:Инициализация модуля ADAM5013.
Эта операция обязательно должнапредшествовать любым другим командам обращения к модулюПАРАМЕТРSlotОПИСАНИЕНомер слота в диапазоне от 0 до 3Возвращаемое значение:НетПример:void main(void){int I;/* Инициализация модулейслотах 094 */for (I=0; I<4; I++)Init5013(I);}Примечание:Нет98ADAM95013,установленныхвCopyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruInit501718Синтаксис:void Init501718(int Slot)Описание:Инициализация модуля ADAM5017 или ADAM5018.
Эта операцияобязательно должна предшествовать любым другим командам обращения кмодулям.ПАРАМЕТРSlotОПИСАНИЕНомер слота в диапазоне от 0 до 3Возвращаемое значение:НетПример:void main(void){int I;/* Инициализация модулей аналогового ввода, установленныхв слотах 094 */for (I=0; I<4; I++)Init501718 (I);}Примечание:Нет99Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ru7.5.3. Библиотека функций обслуживания быстродействующих модулей вводаCвывода (HIO*.LIB)Get5017HСинтаксис:void Get5017H(int Board, int Channel, void *pValue)Описание:Чтение данных из модуля ADAM5017HПАРАМЕТРBoardОПИСАНИЕНомер слота (03)ChannelНомер канала модуля ADAM5017H (0 2)*pValueУказатель, по которому будет записаноизмеренное значениеПримечание.
Параметр *pValue для модуля ADAM5017H должен приводитьсяк типу, соответствующему входному диапазону, значение которогоустанавливается при конфигурировании модулейВозвращаемое значение:Значение возвращается по передаваемому указателюПример:main (){int *Value, *range;int Format, Range;/* Один модуль типа ADAM95017H установлен вмикроконтроллера ADAM95510 */printf ("Инициализация ADAM95017H …\n");Init5017H(1);printf ("Чтение данных из модуля ADAM95017H…\n");слот1for (j=0; j<8; j++){for (i=0; i<4; i++){/* Чтение данных измерения и значения входного диапазонадля каналов с 0 по 7 модуля ADAM95017H, установленного в слот 1микроконтроллера ADAM95510 */100Copyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet5017H (1, j, value);if (i==3){GetRange5017H (1, j, range);/* Значения параметра " range" приведеныв приложении С */Range = range & 0xFF;Format = (range & 0xFF00)>>8;printf("ADAM95017H#%d=%d\n", j, *value);printf("входной диапазон 0x%x и формат0x%x ", Range, Format);}}}}Примечание:Нет101Copyright 19992000, ProSoft, Ltd.