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

標題: 基于51單片機的萬年歷設計HEX文件太大無法燒錄 [打印本頁]

作者: wuqing12345    時間: 2024-4-23 08:41
標題: 基于51單片機的萬年歷設計HEX文件太大無法燒錄
求各位大佬指點一下,hex文件燒錄不進去顯示太大了不知道怎么辦了最后一步呢求各位大佬啊!

屏幕截圖 2024-04-23 085925.png (140.14 KB, 下載次數: 63)

屏幕截圖 2024-04-23 085925.png

11.png (193.54 KB, 下載次數: 53)

11.png

新建 WinRAR ZIP 壓縮文件.zip

185.26 KB, 下載次數: 22


作者: cy009    時間: 2024-4-23 10:19
89C52RC只有8K,換芯片吧
作者: devcang    時間: 2024-4-23 10:47
換大內存的單片機,或縮減程序
作者: dj3365191    時間: 2024-4-23 10:56
STC89C52RC的存儲只有8K,要換單片機了
作者: joyb    時間: 2024-4-23 11:22
試了一下,可以燒錄,仿真存成低版本,打不開
作者: wuqing12345    時間: 2024-4-23 11:31
dj3365191 發表于 2024-4-23 10:56
STC89C52RC的存儲只有8K,要換單片機了

我看有人說變量加xdata不知道什么意思
作者: wuqing12345    時間: 2024-4-23 11:34
dj3365191 發表于 2024-4-23 10:56
STC89C52RC的存儲只有8K,要換單片機了

大佬如果要換單片機可以給推薦一下不,內存夠的不用動代碼的有沒有啊拜托了

作者: Graves    時間: 2024-4-23 11:49
STC89C53RC
作者: npn    時間: 2024-4-23 15:53
程序里若有code的只讀數組可以放進EEPROM里 (是否能優化具體看程序)
作者: lids    時間: 2024-4-23 15:58
wuqing12345 發表于 2024-4-23 11:34
大佬如果要換單片機可以給推薦一下不,內存夠的不用動代碼的有沒有啊拜托了

自己選吧

51hei截圖_20240423155714.png (560.04 KB, 下載次數: 66)

51hei截圖_20240423155714.png

作者: wuqing12345    時間: 2024-4-23 16:24
npn 發表于 2024-4-23 15:53
程序里若有code的只讀數組可以放進EEPROM里 (是否能優化具體看程序)

大佬可以麻煩您幫我看一看程序嗎,我改不出來里面有很多只讀數組。拜托大佬了
作者: wuqing12345    時間: 2024-4-23 16:26
qq475878026 發表于 2024-4-23 11:49
STC89C53RC

大佬這個型號可以不用動代碼直接使用嗎
作者: Graves    時間: 2024-4-23 16:52
wuqing12345 發表于 2024-4-23 16:26
大佬這個型號可以不用動代碼直接使用嗎

不清楚,沒用過53。估計是可以的,手冊把51、52、53寫在一起了。實際情況還是得看看手冊行不行
作者: Hephaestus    時間: 2024-4-23 17:21
wuqing12345 發表于 2024-4-23 16:24
大佬可以麻煩您幫我看一看程序嗎,我改不出來里面有很多只讀數組。拜托大佬了

你的代碼非常簡單,什么51都能用,大是大在漢字點陣字庫上面了,只要你一定要顯示漢字就無解。
作者: aidianzi    時間: 2024-4-23 18:59
你單片機內部ROM不夠 換16K FLASH的或者更大的
作者: rayin    時間: 2024-4-24 08:05
可以換STC12C5A60 的型號, 有60K的flash空間. 做萬年歷夠用了.
作者: 大漠落日    時間: 2024-4-24 18:12
換芯片吧,要不簡化程序,把萬年改成若干年的,縮小編譯后的大小
作者: Hephaestus    時間: 2024-4-24 19:22
大漠落日 發表于 2024-4-24 18:12
換芯片吧,要不簡化程序,把萬年改成若干年的,縮小編譯后的大小

