• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

基于ARM硬件的Linux开发中 ,驱动文件和头文件的关联

Linux小学童 2020-03-22 浏览量:601

在linux开发中 ,学习的开发板有个点灯程序,只有 1个.c源文件,编译这个源文件就能生成一个可执行的文件,放到开发板上就能运行。

但是LED灯不是需要配置管脚、包括其他一些初始化的内容,在.C文件里还有包含很多头文件。这个在开发板上都在哪里,执行的时候是怎么做到让灯点亮的。

像STM32都是要把所有的源文件、头文件都放到工程目录下,然后编译出一个.hex文件。但是开发板的LED点灯,就靠一个.c文件就实现了。这是怎么做的。


0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 这个只是项目组织和编译环境配置的问题。

    首先,其实C程序并不是必须要有头文件的,很多时候头文件仅仅是工程管理需要,特别是需要和其它C共享接口(函数)等才需要的,所以你开发C程序如果不需要和其他C共享接口(声明函数等等),完全可以没有单独的对应头文件。


    其次,C通过include引入标准库头文件,因为这头文件和库都是标准配置(对于Linux编译环境来说),所以你在C程序文件目录下看不到相应文件。其实你在win下开发STM32也有类似配置,比如指定标准库等等位置,这些库和对应头文件并不直接在 相应开发项目目录下的,配置了后,编译时会通过相应设置自动取找,找得到就可以正常编译,否则就不能编译。其实Linux安装编译环境时也会自动配置相应库及头文件查询路径的。

    • 发布于 2020-03-23
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:1
  • 编译通常是以工程为单位进行的,一个工程产生一个二进制文件,一个工程里面包含若干.c和.h文件
    • 发布于2020-03-23
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

基于ARM硬件的Linux开发中 ,驱动文件和头文件的关联