Вход/Регистрация
Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С
вернуться

Пак Дэниэл Дж.

Шрифт:

Файл листинга обычно используется в процессе отладки прикладной программы при выявлении несоответствий между задуманными программистом действиями и реальным ходом исполнения программного кода. Кроме того, в процессе отладки иногда полезно знать, какие коды должны быть расположены в ячейках с фиксированными адресами. Последнюю информацию наиболее удобно получить из файла карты памяти *.map (иногда этот файл называют файлом символьных меток). Пример файла карты памяти для программы sample.c приведен ниже.

Area

(Attributes) Addr Size Decimal Bytes

– ----------- ---- ---- ------- --------

text 8000 006В = 107. bytes (rel,con)

 Addr Global Symbol

 ---- --------------

 8000 __start

 8028 _exit

 802А _main

 8044 _TOIISR

 8067 __HC12Setup

 806B __text_end

Area

(Attributes) Addr Size Decimal Bytes

– ----------- ---- ---- ------- -----

idata 806B 0001 = 1. bytes (rel,con)

 Addr Global Symbol

 ---- --------------

 806B __idata_start

 806C __idata_end

Area

(Attributes) Addr Size Decimal Bytes

– ----------- ---- ---- ------- -----

data 0800 0001 = 1. bytes (rel,con)

 Addr Global Symbol

 ---- --------------

 0800 _second

 0800 __data_start

 0801 __data_end

Area

(Attributes) Addr Size Decimal Bytes

– ----------- ---- ---- ------- -----

memory 0000 0B20 = 2848. bytes (abs,ovr)

 Addr Global Symbol

 ---- --------------

 0B1E _Timer_Overflow_interrupt_vector

Files Linked [ module(s)]

C:\icc\lib\crt12.o [crt12.s] interrupt.o [ interrup ]

<library> [psetup.c]

User Global Definitions

init_sp = 0хс00

User Bаsе Address Definitions

text = 0х8000 data =0х8000

В то время, как файл карты памяти предоставляет программисту обобщенную информацию о том, в какой области памяти располагаются коды переменных и каждой подпрограммы, файл исполняемых микроконтроллером кодов interrupt.s19 имеет следующий вид:

S10E8000CF0C0016806787CE08018EAD

S110800B080127056A000820F6CE806BCD21

S111801808008E806C2706180A307020F516BA

S1078026802A20FE8A

S1050B1E80440D

S104806B0010

S110802AC6807B0086C6807B008DC6807BEF

S1118037008FC6FF7B000210EF20FE3F3DC607

S1118045807B008FF6080087C300017B0800D3

S1118053F60800C17A260CF600008741517B26

S109806100007908000B89

S10780677900163D45

S90380007C

Каждая строка файла в формате S19 содержит информацию о типе представленных в ней данных, начальный адрес данных с строке, сами данные и контрольную сумму для этой строки. Полная расшифровка формата S19 дана в руководстве пользователя для отладочной платы M68EVB912B32.

Итак, мы рассмотрели последовательность преобразования исходного файла на Си к файлу загрузочного исполняемого кода для микроконтроллера. На языке структурных диаграмм этот процесс представлен на рис. 3.4.

3.15. Заключение по главе 3

В этой главе мы кратко рассмотрели технику программирования встраиваемых систем на Си. Мы показали некоторые особенности записи программ на Си для платы отладки MC68HC912B32EVB. Безусловно, столь краткое изложение языка Си недостаточно для разработки собственных реальных встраиваемых приложений. Поэтому для расширения познаний в области программирования на Си рекомендуем Вам обратиться к специальной литературе, приведенной в разделе 3.16.

  • Читать дальше
  • 1
  • ...
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: