久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2121|回復: 11
打印 上一主題 下一主題
收起左側

關于STC8A8H64D4單片機eeprom讀寫問題

[復制鏈接]
跳轉到指定樓層
樓主
       問題:現定義  unsigned  int  ledld[4]=0;    使用eeprom讀取數據的時候發數組里面的數字大于900,然后發現讀取的數據是錯誤的。后續反復試驗發現數字只要大于640的話就無法讀取正確的值,低于640可以正常讀取。
       想問問有沒有遇到這種情況的,幫我解答一下,謝謝。后面又用了STC8H3K64S4這個單片機也是一樣的問題

1.png (5.96 KB, 下載次數: 57)

1.png

2.png (4.46 KB, 下載次數: 64)

2.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:712072 發表于 2023-11-16 11:25 | 只看該作者
以下是eeprom的程序

3.png (48.36 KB, 下載次數: 53)

3.png
回復

使用道具 舉報

板凳
ID:213173 發表于 2023-11-16 15:06 | 只看該作者
代碼不全,猜不出來。單片機本身不會發生這樣的問題,只能是樓主的代碼有問題。
回復

使用道具 舉報

地板
ID:123289 發表于 2023-11-16 15:23 | 只看該作者
注意以下:
1、表達一個數所用的字節數N,即一個數要分成N個字節讀、寫。
2、EEPROM只能寫0不能寫1(1是擦除后自然形成的,例:可以將11110000,改成00110000,不可以改成11110011)。
3、先擦后寫,已擦了不用再擦(擦的目的是改0為1)。
4、關注擦除的范圍(當心擦到其它數據,擦是按頁進行的,即一擦一大片。)
回復

使用道具 舉報

5#
ID:161164 發表于 2023-11-16 17:01 | 只看該作者
試試
ledld[0] = ispdu(0x0010);ledld[0] = ledld[0] << 8 | ispdu(0x0011);
回復

使用道具 舉報

6#
ID:712072 發表于 2023-11-16 17:57 | 只看該作者
wulin 發表于 2023-11-16 15:06
代碼不全,猜不出來。單片機本身不會發生這樣的問題,只能是樓主的代碼有問題。

     以下是算是完整代碼,后續會加其它功能,但現在卡在這個eeprom中

1.png (22.09 KB, 下載次數: 66)

1.png

2.png (20.37 KB, 下載次數: 69)

2.png
回復

使用道具 舉報

7#
ID:712072 發表于 2023-11-16 17:58 | 只看該作者
lkc8210 發表于 2023-11-16 17:01
試試
ledld[0] = ispdu(0x0010);ledld[0] = ledld[0]

這種形式也試過,也是不行的
回復

使用道具 舉報

8#
ID:213173 發表于 2023-11-16 19:04 | 只看該作者
本帖最后由 wulin 于 2023-11-17 06:35 編輯
395164965 發表于 2023-11-16 17:57
以下是算是完整代碼,后續會加其它功能,但現在卡在這個eeprom中

讀、寫、清除EEPROM是在IAP方式操作。試試讀、寫、清除EEPROM時關閉總中斷。EA=0;。完成后再開總中斷。
回復

使用道具 舉報

9#
ID:1034262 發表于 2023-11-16 20:43 | 只看該作者
程序問題,EEPROM只能單字節讀寫。
回復

使用道具 舉報

10#
ID:57657 發表于 2023-11-16 22:01 | 只看該作者
wulin 發表于 2023-11-16 19:04
讀、寫、清除EEPROM是在ISP環境操作。試試讀、寫、清除EEPROM時關閉總中斷。EA=0;。完成后再開總中斷。

EEPROM可以使用unsigned char/int/long code指針(匯編MOVC指令)讀取,無需配置什么ISP寄存器。
回復

使用道具 舉報

11#
ID:712072 發表于 2023-11-17 08:44 | 只看該作者
coody_sz 發表于 2023-11-16 20:43
程序問題,EEPROM只能單字節讀寫。

那怎么讀寫16位數據,我現在就是將16位數據分成兩個字節讀取,不就相當于單字節讀取嗎?
回復

使用道具 舉報

12#
ID:712072 發表于 2023-11-20 16:03 | 只看該作者
     現在算是解決了這個問題了,改了一下程序,將eeprom讀寫程序從8位改為16位就可以正確讀取數字超過640的。
     至于8位的為什么不可以,后續我再查找一下問題。

1.png (59.37 KB, 下載次數: 50)

1.png
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产福利一区二区 | 日韩精品福利 | 欧美xxxx性 | av在线播放免费 | 欧美精品久久久久 | 神马福利 | 一区二区日韩 | 国产精品久久久爽爽爽麻豆色哟哟 | 免费的网站www | 99视频免费| 亚洲精选久久 | 国产视频中文字幕 | 国产男女精品 | 免费精品 | 嫩草伊人 | 一区二区三区视频在线观看 | 国产精品美女久久久久aⅴ国产馆 | 日韩免费av一区二区 | 亚洲精品在线视频 | 国产一区中文字幕 | 日本色综合 | 久久国产成人 | 国产男女猛烈无遮掩视频免费网站 | 欧美国产中文字幕 | 日本视频在线播放 | 日本特黄a级高清免费大片 成年人黄色小视频 | 91在线免费观看 | 色偷偷噜噜噜亚洲男人 | 日韩欧美国产一区二区三区 | 国产欧美三区 | 日韩欧美在线视频一区 | 久久精品网 | 欧美群妇大交群中文字幕 | 91免费版在线 | 日韩一区二区三区在线观看 | a级片网站| 亚洲不卡视频 | 成人三级网址 | 99亚洲视频 | 精品国产乱码久久久久久88av | 国产在线视频一区二区董小宛性色 |