ZHAOBAO511 发表于 2018-7-7 16:44:12

请教一下 ,24C02里面可以存公式吗?

请教一下 ,24C02里面可以存公式吗?做个东西,需要更改一些公式,请教一下怎么存?

.titrwh 发表于 2018-7-7 16:46:13

可以啊,自定义+-*/对应1234这样,或者直接存阿斯克码

liurangzhou 发表于 2018-7-7 16:46:16

一头牛都可以存进去

bolizhicheng204 发表于 2018-7-7 16:47:33

EEROM就是存二进制数据,看你以什么方式存储,只要你转换正确什么都可以放。关键是你的公式如何用0X00~0XFF的数据进行描述

ZHAOBAO511 发表于 2018-7-7 16:47:42

.titrwh 发表于 2018-7-7 16:46
可以啊,自定义+-*/对应1234这样,或者直接存阿斯克码

谢啦!!☆⌒(*^-゜)v我想想看。

skynet 发表于 2018-7-7 16:48:04

可以存苍老师

ZHAOBAO511 发表于 2018-7-7 16:48:33

liurangzhou 发表于 2018-7-7 16:46
一头牛都可以存进去

关键是可以用。{:lol:}

ZHAOBAO511 发表于 2018-7-7 16:49:06

bolizhicheng204 发表于 2018-7-7 16:47
EEROM就是存二进制数据,看你以什么方式存储,只要你转换正确什么都可以放。关键是你的公式如何用0X00~0XFF ...

就是怕公式复杂,搞出来不行。

ZHAOBAO511 发表于 2018-7-7 16:57:29

liurangzhou 发表于 2018-7-7 16:46
一头牛都可以存进去

关键是调用,就像调用某个子程序一样。

dukelec 发表于 2018-7-7 17:01:43

把公式写成函数,编译好成二进制文件写入 eeprom, 需要的时候读到 ram 中执行即可。。。

如果 51 不支持 ram 中执行代码,就 iap 到 flash 再执行好了。。。

话说,51 单片机真的很难用。。。
要是用资源多些的 stm32, 还可以搞一些脚本解析器,eeprom 中存公式字符串即可。。。

wye11083 发表于 2018-7-7 17:14:53

dukelec 发表于 2018-7-7 17:01
把公式写成函数,编译好成二进制文件写入 eeprom, 需要的时候读到 ram 中执行即可。。。

如果 51 不支持 r ...

我曰,51要是难用,intel早就倒闭了。主要是因为现在的选择太多了。

我更倾向于有gcc编译环境的mcu。不支持gcc的很蛋疼,比如51,pic,z80。

ZHAOBAO511 发表于 2018-7-7 17:20:11

dukelec 发表于 2018-7-7 17:01
把公式写成函数,编译好成二进制文件写入 eeprom, 需要的时候读到 ram 中执行即可。。。

如果 51 不支持 r ...

谢谢,有时间试试看,话说这+ -乘除这些只是符号,单片机运行时调用这些会运算吗?

dukelec 发表于 2018-7-7 17:25:19

本帖最后由 dukelec 于 2018-7-7 17:28 编辑

wye11083 发表于 2018-7-7 17:14
我曰,51要是难用,intel早就倒闭了。主要是因为现在的选择太多了。

我更倾向于有gcc编译环境的mcu。不 ...

我入门也是 51, 而且最早是 asm 写代码,后来很久不用。。。

然后前两年玩 ti 的 cc254x, 要搞 iap, 然后整它的连接脚本和启动代码,被恶心的吐血。。。
ti 的东西真的是烂到贴地,乱糟糟的不说,还一堆 bug, 有人在官方论坛报告一些很低级的 bug 也不修复。。。

所以说,用 51 的话只能说是普通用用不难。。。

我也是首选 gcc ...

wye11083 发表于 2018-7-7 18:35:28

dukelec 发表于 2018-7-7 17:25
我入门也是 51, 而且最早是 asm 写代码,后来很久不用。。。

然后前两年玩 ti 的 cc254x, 要搞 iap, 然 ...

