怎么在51单片机中读取文件 如何在Keil C51使用fopen函数 也就是如何在C51中编写 能打开文件程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在51单片机中读取文件 如何在Keil C51使用fopen函数 也就是如何在C51中编写 能打开文件程序相关的知识,希望对你有一定的参考价值。

我想在单片机上放上一个TXT文件(放在ROM中吧)让后在把它读出来 关键是如把文件读出来我不会 在学c语言的时候 有fopen函数可以方便打开文件 但是51单片机没有文件系统 Keil C51也没法实现fopen函数 请问大侠们 怎么在51中读取文件
我是想通过51单片机做一个电子书阅读器 通过51读取TXT文件 在液晶上显示 主要困难有两个 一是 液晶没有字库 我想在自己加载一个GB2312字符集 来实现字库 二是 怎么让单片机读取TXT文件 还用就是怎么把 GB2312字符集和txt文件压在单片机里?
那位大侠帮忙讲解一下 不胜感激~~~~

首先,Keil中根本没有fopen函数,你可以打开keil的所有头文件看看。

其次,用单片机来读取文件是需要文件系统(比如FAT)来支持的,你不能“想当然”的认为计算机上的标准C函数中有文件打开函数,所以单片机中也有。更何况是51单片机!

像51单片机一般直接使用二进制存储,这样最简单快捷,文件存储反而成本高,速度慢,不适合使用。所以你可以用ROM来保存这个文本文件的内容,然后单片机读取ROM。
参考技术A 用普通的51单片机有点强人所难了。
按照你所说的,必须具备:
1.可以存放txt文件的空间,用51单片机放不了多少东西。极可能要外扩存储芯片或设备
2.需要在液晶显示,必须有字符集(这个倒好找)。
3.如何放入?如果按常规方法,就是用USB大容量存储设备方式了。这样需要USB接口。而且要用到文件系统,用FAT的比较多。
4.如何显示?这个倒简单,txt文件直接从头读取到尾,然后转换为字符(中文是双字节,英文是单字节)。至于怎么读靠自己编程了。

所以,如果做这个的话,硬件要有:
USB接口,足够的存储空间,液晶显示功能

个人能力上需要:
1.USB编程能力
2.液晶驱动编程能力
3.FAT文件系统的了解(可使用现成的东东,如ELM的FAT,但也要了解。)本回答被提问者和网友采纳
参考技术B 好像51单片机无法放入TXT文件啊。我一同学也弄了个电子书,但他是把英文文章放在程序中的。想弄个你说的那样的功能的话估计要弄个片外存储器。然后读取数据的方式。但你TXT文件放入外存储器时还是需要转换的。
GB2312字符集在C51中应该有库文件吧。弄个可显示GB2312字符的显示器应该就可以了。
参考技术C 要在单片机中读取文件首先要有文件系统,现在一般在低端单片机中使用fat文件系统,文件系统中自带文件读写的函数,直接调用就可以了。 参考技术D 怎么放进去的怎么读出来,汇编的话就是查表了,还能怎么样。

keil2编51单片机程序c 指针赋值提示重复定义,怎么解决

uchar *p,a1[],a2[],a3[];a1[]="菜单1" p=a1;

参考技术A 1.
点击仿真start/stop
debug
2.
在disassembly窗口会看到c:0x066a(地址)编译器会自动分配地址
3.
对应地址位置双击,出现红色断点设置标志
4.
点击全速运行,在对应的断点处会停止运行,查应寄存器

以上是关于怎么在51单片机中读取文件 如何在Keil C51使用fopen函数 也就是如何在C51中编写 能打开文件程序的主要内容,如果未能解决你的问题,请参考以下文章

用Keil C51编写单片机程序,怎么看程序多少行

怎么让KEIL里得到的数据以TXT文本输出(我是用的AT89C51系列单片机)

我安的keil中找不到想要的芯片,啥原因?如何设置keil中的芯片类型?KEIL MDK 与keil c51有啥区别?

keil C51中函数调用无法正确返回怎么回事

keil c51安装完之后怎么用

单片机Keil C51 C语言多文件如何使用全局位变量?跪拜!!