汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。
C语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机
语言。缺点是占用资源较多,执行效率没有汇编高。
对于目前普遍使用的RISC架构的8bit MCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。
HT-MCU集成开发环境 IDE3000。
中断向量
MCU复位后程序从ROM的0地址开始执行。这里有一条跳转指令,使程序跳转到主程序 main。
从0地址开始有若干特殊地址,都是中断发生时程序自动跳转到的地址,这些地方也放置跳转指令引导MCU进入相应的中断响应函数中。
定义中断入口向量
当项目中要使用单片机中断以及相关的中断服务程序(ISR), 那么在编写相关的C 程序中要注意适当的使用以及限制。