软件定时器与硬件定时器

软件定时器和硬件定时器有什么区别?麻烦通俗一点
软件定时器和硬件定时器有什么区别?麻烦通俗一点
软件定时器和硬件定时器有什么区别?麻烦通俗一点

软件定时器就是没有电路没有元器件,靠软件写出来的。
硬件定时器是有一个实际的时钟电路在那里。
前者不要钱、精度低、消耗cpu性能、可靠性差、灵活
后者要钱、精度高、不占用cpu性能、可靠性好

  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/356536
  • 这篇博客你也可以参考下:死锁和饥饿有什么区别?如何解决?
  • 除此之外, 这篇博客: 单片机的底层驱动和应用程序的区别中的 一、底层驱动 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 1、单片机底层开发一般指利用单片机的固有资源完成的控制功能的软硬件开发,比如时钟、通讯协议(232、485、UART、SPI、IIC、CAN、IR等)、定时器、AD转换、GPIO、外设驱动(各种现场控制、各种环境状况测控、电机控制、电磁阀、继电器控制、键盘扫描、LED和LCD显示)等。

    2、根据时钟树图,观察初始化时钟时需要用到哪些寄存器及各种外设需要的时钟源。

    3、配置定时器的时钟源,分频,比较值和PWM输出。
    (1)当单片机内部有几种不同的时钟源时,必须配置相应的寄存器配置需要的时钟源,如果不进行配置,将会使用单片机上电默认的时钟源。
    (2)时钟源决定着系统的工作频率、定时器定时时间和通信时的波特率。
    (3)定时器分频是为了获得更长的定时时间,如果采用标志位累加的方式来延长定时时间,将会消耗单片机的RAM资源,在低端单片机中,由于RAM资源非常珍贵,因此只能采用定时器分频来延长定时时间。
    (4)比较值对于简单的定时功能就是计算多少个数产生一次中断,对于PWM输出来说就是设置周期和占空比。

    4、单片机的头文件只是最基础的定义,包括寄存器名称和分频值等,这些都是硬件确定好的内容,不能更改否则会出现错误。

    5、通信协议配置的硬件方式是配置寄存器,软件方式是用IO模拟通信。

    6、底层驱动与硬件相关,编写底层驱动程序要非常了解硬件,同时给应用层提供API函数调用接口,应用层可以通过调用这些接口去访问硬件,而不需要了解具体的硬件工作情况。

  • 您还可以看一下 2017CCTC大会老师的【微服务专场】实施微服务架构的关键技术课程中的 实施微服务架构的关键技术小节, 巩固相关知识点