找回密码
 立即注册
查看: 818|回复: 9

STC8A8K64D4, EEPROM, unsigned long长度问题

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:14
  • 最近打卡:2025-04-13 22:51:51

5

主题

4

回帖

207

积分

中级会员

积分
207
发表于 2023-6-9 10:12:43 | 显示全部楼层 |阅读模式
hi, 各位老师, 看了例程,
EEPROM多为u16, u8,
我这需要一个 unsigned long长度的数据读和存,实验下来,似乎不行?

怎么处理?

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:135
  • 最近打卡:2024-12-25 10:15:05

47

主题

1350

回帖

8058

积分

荣誉版主

冲哥视频教程和各种开源资料QQ交流群884047237,可群

积分
8058
QQ
发表于 2023-6-9 13:44:51 | 显示全部楼层
一个unsigned  long数据拆成4个u8就好了呀;

假设这个unsigned  long 变量是x,那么可以定义个dat【4】数组,然后:

dat[0] = (u8)(x>>24);
dat[1] = (u8)(x>>16);
dat[2] =  (u8)(x>>8);
dat[3] = (u8)(x>>0);

再把这个数组调用个写入函数写入进去就好了

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:14
  • 最近打卡:2025-04-13 22:51:51

5

主题

4

回帖

207

积分

中级会员

积分
207
发表于 2024-3-17 22:09:57 | 显示全部楼层
取回组合?

dat[3] = (u8)(x<<0);
dat[2] =  (u8)(x<<8);
dat[1] = (u8)(x<<16);
dat[0] = (u8)(x<<24);


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:422
  • 最近打卡:2025-05-01 09:54:52
已绑定手机

19

主题

3190

回帖

4866

积分

论坛元老

积分
4866
发表于 2024-3-18 10:10:40 来自手机 | 显示全部楼层
eeprom只能存u8数据吧
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2024-3-18 10:51:11 | 显示全部楼层
so*** 发表于 2024-3-18 10:10
eeprom只能存u8数据吧

这看你怎么理解了,,写入的时候只能按字节写入,
但是这个数据嘛,,16位的32位的就分开存储呗
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2024-07-16 08:38:18

0

主题

24

回帖

296

积分

中级会员

积分
296
发表于 2024-3-19 08:04:21 | 显示全部楼层
_奶*** 发表于 2024-3-18 10:51
这看你怎么理解了,,写入的时候只能按字节写入,
但是这个数据嘛,,16位的32位的就分开存储呗 ...

新人,正有这个困惑,U16拆分写入读回拼合成功,long有正负的拆成四个U8存储读回拼合结果不对,请大佬指教
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2024-3-19 08:36:44 | 显示全部楼层
cadp*** 发表于 2024-3-19 08:04
新人,正有这个困惑,U16拆分写入读回拼合成功,long有正负的拆成四个U8存储读回拼合结果不对,请大佬指 ...

用左移加或运算 应该是不需要关注原数据的正负来着
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:513
  • 最近打卡:2025-05-01 04:31:49

24

主题

515

回帖

986

积分

荣誉版主

积分
986
发表于 2024-3-19 08:46:18 | 显示全部楼层
使用指针强制类型转换。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2024-07-16 08:38:18

0

主题

24

回帖

296

积分

中级会员

积分
296
发表于 2024-3-19 08:49:44 | 显示全部楼层
_奶*** 发表于 2024-3-19 08:36
用左移加或运算 应该是不需要关注原数据的正负来着

谢谢大佬
我再去上机试试,在网上找遍了也没的这方面的例子,有一个C的例子可能是PC版的,U32拼成long是不对的,说要用指针,这个还没弄明白
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:14
  • 最近打卡:2025-04-13 22:51:51

5

主题

4

回帖

207

积分

中级会员

积分
207
发表于 2024-3-22 23:48:28 | 显示全部楼层
我也是没有成功,中间也,EA=0, 存之后,也再EA=1,  所以中断干扰应该不是,关键是有时对,有时不对,头晕。

看看有没有大佬来个举个栗子。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 02:03 , Processed in 0.168304 second(s), 119 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表