状态机(state machine)的思想
状态(当前状态和下一状态)以及状态转换,是状态机的基本概念。
比如现在要设计一个简单的普通电话控制IC,那么首先要考虑的就是这块
device有几个状态呢?根据我们的常识就可以知道,如果电话静静躺在那
里它是什么都不干的,叫它发呆idle如何?如果用户摘机了,小键盘控制
器就要准备检测键盘了,这又算一个状态吧?(当然这里还可以分不拨号
挂机、拍簧、正常拨号等等情况,又要分别处理)。如果这时候本机是被
叫呢?那么就要做应答处理。如果正常拨号了,就要将所拨的号送往发送
端口,然后等待交换机将相应的信令送回来,比如震铃音、对方摘机、对
方挂机,也就是对交换的信令作相应处理。那么用状态(state)就可以描
述为:(呵呵,简单表述一下吧,只为说明"状态"的概念,详细的状态可
查电信手册)
摘机 完毕
idle=====>scanKey====>process====>idle;(复杂的状态还可以有子状态)
被叫 完毕
idle=====>Ring=====>process====>idle;
驱动信号
总得说来,用通式可以表达为:current state===========>next state;