0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

万事开头难,51单片机的头文件怎么写?

j4AI_wujianying 来源:杨湘祁 作者:电子发烧友 2019-03-12 16:00 次阅读

众里寻他千百度,默然回首还是看不懂你的代码!

我相信,对于初学单片机编程或其他语言编程的朋友来说,刚开始我们编程时总喜欢把所有的代码都写在一个文件中。

(当然如果你是绝世天才那就另当别论了,哈哈)。其实我也如此,刚开始我就想,将所有的代码都写在一个文件中那该多

方便,打开一个文件都可以看清。当然,起初我们很容易看明白,因为你我都知道,咱写的代码只有那寥寥几行,倒着背都

能背下来。但当后来我们写的代码越来越多时,我们往往苦于阅读自己的代码。

因此,我们可以将一个程序写在多个文件中(即以.c为后缀的文件中)。这时聪明的你就会问了,那么我写了了这么多文

件,最后只通过一个按钮编译,生成HEX这个家伙,那么各文件又是怎样联系一起的呢?(啊,说了这么多,终于说到点子

上了,ZC一下,看来我的语言表达能力的确得练练)这就是头文件存在的价值呀!

好了,说重点。那么头文件中都改装些什么呢?简单来说就是 预处理+引脚定义+函数名。再多的汉字也表达不了我的意

思,还是代码说话吧。/****下面是一个关于GPS模块的程序头文件,文件名:GPS.h****/#ifndef _GPS_H_ #define _GPS_H_ //_GPS_H_与文件名一致,只是改为大写 #define uint unsigned int #define uchar unsigned char typedef struct{ //你知道结构体是干啥的吗?装几个变量int month;int year;int data;int hour;int minute;int second; //这几个变量用来"装"GPS接收到的时间}dataTime; ..... //后面仍是一个结构体,类似,所以我想偷一下懒用。。。代替 /******下面是一系列函数名,再GPS.C中编写函数*******/ void gpsInit(void); //GPS初始化程序,gpsInit为函数名我比较喜欢用匈牙利/驼峰命名法,强 烈推荐 int gpsRmcParse(char *line, gpsInfo *gps); //RMC为接收到的数据头 int gpsGgaParse(char *line, gpsInfo *gps); int gpsGsvParse(char *line, gpsInfo *gps); void integerToString(int x, char *str); //整型转字符串 #endif //程序结束

上面就是这个头文件,我们可以就看到它的格式就是这样的#ifndef ......#define............#endif

如果使用的什么模块要接到I/O口,就在头文件中写

#includesbit ...sbit ...sbit ...sbit ...//等这样的代码,至于意思嘛,你当然懂!

现在,头文件写完了,那么接下来的工作就简单多了,将你的头文件加载到所要使用该头文件中内容的C文件中。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 51单片机
    +关注

    关注

    273

    文章

    5696

    浏览量

    122943
  • 头文件
    +关注

    关注

    0

    文章

    24

    浏览量

    9838

原文标题:51单片机的头文件究竟该如何写?

文章出处:【微信号:wujianying_danpianji,微信公众号:单片机精讲吴鉴鹰】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    万事开头难,开关电源设计就应该这样一步一步来

    针对开关电源很多人觉得很难,其实不然。设计一款开关电源并不难,在做精,等你真正入门了,积累一定的经验,再采用分立的结构进行设计就简单多了。万事开头难,笔者在这就抛砖引玉,慢慢讲解如何一步一步设计开关电源。
    的头像 发表于 01-07 09:21 2.2w次阅读
    <b class='flag-5'>万事开头难</b>,开关电源设计就应该这样一步一步来

    求高人指点

    本人刚刚学习单片机万事开头难啊!我现在就被困在这儿啊!在网站上能看到很多精彩实验的例程,但是由于不太会读程序,所以一直止步不前。想请高人指点!QQ:347644353
    发表于 06-03 14:44

    从0开始学习51单片机第一集

    还下载了郭老师的单片机视频来热身。我看了一个下午,我想睡觉了。俗话说得好啊,万事开头难呢!以前我从没有体会到这句话的份量。我真的完全忘记了以前学过的了。我着急,着急着找回以前的感觉。神赐我力量!好啦
    发表于 09-21 23:58

    循迹智能车的制作--我如何进入单片机的世界的

    `万事开头难,只有经历过来之后才感觉:哦,原来就是这样的呀不多说了,共有三个模块最小系统循迹模块驱动(298的)`
    发表于 10-19 17:32

    单片机无线通信模块开发与应用

    得很,因为,万事开头难嘛,这么着,让我来带路吧。https://www.elecfans.com/soft/33/2012/20120210259804.html
    发表于 11-10 11:50

    51基础怎么入门pic

    我之前用开发板学的51,现在能用用板做些小项目,做了几年电子维修,对硬件比较熟悉,不想再买开发板了想用仿真入门pic,万事开头难,折腾了两天仿真电路搞好了,没搞懂pic怎么用c语言生成hex.下载
    发表于 07-24 12:13

    【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】万事开头难,先点个LED灯

    万事开头难,之前花了很多时间搭环境,我的电脑又比较老旧,编译老是报错,后面改用云服务器后,终于可以撸代码了。先点个LED灯试试看吧,哈哈!根据官方教程 https
    发表于 12-24 01:43

    学习单片机的心得体会(转载)精选资料推荐

    实验板,很简单的功能,比论坛实验板还要少功能,还有一个仿真器,也是比较简单的,SST芯片的。然后开始从大家都知道的流水灯写起,万事开头难,第一个程序基本上就抄人家的,翻查了一份快速入门的学习资料,...
    发表于 07-16 06:00

    如何学习单片机

    1、万事开头难、要勇敢迈出第一步。开始的时候,不要老是给自己找借口,说KEIL不会建项目啦、没有实验板啦之类的。遇到困难要一件件攻克,不会建项目,就先学它,这方面网上教程很多,随便找找看一下,做几次
    发表于 01-17 06:09

    怎样使用固件库来进行点灯呢

    学过51再上手32比较简单,但又不简单。简单在于对单片机编程有一定的了解困难在于初识固件库万事开头难粗略地来说无非是打开时钟 初始化引脚 代码风格更正式规范了
    发表于 02-24 06:26

    51单片机编程的头文件reg51.h详解

    我们在用c语言编程时往往第一行就是头文件51单片机为reg51.h或reg52.h,51单片机
    发表于 08-09 17:33 9次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>编程的<b class='flag-5'>头文件</b>reg<b class='flag-5'>51</b>.h详解

    51单片机头文件reg51h详细资料讲解

    我们在用c语言编程时往往第一行就是头文件51单片机为reg51.h或reg52.h,51单片机
    发表于 06-21 17:43 19次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>的<b class='flag-5'>头文件</b>reg<b class='flag-5'>51</b>h详细资料讲解

    51单片机头文件注释

    51单片机头文件注释
    发表于 11-21 14:21 13次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>的<b class='flag-5'>头文件</b>注释

    STM32白话文教程(一)固件库点灯

    学过51再上手32比较简单,但又不简单。简单在于对单片机编程有一定的了解困难在于初识固件库万事开头难粗略地来说无非是打开时钟 初始化引脚 代码风格更正式规范了
    发表于 01-12 17:42 0次下载
    STM32白话文教程(一)固件库点灯

    【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】万事开头难,先点个LED灯

    本文来源电子发烧友社区,作者:abcd7471, 帖子地址: https://bbs.elecfans.com/jishu_2022224_1_1.html 万事开头难,之前花了很多时间搭环境,我
    的头像 发表于 11-02 15:35 428次阅读