
- •Способы адресации и система команд:
- •Средства программирования и отладки:
- •2. Задание.
- •2.1. Выполнить на основании Freescale hcs12c Family Student Learning Kit,
- •Введение в CodeWarrior™ -симулирование микроконтроллера в ассемблере
- •Работа с симулятором CodeWarrior.
- •3. Контрольные вопросы
- •Литература:
Работа с симулятором CodeWarrior.
1. запускаем the CodeWarrior IDE
а) из рабочего стола Windows запускаем Start > Programs > Freescale CodeWarrior > CW for HC12 Vx.x > CodeWarrior IDE
2. создание нового проекта
а) из главного меню IDE выбираем File > New. Появляется новое окно.
б) выбираем HC(S)12 New Project Wizard
в) вводим имя проекта (Project Name) например lab_x
г) выбираем расположение проекта (Location). Каталог, в котором вы расположите файл проекта HCS12
д) нажмите OK
3. в мастере нового проекта New Project Wizard
страница 2: выберите MC9S12C32 который вы хотите использовать и нажмите Next.
Страница 3: проверьте поддержку языка программирования (Assembly) и нажмите Next
Страница 4: выберите Relocatable Assembly
Страница 5: установите Full Chip Simulation и P&E Multilink/Cyclone Pro и нажмите Finish
В окне Project Manager
4. переключить полную симуляцию контроллера Full Chip Simulation для отладки выбором из раскрывающегося меню в окне и выберите Full Chip Simulation (это не позволит использовать аппратное обеспечение для отладки. Если вы хотите использовать аппаратуру HCS12, выберите P&E Multilink Cyclone Pro.)
5. создайте файлы кода открытием панели Simulator Settings нажав на значок показанный выше.
a). нажмите на + , затем на Target в Target Settings.
б) определите Assembler for HC12 и на этой панели нажмите на Options.
(i) установите Generate a listing file.
(ii) установите Object File Format. Выберите ELF/DWARF 2.0 Object File Format.
(iii) нажмите OK.
c. нажмите OK.
6. откройте Sources каталог (нажмите на +, если он не открыт).
7. дважды нажмите на main.asm и введите следующий код и комментарии
; это программный код .
; инициализация I/O (ввода/вывода)
main_loop:
; DO
nop ; операция «нет операций»
ldx #ConstData ; инициализация Х с адресом
ldab #$02 ; инициализация счетчика с данными
; загрузка и запись данных в цикле loop
loop:
ldaa 0,x ; получить данные
staa VarData ; разместить в памяти
ldaa 2,x ; получить другой байте
staa VarData+1 ; записать его
inx ; инкремент указателя
decb ; декремент счетчика
bne loop ; цикл до тех пор пока B = 0
nop
; бесконечный цикл
bra main_loop
;************************************************************** MyConst:SECTION ; постоянные размещены здесь
ConstData: DC.B $0a,$0b,$11,10 ;**************************************************************
MyData: SECTION ; переменные размещены здесьPlace variable data here
VarData: DS.B 2 ; два байте памяти
8. запишите файл : File > Save As.
9. убедитесь, что ваш файл готов для отладки.
a) в окне Project Manager Files, посмотрите имеется ли символ • в правой колонке под знаком бага.
10. ассемблируйте файл для проверки ошибок:
a) нажмите Project > Compile.
б) исправьте все ошибки.
11. просмотрите ваш листинг.
а) File > Open и найдите в каталоге bin в вашем проекте и откройте файл .lst
После изучения ответьте на вопросы преподавателя
2.2. Выполнить на основании Freescale HCS12C Family Student Learning Kit,
и CodeWarrior отладку и запуск программы микроконтроллера в рабочем режиме с использованием инструкций HCS12 , модифицируя с вашими изменениями.
Для выполнения использовать Introduction to CodeWarrior™ – Running Assembly Programs on the Microcontroller © Freescale Semiconductor, Inc. 2006. Document Number: LABS12CINTRO04S /REV 1