本例子为用汇编在普中单片机上实现一个简单的秒表功能,加一个清零按键。新建keil工程,新建.asm文件并加入工程,不添加startup.a51文件在写代码之前,讲一些后面写51汇编必要的基础知识,因为汇编与硬件息息相关,这些不知道就没法写
1、单片机上电后的大致运行过程单片机内部有自带的检测烧写程序,当上电后在一定引脚上检测到一定信号,则接收串口发来的数据烧写到程序存储器中(从0000H开始),再执行烧写好的程序,否则执行上一次烧写的程序。单片机执行的第一条指令是程序存储器的0000H里内容,一般在这里写一个跳转指令到主程序起始地址(比如1000H之类的,只是举个例子,不一定这里)在执行主程序时,若发生中断,会跳到程序存储器的固定地址(比如T0会跳到000BH处),一般在这写个跳转指令,使程序跳转到中断处理程序处这里的固定地址就是所谓的中断向量。所以我们写51汇编程序首先得在这些地址处写好跳转指令
2、部分常用到的寄存器
单片机配置相关的特殊寄存器比如P0、TMOD等就不说了,和写C语言的时候差不多,写汇编接触比较多的是工作寄存器和A、B寄存器、DPTR寄存器、PSW寄存器、SP寄存器等,这里特别提下工作寄存器,其他自行百度即可。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !