51多文件系统的书写

嵌入式开发之路,从51单片机开始 关注、星标公众号,直达精彩内容来源:技术让梦想更伟大作者:李肖遥嵌入式开发入门之路我相信很多朋友第一次接触的单片机应该就是51单片机,8位的mcu,丰富的教程,可以做很多小玩意,让初学者基... 阅读详情

这两天在学着写多文件程序,开始的时候真的不会写,后来参照百度上得到,书写基本的还是会的,但是一到自己改的程序就不会了,后来找呀找呀,终于找到解决的方法,我觉得告我们这一行的千万千万不要着急,否则会丧失信心:

这里我总结一些我写多文件的经验:

第一,如何定义多文件的头文件:比如定义一个delay.h

参照格式:#ifndef __DELAY_H__

     #define_DELAY_H__

               .................................

              #endif

这种方法可能大家都知道,但是这是书写多文件程序的基本操作,还有几个点大家要值得注意,

1:就是全局变量extern的含义 对于大一点的程序,有很多c文件和头文件,这个时候全局变量就必须在头文件中声明(不需要初始化),然后在一个c文件中定义(该初始化的要初始化)。如果在头文件中定义,则编译的时候会出现重复定义的错误。如果只有头文件中声明就会出现没有定义有警告。

2:在声明全局变量,尤其是数组的时候,千万要小心,因为声明不能初始化,而且要注明数组的具体大小,这一个小错误让我白白的调试了一上午

有几篇比较好的百度文库中的文章推荐给大家:

链接地址:http://wenku.baidu.com/view/9b5b7cc15fbfc77da269b1b9.html

还有刚才的注意事项:http://hi.baidu.com/pepsi360/item/51dd75c03e2b9a350931c6a1

这两篇文章讲解了多文件系统的一般规律,大家可以模仿模仿,改写一下自己写的比较长的多文件

 

版权所有,转载请注明链接地址:http://www.cnblogs.com/fengdashen/p/3364847.html

基于STC51单片机的FAT32文件系统设计源码 基于STC的51单片机对SD卡的读取,涉及FAT32文件系统设计源码 立即下载

相关推荐

51单片机实现YAFFS文件系统

51单片机实现YAFFS文件系统,只要讲述了YAFFS文件系统的介绍以及在51单片机上的具体实现。

关于51单片机移植znFAT文件系统,需要对以下几个文件中头文件及参数进行修改

在51单片机进行znFAT文件系统移植时,(我们这里是直接在给的例程工程上进行修改) 需要将给的移植例程中的单片机型号改成自己使用的单片机型号,同时将SD卡用到的IO引脚修改,并对端口模式配置进行修改。这里我将使用STC8A8K64S4单片机进行移植: 第一步,把工程文件使用的单片机型号改成我们使用的单片机型号。打开znFAT文件系统例程后,点击图中画框的【魔法棒】按钮,然后弹出新的对话框,这时...

weixin_43915898的博客 1887

基于51单片机的SD卡fat32文件系统,znfat原创。已测试,文件读取效率比较快。

基于51单片机的SD卡fat32文件系统,znfat原创。已测试,文件读取效率比较快。 解压后根据你的sd卡的端口修改之后下载到单片机就可以用了。

基于单片机的文件系统实现

首先申明,我只实现了部分的功能,没有提到的功能默认是没有的。 实现了:获得SD信息,获得总分区信息,获得某分区的信息,读取fat分区表功能。 具体有列出根目录下所有文件功能,查找某文件是否存在功能,显示某文件内容功能,删除某文件功能。 都仅限于在根目录下操作,且要满足8.3文件名格式。 因老师有要求,不能列出所有文件内容,现列出头文件,给各位一个参考。 /****************

lineter的专栏 8390

于振南的适用于51单片机的文件系统

于振南的适用于51单片机的文件系统 版本比较全

一个适用片内资源较小的单片机的文件系统

一个适用片内资源较小的单片机的文件系统,fatfs的简化版 Petit FATFS。压缩包内有文件系统源代码,移植例程,移植教程。适合向arm过渡

移植 CH376 USB FAT12/16/32文件系统芯片 单片机 MCU51

已经移植好的代码下载:http://download.youkuaiyun.com/detail/lxj_com2006/3793887 欢迎交流: QQ:67016879 EMAIL: lxj_com@163.com 目录 1       概述:... 1 2       源码文件列表:... 2 3       结构图:... 3 4       电路原理图参考:... 4 4.1

RICH的专栏 1万+

51单片机读写SD卡程序,使用FAT文件系统

51单片机读写SD卡程序,使用FAT文件系统,51单片机也可以有海量存储了

在51单片机KEIL中如何建立多个C文件及注意事项 模块化编程

模块化编程.c和.h文件关系及建立方法简记 1如何建立多个C文件        首先,我们需要一个新文档,这个文档的建立有两种方法,下面将以delay函数进行叙述:       第一种,在工程目录下建立一个delay1ms.txt然后将其改名为delay1ms.h。因为都是同编码的所以不会出现乱码,然后在工程中将其打开。       第二种方法是直接在工程中新建一个文档,然后保存的时候将名...

weixiao的博客 2万+

51多文件汇编(汇编+汇编/汇编+C)示例

51单片机进行多文件汇编的示例代码 包括多汇编文件单独编译 汇编和C混合编译 以及C语言调用但参数的汇编子程序 汇编调用但参数的C语言子程序 可以用C语言写算法 用汇编编写中断代码 或用汇编编写一些底层驱动

C51上的FAT32文件系统参考源代码

C51上的FAT32系统,可以作为单片机驱动SD卡等类似的文件系统参考

【C51】keil c51多文件编程

多文件编程可以大大提高程序代码移植率,避免程序看起来臃肿复杂 以流水灯为例 我们需要创建三个文件 led.c led.h main.c led.c文件编写 #include "led.h" // 这里包含 led.h 这个头文件 sbit ADDR0 = P2^0; sbit ADDR1 = P2^1; sbit ADDR2 = P2^2; sbit ENLED = P1^1; u...

傅里叶也头大 3729

别再乱按F8了!Win10系统修复的正确姿势:用管理员CMD运行sfc /scannow

本文详细介绍了Windows 10系统修复的正确方法,重点推荐使用管理员CMD运行`sfc /scannow`命令。相比传统的F8键和重装系统,这一方法更高效且安全,能解决大多数系统文件损坏问题。文章还提供了管理员CMD的启动方式、sfc命令的完整参数解析以及实战故障排除流程图,帮助用户快速恢复系统健康。

weixin_29218963的博客 462

原创:FAT8单片机 Flash文件系统V0.0.1

机缘 在做一个单片机嵌入操作系统,需要使用文件系统,移植了开源的ff文件系统,感觉还是有很多问题,刚好疫情居家办公,4月1日愚人节这天从头开始写了这个单片机文件系统,已经有了FAT12,FAT16,FAT32, 这个文件系统足够小,几乎目前所有单片机都可以用,所以我就命名为FAT8,今天是第一个版本就叫V0.0.1吧。 直接上代码: #include "fat8.h" /* 单片机简易文件系统FAT8 v 0.0.1 适合小容量单片机文件存取 第一个块做为文件分配表,每16个字节一个分区, 第0个分区

u010952129的博客 1219

随机截距交叉滞后模型RI-CLPM:原理、Mplus实现与结果解读

纵向面板数据分析中,传统交叉滞后模型(CLPM)常被用于探索变量间的时序关系,但其估计结果可能混淆了个体间稳定差异与个体内短期波动,导致交叉滞后路径出现偏差。随机截距交叉滞后模型(RI-CLPM)通过引入随机截距因子,将个体特质层面的差异与个体内动态过程分离,从而提供更纯净的个体内效应估计。该模型在组织心理学、发展心理学、成瘾行为等研究领域迅速普及,并成为顶级期刊审稿时常见的稳健性检验要求。本文从原理出发,系统讲解RI-CLPM的模型构建、识别条件、Mplus实操代码、输出解读及常见陷阱,并结合协变量处理、

weixin_33525298的博客 275

【数学基础】基于欧拉角表达的旋转顺序

欧拉角旋转顺序

FalschxMico 1384

看门狗的概念与应用以及如何用软件实现系统的复位

在单片机构成的系统中,由于单片机的工作有可能受到来自外来电磁场的干扰而出现程序跑飞的现象,从而陷入死循环,出于对单片机运行状态进行实时性的监控的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗(watch dog) 看门狗的工作过程如下: 看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过单片机的程序控制,使他定时的往看门狗芯片的这个引脚送入高电平(或者是低电平)这一个

疯是一种精神 3302

rk3568 RGMII KSZ8795 MAC TO MAC

参考《Rockchip_Developer_Guide_Linux_MAC_TO_MAC_CN.pdf》

明天乌儿会歌唱 6493

单片机的动手实践篇--51单片机玩转12864

12864液晶的驱动和1602的类似,只不过是多了几个扩展的功能,不如画图功能: 这里讲一下:不要简单的认为12864是y轴64,x为128,那是点阵的分布,不是读写的分布,如正图表示,y轴的32行,从0到31,x轴的16 从0到15,0到7为上半个屏幕,8到15在下半个屏幕,所以绘图的时候,有两个部分要进行书写 在12864上载入任意一幅图: 示例代码: #include

疯是一种精神 2813

VC Spyglass调试秘籍:从Lint报错到代码修复的完整工作流

本文详细介绍了VC Spyglass调试的完整工作流,重点解析了如何高效定位和修复Lint检查中常见的XMRE-L跨模块引用错误。通过对比GUI与命令行(vc_static_shell)双模式调试技巧,并结合TCL脚本实现批量处理与规则豁免,帮助数字设计工程师系统化地提升代码调试效率与质量。

weixin_29246195的博客 580

RT-DETR改进策略【卷积层】| CGblock 内容引导网络 利用不同层次信息,提高多类别分类能力 (含二次创新)

本文记录的是利用中的模块优化的目标检测网络模型。通过局部特征提取器、周围环境提取器、联合特征提取器和全局环境提取器来提取局部特征、周围环境和全局环境信息,充分利用不同层次的信息。本文将其应用到中,并进行二次创新,使网络能够更好的处理多类别目标的分类能力。CGNet: A Light-Weight Context Guided Network for Semantic Segmentation1️⃣ 首先通过局部特征提取器floc(∗)floc(*)floc(∗)和周围环境提取器fsur(∗)f_{sur }

Limiiiing的博客 1350
上一篇: 单片机其他外围设备的使用
下一篇: 单片机的动手实践篇--51单片机玩转12864
hust我是船长
博客等级 码龄14年 24粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值