单片机驱动程序是什么,驱动文件组成。

  • 驱动程序是什么:驱动程序与硬件相关,编写驱动程序要非常了解硬件,同时给应用层提供API函数接口,应用层可以调用这些接口去访问硬件而不必了解硬件.

  • 通俗地解释:比如说你有一个应用是控制每天早上六点钟开灯.应用程序只负责在适当的时间做适当的事(到六点了,要开灯了,触发按键信号,这个信号通过驱动程序相应的API接口下发至硬件);具体它不用知道为什么按下键就能开灯,因为按下键后开灯的事情就是驱动程序完成了,驱动程序再去控制硬件管脚发出高低电平信号去驱动灯的开关.

  • 单片机驱动程序文件组成:以led点灯为例,包括三个文件led.h(包括宏定义,变量声明,函数声明),led.c(模块的具体代码实现),main.c(工程的主函数,调用模块函数并适当组合就可以完成工程的项目要求功能)三个文件。

驱动程序要做的事情:

1、单片机底层开发一般指利用单片机的固有资源完成的控制功能的软硬件开发,比如时钟、通讯协议(232、485、UART、SPI、IIC、CAN、IR等)、定时器、AD转换、GPIO、外设驱动(各种现场控制、各种环境状况测控、电机控制、电磁阀、继电器控制、键盘扫描、LED和LCD显示)等。

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

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

单片机驱动程序与应用程序的区别:应用程序是根据实际应用需求去编写的程序,指的是代码的逻辑部分,直接去调用底层驱动预留的接口,而不需要关心硬件底层的实现方式及实现过程。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章