松翰单片机汇编程序的学习
写点小结吧。。对自己有个心理交待,想写小结已经非常久了。。一直没有做到。。。并且目前大家都用C语言来写,我也准备步入C的行列。。。也许有一天我忘了汇编是怎么写的。。还可以回来看看。。。呵呵
我师傅的这种编程方式,架构,我非常喜欢,也让我很快就能上手。。。相信如果你也会有如此的感觉。。。
1.易用,易读,分层。。复制到别的程序中也是很容易的。
2.时序判断积累更快速准确,
下面以一个手控器的程序做介绍:
这是主程序,最前面是一些对程序的描述信息。以及每次变更的记录也可以在这里写上。。我觉得这是必要的,
然后就是所有子程序的调用,主循环也是在这里的。
第一步,应该是要定义各个IO口的功能及命名哦。。如上图。这样的标识。。是不是一目了然?
这里是变量的定义。。所有程序中要用的变量,标志都在这里。。
这里的初始化部分。。。就是各个IO口的初始化以及时间中断等初始化的程序。。
中断!在这程程序中。。最重要的就是时间了。。。时间由中断产生,并累积。。如上图中断我们设置为50微秒(US)。。40次就是2毫秒
。。。这样就可以积累成任意的时间。。。。当然。在中断里不可能积累到所有时间。。下面有一个时间程序
这个时间程序。。就是专门为各种时间积累而生成的。。2毫秒以上的时间都从这里产生。。每个时间设置一个标志位。当标志位为1那么就表示这个时间达到了。。。。
这里是按键和LED显示的程序。。。按键扫描也是用时间主导的。。2毫秒进来一次。当得到某个按键按下时。就是这个按键对应的标志置1,然后退出。。这样,每2毫秒进来一次。。。当有50次。。那么按键已经按了100毫秒。。这100毫秒的时间里我们的程序并没有停下来等,只是2毫秒进来一次。。呵呵。。。其他程序内容进行中。。。在网上学习编程里常常看到很多教程。。都是把程序停止在按键处。等时间到了才算按键成功按下,这样是不对的哦、、、
最后这里是数据输出。或者说是功能实现。。。
松翰单片机汇编程 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)