首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
单片机系统设计技巧
来源:本站整理  作者:佚名  2011-11-15 10:36:07



  单片机外部:

  OOOOH--1FFFH:程序存储器的地址,系统程序所在的地方;
  
  2000H--20FFH:进程列表,每次分隔3个字节,用来记录每个进程的ID号、各进程所用资源的高低位地址(DPH与DPL);
  
  2200H--3FFFH:每次分隔256字节,给每个进程用,作为各进程所占有的资源;剩余地址则用在其他方面。在具体编写程序时,又做了如下规定:

  1.进程运行时不得使用规定以外的资源,公共资源不包括在内;进程运行完后不释放资源,直到有其他新的进程代替该进程;
  
  2.进程间不设通信。这一点读者可根据需要而定;
  
  3.每个进程所能运行的时间为10ms.系统中断程序的运行时间不算在内。读者可根据需要而定。

  4.30H存放的进程号,做如下处理:第0-3位为进程号,第6位为特殊进程标志位,第7位为进程运行完毕标志。因此当第7位为O时,进程处于等待或运行状态,第7位为1时,该进程运行完毕;
  
  5.对进程列表中的单元做如下处理:第一个地址为进程的进程号及进程状态,第二个地址为进程的高位资源地址,第三位为进程的低位资源地址。

  6.对进程的资源做如下处理:前64字节用来保存单片机内部存储器的数据,第O字节用来存放堆栈指针,第1字节存放高位PC,第2字节用来存放低位PC;第1-63字节用来存放50H-7FH中的数据(在堆栈中保留有中断返回的PC,此PC作为进程切换依据);剩下192字节的在其他情况中使用,所以这个系统在运行时添加新进程的最大长度不能大于192字节。

  设计的这个分时操作系统的基本流程图如图所示。核心的中断程序如下:

  在上面的程序中,没有检查进程的等级,进程等级仅作为特殊情况下用,一般可以不用。要改变进程的运行状态,只要在进程结束时将进程号的最高位置1即可。实现这部分的关键是保存好进程的PC及进程的运行环境,转换时将其恢复即可。整个系统做如下处理:

  接下来要做的就是将进程的所在的位置写入进程所占的资源中,打开时钟中断,让进程开始运行,这样就可以简单地实现分时操作。将其运用到的一个实验板中,取得了比较好的效果。该程序还可以进一步完善,以达到更好的效果。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:45,007.81000 毫秒