[英]increment a value at uBoot prompt?
我希望找到一種方法來從uBoots命令提示符增加RAM中的值。
簡而言之,我的設備上的地址0xc4000000是一個臨時變量,我需要遞增
想法?
您可以使用U-Boot命令
,它取目的地,變量1,操作和變量2。
U-Boot> setexpr count ${count} + 1
但是在某些舊版本的U-Boot中,不包含此命令。 如果是這種情況,您可能需要重新編譯更新的U-Boot。
如果你不能這樣做並且你仍然是絕望的,你可以編寫嵌套的“if”語句來將你的數字增加為一個字符串。 如果您需要將其存儲以供日后使用,請定期將其保存到非易失性存儲(NAND或EEPROM)中。 如果你這樣做,那么以HEX計算,你必須將你的字符串與“f”,“1f”,“2f”等進行比較,具體取決於你需要計算多高。
這是一個可行的基本代碼:
setenv ones "."
setenv tens "."
setenv hundreds "."
setenv thousands "."
setenv full ".++++++++++"
setenv doCountOnes 'if test ${ones} = ${full}; then setenv ones ".";setenv tens ${tens}+ ; else setenv ones ${ones}+; fi'
setenv doCountTens 'if test ${tens} = ${full}; then setenv tens ".";setenv hundreds ${hundreds}+ ; fi'
setenv doCountHundreds 'if test ${hundreds} = ${full}; then setenv hundreds ".";setenv thousands ${thousands}+ ; fi'
setenv printCount 'echo;echo **********************************************;echo ${thousands} Thousand ${hundreds} Hundred ${tens} Ten and ${ones};echo **********************************************'
setenv doCount 'run doCountOnes; run doCountTens; run doCountHundreds'
setenv mainLoop 'run yourTestHere; run doCount; run printCount'
要運行此腳本,請鍵入:
run mainLoop
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.