你還是親自看看他那個程序到底大在哪里,不要憑空想象。
作者: wuqing12345    時間: 2024-4-24 20:54
rayin 發表于 2024-4-24 08:05
可以換STC12C5A60 的型號, 有60K的flash空間. 做萬年歷夠用了.

大佬這個可以直接用不用動代碼嘛
作者: wuqing12345    時間: 2024-4-24 23:34
npn 發表于 2024-4-23 15:53
程序里若有code的只讀數組可以放進EEPROM里 (是否能優化具體看程序)

大佬可以幫忙指導修改一下嘛 我試了半天變量加Xdata不成功拜托了
作者: yzw846562238    時間: 2024-4-25 08:42
wuqing12345 發表于 2024-4-24 23:34
大佬可以幫忙指導修改一下嘛 我試了半天變量加Xdata不成功拜托了

加xdata不行的,加了占用flash空間反而更大了。xdata一般是data空間不夠用了再用
作者: heyanrog    時間: 2024-4-25 17:37
把那些注釋刪了再編譯,文件就小了
作者: donglw    時間: 2024-4-25 18:27
wuqing12345 發表于 2024-4-23 11:31
我看有人說變量加xdata不知道什么意思

xdata 常用于單片機內存片外擴展,這需要更改電路,直接換一個存儲內存大一點的芯片即可。
作者: Hephaestus    時間: 2024-4-25 19:22
wuqing12345 發表于 2024-4-24 23:34
大佬可以幫忙指導修改一下嘛 我試了半天變量加Xdata不成功拜托了

他們都是不看你的代碼不負責任亂說的,你的真正執行的代碼非常簡單,RAM完全夠用,不需要加XDATA。你的問題是漢字點陣字庫占用了太多flash,只要找flash大的型號就行了。
作者: hclin    時間: 2024-4-25 23:35
你的 character.h 實在有夠大。
簡化顯示在12864的畫面,89c52 應該就擠的下去。
作者: STC莊偉    時間: 2024-4-26 09:39
你咋不用帶RTC的芯片呢  現在都是標配了,九毛九的STC8H2K08U也有RTC
作者: lhzw2001    時間: 2024-4-26 10:15
沒辦法,程序那么大,唯有換芯
作者: holikey    時間: 2024-4-26 11:27
換stc12,有引腳兼容的64KBflash型號,另外可以檢查看看程序優化等級是否為最高
作者: wuqing12345    時間: 2024-4-30 15:15
Hephaestus 發表于 2024-4-25 19:22
他們都是不看你的代碼不負責任亂說的,你的真正執行的代碼非常簡單,RAM完全夠用,不需要加XDATA。你的問 ...

大佬我換了STC89C58RD+可以燒錄進去了但是屏幕顯示有點問題大佬可以給看一看嗎


作者: 五六    時間: 2024-4-30 19:41
屏幕顯示的只讀數組用xdata放在eeprom,keil可以設置程序優化等級,拉到最高再次驗證程序。
作者: 五六    時間: 2024-4-30 19:41
屏幕顯示的只讀數組用xdata放在eeprom,keil可以設置程序優化等級,拉到最高再次驗證程序。
作者: 3253087609ydrq    時間: 2024-5-20 22:10
換成stc12c5a60s2吧,五塊錢60KB,10位ADC,處理速度還比c52快,
作者: rundstedt    時間: 2024-5-20 23:12
五六 發表于 2024-4-30 19:41
屏幕顯示的只讀數組用xdata放在eeprom,keil可以設置程序優化等級,拉到最高再次驗證程序。

基礎沒學好,只讀是code空間,xdata是讀寫,樓主的問題是code空間不夠了。
作者: ztzp    時間: 2024-5-21 00:44
heyanrog 發表于 2024-4-25 17:37
把那些注釋刪了再編譯,文件就小了