ti的东西不算最好用,坑无比多。调tps40057的bug调了好几天,最后ti论坛工程师回复我那个kff是要和输入电压做匹配的。。。

当然,ti也算很良心了。最起码,ds很全,未公开的找他们一般也能要到,不像某些厂商根本不吊小客户。

nanfang2000 发表于 2018-7-7 18:37:50

楼主如果在单片机实现了解释器,那么可以存个字符串即可

not_at_all 发表于 2018-7-7 19:20:42

skynet 发表于 2018-7-7 16:48
可以存苍老师

很怀疑苍老师被压缩成什么样子 估计要破相了

jianfengxixi 发表于 2018-7-7 20:13:28

直接iap啊,存eeprom再读出来更麻烦

442502587 发表于 2018-7-7 20:19:39

JB都可以存

4058665 发表于 2018-7-7 20:27:20

做个解释器

tomzbj 发表于 2018-7-7 22:29:47

先实现表达式求值,之后都好办。
表达式求值是每一本《算法与数据结构》中间某一章的必备习题。

mcu5i51 发表于 2018-7-8 10:40:57

好久以前有一种BASIC的单片机,用的PIC16芯片+外部24CXX完成;
你可以自己定一个简单的虚拟机

lhj200304 发表于 2018-7-8 11:30:09

可以的能读能写,关键是你自己怎么解析

AllEle 发表于 2018-7-8 15:26:27

当然可以存了

ZHAOBAO511 发表于 2018-7-9 09:16:43

nanfang2000 发表于 2018-7-7 18:37
楼主如果在单片机实现了解释器,那么可以存个字符串即可

就是这个意思,关键就是这个解释器的问题,网上查都没什么例程。

ZHAOBAO511 发表于 2018-7-9 09:17:47

jianfengxixi 发表于 2018-7-7 20:13
直接iap啊,存eeprom再读出来更麻烦

谢谢,特殊情况。

ZHAOBAO511 发表于 2018-7-9 09:18:11

4058665 发表于 2018-7-7 20:27
做个解释器

有例程吗?

ZHAOBAO511 发表于 2018-7-9 09:18:50

tomzbj 发表于 2018-7-7 22:29
先实现表达式求值,之后都好办。
表达式求值是每一本《算法与数据结构》中间某一章的必备习题。 ...

想看下例程,谢谢。

TonyCai 发表于 2018-7-9 09:23:41

就是个白纸,你想画图也行, 放小姐姐也行,当然放公式也行

nanfang2000 发表于 2018-7-9 09:29:00

ZHAOBAO511 发表于 2018-7-9 09:16
就是这个意思,关键就是这个解释器的问题,网上查都没什么例程。

mupaser 或者Lua,不过估计你51单片机有点吃力
我想实现输入的字符串当运算表达式,有没有可能?
有没有可以使用变量的表达式解析器

tomzbj 发表于 2018-7-9 09:30:06

ZHAOBAO511 发表于 2018-7-9 09:18
想看下例程,谢谢。

随便一本算法与数据结构书都有的啊。。。
基本就是先把表达式从中缀转为后缀,然后栈操作

ZHAOBAO511 发表于 2018-7-9 09:49:57

mcu5i51 发表于 2018-7-8 10:40
好久以前有一种BASIC的单片机,用的PIC16芯片+外部24CXX完成;
你可以自己定一个简单的虚拟机 ...

谢谢,不知道有没有这方面资料。

ZHAOBAO511 发表于 2018-7-9 09:50:42

lhj200304 发表于 2018-7-8 11:30
可以的能读能写,关键是你自己怎么解析

对,这个很重要,想了一下,没那么简单。

nanfang2000 发表于 2018-7-9 09:51:03

要看楼主的公式有多复杂了,如果公式是要求全功能的,那么一个完整解析器必不可少
如果只是固定几个操作数,运算符也限定死的话,用c语言可以做个简单的

shamiao 发表于 2018-7-9 09:53:37

这就是“序列化”与“反序列化”的问题了。
24C02当然可以存储任何“已经序列化”的数据,只是取出的时候需要“反序列化”再变回程序可以使用的数据结构。

