Freescale MC9S08AW60汇编学习笔记(一)

  MC9S08AW60是HCS08系列的MCU,它是8位的MCU,由HCS08核加上存储器和外围模块构成。HCS08系列的MCU除了MC9S08AW系列之外还有MC9S08GB系列、MC9S08GT系列、MC9S08AC系列等。不同型号的MCU应用领域的侧重点不同。

  HCS08系列的MCU就只有5个寄存器:A、H:X、SP、PC、CCR。分别是8位、16位、16位、16位、8位。具体功能要在使用中掌握。MC9S08AW60的主频为4MHz,一个总线周期为T=0.25us。MC9S08AW60存放数据的方式是大端方式:低地址存放最高有效字节,此外需要知道的是存储器中RAM地址:$0070~$086F,FLASH地址:$0870~$17FF、$1860~$FFAF。接着我们就可以使用Codewarrior来编写代码了。

  首先,给出一个最基础的框架:

 org $0070        ;变量定义
x1 ds.b 1

 org $1860         ;常量定义并写出主程序

x2 dc.b 1

main:                 ;主函数
  clra
  clrx

  nop

again:                ;主循环
  nop
  jmp again

 org $fffe           ;复位向量
 dc.w main

  编译后,可以在调试面板查看一下效果。其中复位向量的使用实质是在地址$FFFE~$FFFF中写入main函数的地址,当复位时就直接执行$FFFE中的代码,于是转入main函数中,程序就回到了最初的固定状态,复位的使用可以应对程序中出现的异常,就好比手机的重启、初始化之类的总是回到一个可以预知的固定状态。其他程序代码(如:nop表示空操作占用一个总线周期T)可以翻阅数据手册,也可以看看《Freescale-HCS08单片机原理及应用-指令集汇总》——我已经上传了。

 

 

 

转载于:https://www.cnblogs.com/daviddolphin/p/4469171.html

你可能感兴趣的:(Freescale MC9S08AW60汇编学习笔记(一))