这些电子硬件常识,你知道哪些?
关注
今天我们要讲的是这个semesros的这个teamer,在这个实时系统里面呢,它只是两种类型的temer,一种是的,一种是周期性的。所谓timer,我们大家都知道,一种定时当定时og的时候呢,他就会执行相应的这个回调函数。这个的teamer,当电视到来的时候,他只会被执行一次,而周期性的这个temer,它将会不断的重复。知道这个teme被删除,或者是被停止了,所有teamer都可以被启动,重启动或者停止。在这个这个系统里面呢,他有一个专门的任务啊,tames来管理和所有的timer,因此timer对于对应的这个回调函数了。都是在这个任务当中执行的类型的,time是定时到来的时候了,这个回调函数被执行一次,然后timer就停止了。周期性的这个time呢,它会周期性的去执行这个回调函数。下面的这个图呢,就展示了这个周期性的这个回调函数的执行的一个流程,首先,timers以后呢,当定时到来的时候,他就执行相应的回调函数啊,然后呢?开始下一次的循环,当这个时到来的时候,又又再次执行回调函数,如果在这,在这个。过程当中,他又重新启动了tamer,比如说修改了这个时间,那么这个时候tome就会重新start,然后呢?按照你新定义这个时间定时的时间,他到了之后呢,再再次执行这个回调函数,直到你主动调用这个teme star的时候。这个周迅的teme才会停止,下面讲一下这个timer的这个使用。使用这个timer之前呢,你需要先定义这个time,通过这个 ostimetfind这个。这个红,然后呢,通过这个这个红呢,来获取这个这个tm的定义。好,这个timer相关的函数呢,有四个,分别是创建启动停停止,以及删除。另外,这个就是tamer类型,有两种,下面简单看一下这个teme的创建和启动。好,首先,我们定义了两个回调函数,分别是time的这个回调函数,另外一个是周期time回到函数。定义好这个回的函数,以后,我们就可以通用刚才说的这个ostemer,dfind这个红来定义我们定义我们自己的这个timer,这第一个,这个参数就是我们time的名字,第二个就是对应的回到函数。当然还需要定义两个id用来保存啊,这个timer。创建以后的那个id啊,因为在后续的starstarp以及删除的这个函数里面呢,都是通过这个id来来执行的。好,下面呢,我们这个这个timer定义好之后,我们就可以创建和启动哈,创建这个time的时候呢,第一个参数要注意的是,我们通过这个os刚才讲的这个os timer,这个红然后呢,再把你这里对应定义的这个timer名字传进去这样的方式来传递第一个参数。第二个参数是这个,temer的这个类型,第三个呢,是一个。指针啊,如果你的回到函数里面需要一个参数,那么就可以通过这个通过这个指针传进去,如果不需要,那么就指针空了就可以了。创建好time,我们就会得到对应的一个id,那么通过这个id,我们就可以启动这个time。第一个,这个启动,这个函数里面,第一个就是这个创建的id,第二个就是你希望这个temer的定制的时间。好,这是tm的创建和启动,启动以后呢,我们可以停止它,通过这个sp的这个函数,s函数里面传进去的,就是我们刚才也得得得到一个id。timer被停止后了,还能被再启动的最后一个。接下来的函数就是删除删除这个,一个timer的这个函数,这个。参数传进去的,也是刚才我们得到的这个id好,但是呢,timer删除以后呢,是不能被再被启动了。好,今天我们要简单的给大家介绍一下这个amer的使用。