ZHAOBAO511 发表于 2018-7-9 09:54:01

nanfang2000 发表于 2018-7-9 09:51
要看楼主的公式有多复杂了,如果公式是要求全功能的,那么一个完整解析器必不可少
如果只是固定几个操作数 ...

谢谢,看了下你的那个李诚,我再想一下,肯定不固定的。

ZHAOBAO511 发表于 2018-7-9 09:55:25

shamiao 发表于 2018-7-9 09:53
这就是“序列化”与“反序列化”的问题了。
24C02当然可以存储任何“已经序列化”的数据,只是取出的时候需 ...

对,都是高手!{:handshake:}

ZHAOBAO511 发表于 2018-7-9 10:00:53

tomzbj 发表于 2018-7-9 09:30
随便一本算法与数据结构书都有的啊。。。
基本就是先把表达式从中缀转为后缀,然后栈操作 ...

有点高深,我可以看下,谢谢!

qq335702318 发表于 2018-7-9 11:17:02

自己定义好数据格式和解析函数
想干啥都可以

ZHAOBAO511 发表于 2018-7-9 11:32:49

qq335702318 发表于 2018-7-9 11:17
自己定义好数据格式和解析函数
想干啥都可以

那有局限的,例如你做个产品,有的客户说我要个2+2的,有的说要2*2 的,有的说我还没想好。{:lol:}

qq335702318 发表于 2018-7-9 20:49:43

ZHAOBAO511 发表于 2018-7-9 11:32
那有局限的,例如你做个产品,有的客户说我要个2+2的,有的说要2*2 的,有的说我还没想好。...

那你把应用考虑的全面一点
函数写得通用一点

lengyun 发表于 2018-7-9 21:31:24

看了看评论,原来楼主的问题没那么表象。

honami520 发表于 2018-7-9 21:35:13

如果是序列化的话,可以使用google的protocol buffer。这个很方便,而且很快速

沉默胜过白金 发表于 2018-7-10 08:47:30

苍老师都能存,你说公式行不行

ZHAOBAO511 发表于 2018-7-10 09:35:14

lengyun 发表于 2018-7-9 21:31
看了看评论,原来楼主的问题没那么表象。

对的。存了 还要有 用的。

ZHAOBAO511 发表于 2018-7-10 09:36:07

honami520 发表于 2018-7-9 21:35
如果是序列化的话,可以使用google的protocol buffer。这个很方便,而且很快速

单片机\,51的

shamiao 发表于 2018-7-10 16:57:04

honami520 发表于 2018-7-9 21:35
如果是序列化的话,可以使用google的protocol buffer。这个很方便,而且很快速

话说还真的很少有人比较各种序列化库的“代码量”(footprint)负担。大家都在比较性能、内存消耗之类的。

pb从感觉上来说还是比较“重”的。

No.5 发表于 2018-7-10 17:44:50

not_at_all 发表于 2018-7-7 19:20
很怀疑苍老师被压缩成什么样子 估计要破相了

逼真就行

Sky2162 发表于 2018-7-11 14:56:36

可以的吧

zhongsandaoren 发表于 2018-7-11 16:19:55

可以存下整个世界的,你研究下

lcw_swust 发表于 2018-7-12 13:50:46

解释器 了解一下
https://www.amobbs.com/thread-5492296-1-1.html

ZHAOBAO511 发表于 2018-7-12 15:04:39

lcw_swust 发表于 2018-7-12 13:50
解释器 了解一下
https://www.amobbs.com/thread-5492296-1-1.html

谢谢,这个可以有。

weichao4808335 发表于 2018-7-12 17:02:53

他只是存储器神马东东都可以存滴

ZHAOBAO511 发表于 2018-7-12 17:12:27

weichao4808335 发表于 2018-7-12 17:02
他只是存储器神马东东都可以存滴

存的目的就是用,也要考滤怎么用。

lzchuo 发表于 2018-7-13 15:00:50

EEPROM自定义,想存储什么都可以
页: [1]
查看完整版本: 请教一下 ,24C02里面可以存公式吗?