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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機C語言怎樣分解變量?

[復制鏈接]
跳轉到指定樓層
樓主
ID:965189 發表于 2022-7-6 22:10 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
以前這樣可以的
uint bnm;                //16位變量
uchar bnmh,bnml;   //變量的高8位,低8位
void main()
{
   bnmh=bnm/256;
   bnml=bnm%256;
   bnm=bnmh*256+bnml;
   IapErase(0x0400);             //扇區擦除
   IapProgram(0x0400,bnmh);    //保存高8位
   IapProgram(0x0401,bnml);    //保存低8位
}
以前STC15F單片機保存后讀出的數正常。現在用STC8G2K64S4,保存讀出不正常了。頻率提高了,發現要調整的地方都調了。其它功能正常,就這個16位變量結果不對。
各位還有其它方法嗎?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1036305 發表于 2022-7-7 08:52 | 只看該作者
可能是類型轉換的問題,試試這樣寫:

bnmh=(uchar)(bnm>>8 &0XFF);
bnml=(uchar)(bnm%256 & 0xFF);
回復

使用道具 舉報

板凳
ID:814525 發表于 2022-7-7 08:59 | 只看該作者
STC8G2K64S4的EEPROM為IAP類型,應該是存儲地址不對
回復

使用道具 舉報

地板
ID:883242 發表于 2022-7-7 09:31 | 只看該作者
顯然是兩個單片機的IapProgram()不一樣導致的。
回復

使用道具 舉報

5#
ID:213173 發表于 2022-7-7 09:56 | 只看該作者
STC8G2K64S4是IAP型,沒有固定EEPROM地址,使用前需要把EEPROM地址定位到用戶程序結束后一個扇區和最后一個扇區之間的任意扇區。代碼示例:
        IapErase(0xA800);             //扇區擦除
        IapProgram(0xA800,bnm>>8);    //保存高8位
        IapProgram(0xA800+1,bnm);    //保存低8位
回復

使用道具 舉報

6#
ID:401564 發表于 2022-7-7 10:00 | 只看該作者
如果是你的代碼曾經在STC15F上成功過,那問題點就不是出在變量分解上,而是出現EEPROM的函數上
回復

使用道具 舉報

7#
ID:965189 發表于 2022-7-7 11:35 | 只看該作者
wulin 發表于 2022-7-7 09:56
STC8G2K64S4是IAP型,沒有固定EEPROM地址,使用前需要把EEPROM地址定位到用戶程序結束后一個扇區和最后一個 ...

按你和各位大俠的提示,我改變目標地址后可以存取了。還有一個問題請教大俠,你寫的分解很簡潔,讀出來后怎樣組合呢?請給個示例學習學習。
回復

使用道具 舉報

8#
ID:195496 發表于 2022-7-7 11:57 | 只看該作者
分解變量用聯合,不過每種平臺要確認大小端問題
回復

使用道具 舉報

9#
ID:213173 發表于 2022-7-7 13:49 | 只看該作者
君工創 發表于 2022-7-7 11:35
按你和各位大俠的提示,我改變目標地址后可以存取了。還有一個問題請教大俠,你寫的分解很簡潔,讀出來后 ...

      bnm=IapReadByte(0xA800)<<8 | IapReadByte(0xA800+1);
回復

使用道具 舉報

10#
ID:965189 發表于 2022-7-7 14:02 | 只看該作者
wulin 發表于 2022-7-7 13:49
bnm=IapReadByte(0xA800)

非常多謝大俠指教。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产在线观看 | 99九九久久| 国产一区二区三区日韩 | 九九精品久久久 | 久久久福利| 欧洲一区二区三区 | 国产小视频在线观看 | 精品久久精品 | 精品粉嫩aⅴ一区二区三区四区 | 青青草在线视频免费观看 | 狠狠综合久久av一区二区老牛 | 亚洲欧美一区二区三区国产精品 | 99热激情 | 人人人人干 | 欧美aaa级| 久久在线视频 | 北条麻妃一区二区三区在线视频 | 在线看免费 | 亚洲精品乱码久久久久久按摩 | 午夜精品一区二区三区在线 | 国产精品自产拍在线观看蜜 | 国产成人精品一区二 | 日韩一区二区三区av | 中文字幕日韩在线观看 | 国产一级特黄真人毛片 | 色婷婷婷婷色 | 一区二区三区中文字幕 | 国产99久久久国产精品 | 日韩亚洲欧美综合 | 国产h视频 | 91久久久久久久久 | 天天操天天拍 | 国产精品欧美一区二区 | 老牛影视av一区二区在线观看 | 天天久久 | 九九激情视频 | 国产精品18久久久久久久 | 国产在线网站 | 国产成人小视频 | 亚洲欧洲在线看 | 久久久久亚洲精品国产 |