ADAM-5510_рус (Раздаточный материал к курсовому проекту), страница 11
Описание файла
Файл "ADAM-5510_рус" внутри архива находится в следующих папках: Раздаточный материал к курсовому проекту, ADAM5510. PDF-файл из архива "Раздаточный материал к курсовому проекту", который расположен в категории "". Всё это находится в предмете "системы автоматического управления (сау) (мт-11)" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "системы автоматического управления (сау) (мт-11)" в общих файлах.
Просмотр PDF-файла онлайн
Текст 11 страницы из PDF
64. Успешное завершение загрузки программы61Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ru6.2.4. Загрузка программ в статическое ОЗУ (диск d: микроконтроллера)ADAM5510 имеет в своем ОЗУ свободную область памяти объемом 192 кбайт,предназначенную для использования управляющей программой, а также дляосуществления отладки такой программы перед записью ее во флэшПЗУ.
Для этогопользователь имеет возможность загрузить файлы из управляющего компьютера в областьстатического ОЗУ микроконтроллера, организованную как логический диск d:. Для этогозапустите сервисную программу, выберите в ней терминальный режим и нажмитекомбинацию клавиш <Alt> и <T>. В ответ на это начнется пересылка файла, а экранпримет вид, приведенный на рис. 65.Рис. 65. Пересылка файла в статическое ОЗУВведите название каталога и имя пересылаемого файла и нажмите клавишу <Enter> длявыполнения пересылки. Убедитесь в присутствии файла на диске d: микроконтроллера.6.3.Процедура установки удаленного отладчикаДля облегчения пользователям процедуры отладки программ, написанных на языке BorlandTurbo C, Advantech предлагает программу UPDATE.EXE, входящую в состав диска утилитмикроконтроллера ADAM5510.
Данная программа позволяет сконфигурироватьудаленный отладчик Turbo С для использования с ADAM5510. Ниже приводитсяпоследовательность действий пользователя при организации уделенной отладки.1. Перед началом выполнения действий по процедуре установки соедините между собойкабелем порт СОМ1 управляющего компьютера и порт СОМ1 ADAM5510 в соответствиисо схемой, приведенной на рис. 66.62Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruРис. 66.
Схема подключения для удаленной отладкиПримечание. Для выполнения соединения необходимо использовать нульмодемный кабель, в котором, в отличие от прямого (модемного) кабеля,контакт 2 одного соединителя соединен с контактом 3 другого и наоборот.2.
Скопируйте с диска утилит файл UPDATE.EXE в каталог на накопителе управляющегокомпьютра, в котором находится исполняемый файл отладчика Turbo Debugger.Примечания:1) ADAM5510 поддерживает компилятор Turbo C версии 3.0.2) Пользователь заблаговременно должен приобрести и должным образом установитьна управляющем компьютере отладчик Turbo Debugger.3.
Запустите программу UPDATE.EXE и следуйте инструкциям, появляющимся на экранемонитора. В ответ на запрос введите имя файла TDREMOTE.EXE. После завершениявыполнения этого шага файл TDADAM.EXE будет создан в том же каталоге, гденаходится и отладчик Turbo Debugger.Рис. 67. Создание файла TDADAM.EXE63Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ru4.
Скопируйте файл TDADAM.EXE в каталог DEBUGDL для загрузки в ADAM5510.5. Добавьте в файл AUTOEXEC.BAT, расположенный в каталоге DEBUGDL, следующиестроки:COM_EOI.EXETDADAM.EXE –rp1 –rs4Примечание. Относительно изменяемых параметров отладчика следуетобращаться к документации фирмы Borland на Turbo Debugger.6. Загрузите файлы, находящиеся в директории DEBUGDL, во флэшПЗУ ADAM5510 путемвыбора команды Debug из меню Utility основного окна сервисной программы.7.
Выполните сброс микроконтроллера, после чего он будет готовудаленной отладки.для выполнения8. Осуществите на управляющем компьютере конфигурирование Turbo C для проведенияудаленной отладки. Для этого в окне редактора Turbo C откройте меню Options ивыберите в нем пункт Transfer как это показано на рис. 68.Рис.
68. Конфигурирование редактора Turbo C9. Добавьте новое имя программы, как это показано на рис. 69. Новый список доступныхотладчику программ будет иметь вид, аналогичный приведенному на рис. 610.64Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruРис. 69. Создание нового объекта для передачиРис. 610. Новая группа передачи в окне отладчика10.Теперь для осуществления отладки программ в ADAM5510 с помощью Turbo Debuggerследует выбрать соответствующий пункт из меню, как это показано на рис. 611.65Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruРис. 611. Установление связи с ADAM5510 для удаленной отладки66Copyright 19992000, ProSoft, Ltd. All Rights Reserved.7.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruБИБЛИОТЕКА ФУНКЦИЙ7.1.ВведениеПри создании пользовательских приложений для ADAM5510 возможно использованиеспециальной библиотеки функций.
Для обеспечения наиболее эффективногоиспользования памяти микроконтроллера библиотека функций разделена на четыреболее мелкие библиотеки. Благодаря этому пользователь имеет возможность компоноватьтолько те библиотеки, которые действительно используются в приложении, и только этибиблиотеки будут включены в скомпилированный исполняемый файл.
Чем меньше размеркомпилируемых библиотек, тем более компактным получается файл исполняемойпрограммы.Примечания:1) Библиотеки функций поддерживает только компилятор Borland Turbo C++ 3.0.2) Включайте все необходимые библиотеки функций для ADAM5510 в рабочийфайл проекта.7.2.Классификация библиотекДля ADAM5510 имеется четыре библиотеки функций, разделенных по функциональномуназначению:Категория А. Системные функции – UTILITY*.LIBКатегория B. Коммуникационные функции – COMM*.LIBКатегория C. Функции обслуживания медленных модулей вводавывода – LIO*.LIBКатегория D. Функции обслуживания быстродействующих модулей вводавывода –HIO*.LIB7.3.Библиотеки для различных моделей памятиБиблиотеки функций для ADAM5510 поддерживают четыре модели памяти: SMALL,MEDIUM, COMPACT и LARGE.
Пользователь имеет возможность использовать библиотечныефайлы, предназначенные для использования с определенной моделью памяти. Например,для модели SMALL вы можете компоновать библиотеки UTILITYS.LIB и LIOS.LIB,обеспечивающие выполнение системных функций и функций обслуживания медленныхмодулей вводавывода. С другой стороны, при использовании модели памяти LARGE выможете компоновать библиотеки UTILITYL.LIB и LIOL.LIB.7.4.Алфавитный указатель функцийКатегория А. Системные функции (UTILITY*.LIB)ADAMdelay()EraseSector()Get_BoardID()Get_NodeID()67Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet_NVRAM_Size()GetRTCtime()Get_SysMem()LED_init()LED_OFF()LED_ON()ProgramByte()ProgramSector()read_backup_ram()read_mem()Release_All()Set_NVRAM_Size()SetRTCtime()Set_SysMem()Timer_Init()Timer_Reset()Timer_Set()tmArriveCnt(Примечание.
tmArriveCn является массивом значений целого типа.)WDT_clear()WDT_disable()WDT_enable()write_backup_ram()Категория B. Коммуникационные функции (COMM*.LIB)checksum()com_485_deinstall()com_485_flush_rx()com_485_flush_tx()com_485_install()com_485_rx()com_485_rx_empty()com_485_set_format()com_485_set_speed()com_485_tx()com_485_tx_empty()com_485_tx_string()com_carrier()68Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.rucom_clear_break(), com_set_break()com_clear_local_loopback(), com_set_local_loopback()com_deinstall()com_disable_fifo(), com_enable_fifo()com_flush_rx(), com_flush_tx()com_pgm_deinstall()com_pgm_flush_rx()com_pgm_flush_tx()com_pgm_install()com_pgm_rx()com_pgm_rx_empty()com_pgm_set_format()com_pgm_set_speed()com_pgm_tx()com_pgm_tx_empty()com_pgm_tx_string()com_set_format()com_get_line_status(), com_set_line_params()com_get_modem_status()com_install()com_lower_dtr(), com_raise_dtr()com_lower_rts(), com_raise_rts()com_read_scratch_register(), com_write_scratch_register()com_rx()com_rx_empty(), com_tx_empty()com_set_parity()com_set_speed()com_tx()com_tx_ready()com_tx_string()CRC16()modem_autoanswer()modem_command_state()modem_command()modem_dial()modem_handup()modem_initial()69Copyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruКатегория C. Функции обслуживания медленных модулей вводаCвывода (LIO*.LIB)AiUpdate()Get5013()Get501718()GetRange5013()GetRange501718()Init5013()Init501718()Категория D. Функции обслуживания быстродействующих модулейвводаCвывода (HIO*.LIB)Get5017H()Get5050()Get5051()Get5052()GetRange5017H()Init5017H()Init5024()Set5024()Set5050()Set5056()Set5060()Set5068()70Copyright 19992000, ProSoft, Ltd. All Rights Reserved.7.5.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruОписание библиотеки функций7.5.1. Библиотека системных служебных функций (UTILITY*.LIB)ADAMdelayСинтаксис:void ADAMdelay(unsigned short msec)Описание:Задержка выполнения программы, задаваемая в миллисекундахПАРАМЕТРmsecОПИСАНИЕОт 0 до 65535Возвращаемое значение:НетПример:void main(void){/* операторы программы */ADAMdelay(1000);/*задержка 1 секунда*//* операторы программы */}Примечание:Нет71Copyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruEraseSectorСинтаксис:unsigned short EraseSector(unsigned long ulBase)Описание:Стирание сектора размером 64 кбайт во флэшпамяти объемом 256 кбайтПАРАМЕТРulBaseОПИСАНИЕОпределяемоепользователемадресное пространство стираемойобласти памяти в диапазоне от0x80000L до 0xB0000LВозвращаемое значение:TRUE, если стирание завершено успешноTRUE, если задан недопустимый адрес стираемой областиПример:void main(void){EraseSector(0x80000L);}Примечание:Нет72Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet_BoardIDСинтаксис:unsigned char Get_BoardID(int Board)Описание:Получение идентификатора модуля вводавывода в указанном слотемикроконтроллераПАРАМЕТРОПИСАНИЕInt BoardНомер слота ADAM5510 в диапазоне от0 до 3Возвращаемое значение:Тип модуля вводавыводаВозвращаемое значениеADAM5017ADAM5017_IDADAM5018ADAM5018_IDADAM5017HADAM5017H_IDADAM5013ADAM5013_IDADAM5080ADAM5080_IDADAM5052ADAM5052_IDADAM5050ADAM5050_IDADAM5051ADAM5051_IDADAM5056ADAM5056_IDADAM5060ADAM5060_IDADAM5068ADAM5068_IDADAM5024ADAM5024_IDПример:unsigned char IOModuleName;unsigned char SlotNumber;void main(void){/*Чтение типа модуля ввода9вывода в слоте 0*/SlotNumber = 0;IOModuleName = Get_BoardID(SlotNumber);If (IOModuleName == ADAM5051_ID){/* В слот 0 установлен модуль ADAM95051, передайтекод в него */}else {printf ("\nВ слоте 0 установлен не модуль ADAM95051");printf ("\nПроверьте конфигурацию системы");}Примечание:Нет73Copyright 19992000, ProSoft, Ltd.
All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet_NodeIDСинтаксис:unsigned char Get_NodeID(void)Описание:Получение кода сетевого адреса, установленного на DIPпереключателебазового блока ADAM5510ПАРАМЕТРНетОПИСАНИЕВозвращаемое значение:Код сетевого адреса, установленного на DIPпереключателе ADAM5510Пример:unsigned char SystemNodeNumber;void main(void){SystemNodeNumber = Get_NodeID();If (SystemNodeNumber == 0x15){/* Передайте код в устройство */}else {printf("\nОшибка сетевого адреса!");}}Примечание:Нет74Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGet_NVRAM_SizeСинтаксис:unsigned char Get_NVRAM_Size(void)Описание:Получение размера области ОЗУ, имеющего резервное батарейноепитание.
Единица измерения – сектор размером 4 кбайт. Максимальновозможный размер равен 60 кбайтПАРАМЕТРНетОПИСАНИЕВозвращаемое значение:Число секторов энергонезависимого ОЗУ в диапазоне от 1 до 15Пример:void main(){unsigned char sector;sector = Get_NVRAM_Size();}Примечание:Нет75Copyright 19992000, ProSoft, Ltd. All Rights Reserved.Тел.(095) 2340636, Факс: (095) 2340640, www.prosoft.ruGetRTCtimeСинтаксис:unsigned char GetRTCtime(unsigned char Time)Описание:Чтение значения из часов реального времени.