注釋又不參與編譯,刪除了也不會影響文件大小。
作者: 2300606886    時間: 2024-7-13 17:18
STC89C53RCRC
作者: hezezeze    時間: 2024-8-7 17:17
面對51單片機設計萬年歷時遇到的HEX文件過大無法燒錄的問題,可以采取以下幾個策略來優化和解決:  1. **代碼優化**:    - **刪除不必要的代碼**:檢查并刪除不使用的函數、代碼段或數據,特別是那些在運行過程中不被調用的部分。    - **使用更高效的算法**:對循環、數據處理等部分優化算法,減少內存和執行時間的消耗。    - **變量類型優化**:選擇合適的變量類型,例如使用更小的整數類型(比如使用char或short代替int),在不損失必要精度的情況下減少內存占用。  2. **使用更小的編譯器**:    - **選擇更緊湊的編譯器**:不同的編譯器對代碼的優化程度不同,選擇專門針對51單片機且優化程度高的編譯器可能會減少代碼大小。    - **編譯器選項**:在編譯選項中選擇更緊湊的代碼生成,如減少注釋生成、優化庫函數使用等。  3. **資源管理**:    - **內存管理**:合理使用全局變量和靜態變量,減少動態分配的內存使用。    - **結構和數組的優化**:如果使用了大量數組和結構體,考慮優化其大小,比如使用指針代替數組,或者將數組聲明為靜態局部變量。  4. **代碼重用**:    - **共享庫**:如果代碼中存在重復的函數或模塊,考慮將其封裝為庫文件,減少重復代碼的大小。  5. **HEX文件編輯**:    - **手動編輯HEX文件**:雖然不太常規,但可以嘗試手動減少HEX文件的大小,例如刪除不必要的數據點或使用更緊湊的格式。    - **使用HEX編輯器**:使用專門的HEX文件編輯工具,嘗試調整和優化文件結構。  6. **硬件資源**:    - **考慮使用更高級的單片機**:如果可能,升級至更先進的51單片機型號,它們可能提供更大的內存空間或更多的功能,從而可以容納較大的程序。  7. **外部存儲器**:    - **使用SRAM或EEPROM擴展**:如果內存不足,考慮使用外部RAM或EEPROM來存儲一些不經常訪問的數據,從而減少程序HEX文件的大小。  8. **重新設計**:    - **模塊化設計**:將萬年歷功能分解為多個模塊,只燒錄需要的模塊到單片機,其余模塊可以使用外部存儲或通過其他方式訪問。  9. **驗證和測試**:    - **分階段燒錄**:驗證程序在單片機上的正確性,逐步增加功能模塊,以確保每個階段的程序能夠正確燒錄和運行。  通過上述方法的綜合運用,可以有效減小HEX文件的大小,從而解決無法燒錄的問題。




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 激情做爰呻吟视频舌吻 | 亚洲一区二区三区免费 | 午夜精品久久久久久久久久蜜桃 | 国产又粗又黄又爽又硬的视频 | 九九久久精品视频 | 国产丝袜视频 | 亚洲免费网站 | 三级在线播放 | 无套内谢的新婚少妇国语播放 | 久久人人爽人人爽人人片 | 麻豆国产一区二区三区四区 | 欧美一区二区视频在线观看 | 日韩三级久久 | 四虎免费在线观看 | 91成人在线观看喷潮 | 欧美性生交 | 亚洲成人免费网站 | 成人a毛片| 日韩图色| 深夜视频在线观看 | www亚洲天堂 | 免费国产一区二区 | brazzers精品成人一区 | www.九九热 | 欧美成人精品激情在线观看 | 亚洲经典av | 少妇福利视频 | 欧美福利视频 | 精品国产91乱码一区二区三区 | 国产又粗又长又爽 | 亚洲激情自拍 | 欧美激情视频网站 | 国产成人精品亚洲男人的天堂 | 国产又粗又黄又爽又硬的视频 | 男女av在线| www.四虎.com | www.婷婷.com | 亚洲精品一级 | 另类在线视频 | 九九精品在线视频 | 国产精品99久久久久久久久 |