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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3090|回復(fù): 23
打印 上一主題 下一主題
收起左側(cè)

關(guān)于節(jié)約單片機(jī)系統(tǒng)CPU算力

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:155811 發(fā)表于 2022-3-31 12:17 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
減少cpu的運(yùn)算時(shí)間,就可以降低晶振的頻率也能有相同的效率,所以更節(jié)能.


用 時(shí)鐘芯片制作 數(shù)碼管單片機(jī)時(shí)鐘,常規(guī)做法是,每個(gè)主循環(huán) 從時(shí)鐘芯片讀一次整個(gè)時(shí)間,
然后把時(shí)間數(shù)據(jù)從bcd 轉(zhuǎn)換成 十進(jìn)制, 再把十進(jìn)制的每一位分解成個(gè)位數(shù),
再刷新數(shù)碼管緩存,顯示時(shí)間.


正確的做法, 程序啟動(dòng)時(shí)讀一次 時(shí)鐘芯片的時(shí)間, 如果數(shù)碼管不顯示秒,
每隔 大約一分鐘,讀一次 時(shí)鐘芯片的分?jǐn)?shù)據(jù), 這樣其實(shí)不會(huì)積累誤差, 然后轉(zhuǎn)換分鐘數(shù)據(jù),
刷新數(shù)碼管的分 緩存.

評(píng)分

參與人數(shù) 1黑幣 +40 收起 理由
admin + 40 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:401564 發(fā)表于 2022-3-31 23:57 | 只看該作者
對(duì)于一個(gè)數(shù)碼時(shí)鐘,1MHZ以上的晶振,隨便一個(gè)8位單片機(jī)都是一件輕松的事,壓根就不需要節(jié)約什么CPU算力,節(jié)約出來干嘛?你怕單片機(jī)累了?
效率這個(gè)東西要用在需要的地方
讀取時(shí)間是一直在讀取,基本是沒停過,如果有按鍵,掃描完按鍵,顯示完了就讀取
一分鐘讀取一次,就很容易給人一種"你這個(gè)鐘比北京時(shí)間慢一分鐘"的感覺
回復(fù)

使用道具 舉報(bào)

板凳
ID:47286 發(fā)表于 2022-4-1 09:28 | 只看該作者
我認(rèn)為節(jié)約算力的目的是干更多的事 而不是沒事就讓cpu閑著 一個(gè)單片機(jī)省的電還沒一個(gè)線性穩(wěn)壓芯片自己消耗的多 省它有啥意義
回復(fù)

使用道具 舉報(bào)

地板
ID:299872 發(fā)表于 2022-4-1 10:07 | 只看該作者
這也是夠省的
回復(fù)

使用道具 舉報(bào)

5#
ID:155811 發(fā)表于 2022-4-1 12:15 | 只看該作者
精益求精還有人說不應(yīng)該
回復(fù)

使用道具 舉報(bào)

6#
ID:47286 發(fā)表于 2022-4-1 13:41 | 只看該作者
himanzj 發(fā)表于 2022-4-1 12:15
精益求精還有人說不應(yīng)該

這不是應(yīng)該不應(yīng)該的問題 是樓主沒定義前提 或者說沒說明如此操作的出發(fā)點(diǎn)是什么

cpu這東西只要上電就不會(huì)停 即使你什么都不干 它也在工作 也在消耗能源 我們先不說麒麟乃至i5 i7之類的東西 那是另外一種情況 只說51到stm32這類的小東西

我實(shí)測過 除了休眠模式 即便是待機(jī)模式 耗電量都小不到哪去 就說待機(jī)模式 cpu耗電量能小一半 看著很大 但問題是 cpu一共才消耗幾毫安 小一半這點(diǎn)節(jié)能相對(duì)于外圍零件的耗電量幾乎什么都不是 亮一顆LED都能秒殺

能耗上不考慮的話 就說到算力的問題 前面說了 這種小東西的算力總共就那么點(diǎn) 節(jié)省算力的目的是什么 為了降頻么 那你一個(gè)單片機(jī)就只去讀時(shí)鐘芯片是么 那是省還是浪費(fèi) 如果不僅僅讀時(shí)鐘 還要顯示時(shí)間 或者采集ADC 或者其它什么什么吧 你覺得能耗會(huì)省下來么 相反可能因?yàn)榻殿l引起其它工作遲滯 對(duì)么 節(jié)省算力的目的是為了不耽誤其它工作 這個(gè)邏輯算合理吧 于是 結(jié)論就明確了 只要不影響其它工作就無需考慮增加讀時(shí)鐘的間隔

就算放寬間隔 不需要計(jì)數(shù)器么 計(jì)數(shù)器會(huì)不斷計(jì)數(shù)吧 那不消耗能源么 那不是等于閑著還更多消耗能源么 不是更浪費(fèi)了么 正常的思路是如將算力發(fā)揮到極限 至少我個(gè)人編程的思想一直是只要它還干得動(dòng) 就給它找更多的活干

很多設(shè)計(jì)實(shí)例都在努力降頻 努力節(jié)省算力 但那不是目的 只是一種選擇 因?yàn)槟茉聪拗?比如用電池又需要很長續(xù)航 只能在算力和能耗上取舍 樓主的說法也沒錯(cuò) 但我開始就說了 這不是錯(cuò)不錯(cuò)的問題 是前提問題 而這點(diǎn)樓主并沒說明 對(duì)吧 既然沒前提沒范圍 有別的看法不正常么
回復(fù)

使用道具 舉報(bào)

7#
ID:155811 發(fā)表于 2022-4-1 15:46 | 只看該作者
按你的說法,程序都不要優(yōu)化了,反正都一樣
回復(fù)

使用道具 舉報(bào)

8#
ID:155811 發(fā)表于 2022-4-1 15:54 | 只看該作者
正常的人,應(yīng)該從這例子歸納從方法,再推廣應(yīng)用,不是程序不應(yīng)該優(yōu)化,而噴人
回復(fù)

使用道具 舉報(bào)

9#
ID:123289 發(fā)表于 2022-4-1 16:44 | 只看該作者
【減少cpu的運(yùn)算時(shí)間,就可以降低晶振的頻率也能有相同的效率,所以更節(jié)能.】
不贊同:
晶振的頻率是死的,不可以隨意降低的。如果強(qiáng)行將12M的換成6M的,那么整體速率都減一倍,合適嗎。

【用時(shí)鐘芯片制作數(shù)碼管單片機(jī)時(shí)鐘,常規(guī)做法是,每個(gè)主循環(huán) 從時(shí)鐘芯片讀一次整個(gè)時(shí)間,
然后把時(shí)間數(shù)據(jù)從bcd 轉(zhuǎn)換成 十進(jìn)制, 再把十進(jìn)制的每一位分解成個(gè)位數(shù),再刷新數(shù)碼管緩存,顯示時(shí)間.
正確的做法, 程序啟動(dòng)時(shí)讀一次 時(shí)鐘芯片的時(shí)間, 如果數(shù)碼管不顯示秒,
每隔 大約一分鐘,讀一次 時(shí)鐘芯片的分?jǐn)?shù)據(jù), 這樣其實(shí)不會(huì)積累誤差, 然后轉(zhuǎn)換分鐘數(shù)據(jù),
刷新數(shù)碼管的分 緩存.】

不贊同:
1、讀不讀時(shí)鐘芯片的耗電是一樣的,不一樣只發(fā)生在:時(shí)鐘芯片有沒有休眠模式,只有芯片休眠時(shí)才省點(diǎn)電。
2、即使CPU不運(yùn)行“從bcd 轉(zhuǎn)換成 十進(jìn)制, 再……”的程序,CPU的耗電也是一樣的,除非你讓進(jìn)入CPU休眠模式。
所以,所謂“正確的做法……”,依據(jù)就不足了。
樓主的提法,少了讀“時(shí)鐘芯片”的次數(shù),但需要增加了輔助的計(jì)時(shí)程序,也省不了多少CPU的運(yùn)行時(shí)間。

建議的省電做法是:
1、盡量讓所有的芯片,多多地處于休眠狀態(tài)。本例中,盡量讓“時(shí)鐘芯片”、“CPU”長期處于休眠狀態(tài)。
2、不要主動(dòng)去讀“時(shí)鐘芯片”,而是讓“時(shí)鐘芯片”在需要時(shí)間變更時(shí),產(chǎn)生中斷,換醒CPU,這時(shí)CPU再讀時(shí)間,譯碼、切換顯示,完成后再次進(jìn)入休眠。
3、其實(shí)耗電最多的是【數(shù)碼管】,它遠(yuǎn)大于樓主討論的。
相對(duì)于【數(shù)碼管】的耗電,少讀幾次“時(shí)鐘芯片”,或省點(diǎn)運(yùn)行時(shí)間,意義不太大。
個(gè)人習(xí)慣上,主循環(huán)程序的最后一句,是讓CPU休眠的。
回復(fù)

使用道具 舉報(bào)

10#
ID:401564 發(fā)表于 2022-4-1 16:58 | 只看該作者
himanzj 發(fā)表于 2022-4-1 15:46
按你的說法,程序都不要優(yōu)化了,反正都一樣

你這叫優(yōu)化?
關(guān)鍵是,你把節(jié)省出來的單片機(jī)時(shí)間拿來干嘛了?并沒有呀,就算是帶溫度顯示,自動(dòng)調(diào)節(jié)亮度,GPS自動(dòng)授時(shí),整點(diǎn)播報(bào),鬧鐘設(shè)定,隨便一個(gè)1MHZ的8位單片機(jī),做起這種事情來,那也是輕松到不行的一件事,那"優(yōu)化"有什么意義?
而用你的方法,只會(huì)讓一個(gè)產(chǎn)品更加降低檔次
你不想一下,一分鐘讀取一次,時(shí)間顯示就很容易有一種"慢一分鐘"的顯示效果,你沒有考慮過這個(gè)?對(duì)于用戶而已,鐘表能跟北京時(shí)間一樣準(zhǔn),那才是他們關(guān)心的
至于單片機(jī)累不累,他們會(huì)考慮這個(gè)?
一秒鐘讀取一次跟一分鐘讀取一次有什么區(qū)別?單片機(jī)整體運(yùn)行會(huì)慢嗎?不會(huì)呀
回復(fù)

使用道具 舉報(bào)

11#
ID:883242 發(fā)表于 2022-4-1 17:23 | 只看該作者
大家都沒注意到樓主最大的漏洞在“每隔 大約一分鐘,讀一次 時(shí)鐘芯片的分?jǐn)?shù)據(jù)”這句話嗎?

這個(gè)1分鐘是從哪里來的?還不是單片機(jī)定時(shí)器產(chǎn)生的嗎?定時(shí)器工作的時(shí)候單片機(jī)又不能休眠,只能瞎j8跑,根本就沒節(jié)約什么算力,更不可能帶來省電的效果。
回復(fù)

使用道具 舉報(bào)

12#
ID:155811 發(fā)表于 2022-4-1 17:38 | 只看該作者
Hephaestus 發(fā)表于 2022-4-1 17:23
大家都沒注意到樓主最大的漏洞在“每隔 大約一分鐘,讀一次 時(shí)鐘芯片的分?jǐn)?shù)據(jù)”這句話嗎?

這個(gè)1分鐘是從 ...

大約一分鐘好嗎, 不是要你再用一個(gè) 時(shí)鐘準(zhǔn)確計(jì)時(shí)一分鐘
回復(fù)

使用道具 舉報(bào)

13#
ID:155811 發(fā)表于 2022-4-1 17:40 | 只看該作者
dzbj 發(fā)表于 2022-4-1 13:41
這不是應(yīng)該不應(yīng)該的問題 是樓主沒定義前提 或者說沒說明如此操作的出發(fā)點(diǎn)是什么

cpu這東西只要上電就 ...

按你的說法,我還是把程序改回原來的, 每個(gè)主循環(huán)讀一次整個(gè)時(shí)間,
回復(fù)

使用道具 舉報(bào)

14#
ID:883242 發(fā)表于 2022-4-1 17:45 | 只看該作者
himanzj 發(fā)表于 2022-4-1 17:38
大約一分鐘好嗎, 不是要你再用一個(gè) 時(shí)鐘準(zhǔn)確計(jì)時(shí)一分鐘

只要你的單片機(jī)還在瞎跑,不管是精確還是大約,都不是節(jié)約算力。
回復(fù)

使用道具 舉報(bào)

15#
ID:401564 發(fā)表于 2022-4-1 23:20 | 只看該作者
himanzj 發(fā)表于 2022-4-1 17:38
大約一分鐘好嗎, 不是要你再用一個(gè) 時(shí)鐘準(zhǔn)確計(jì)時(shí)一分鐘

好幾個(gè)網(wǎng)友都在反對(duì)你的建議,你還不知道問題出現(xiàn)在哪里嗎?
回復(fù)

使用道具 舉報(bào)

16#
ID:47286 發(fā)表于 2022-4-2 01:37 | 只看該作者
himanzj 發(fā)表于 2022-4-1 17:40
按你的說法,我還是把程序改回原來的, 每個(gè)主循環(huán)讀一次整個(gè)時(shí)間,

如果你只是讀時(shí)鐘這么點(diǎn)事 改回去沒什么問題

讀時(shí)鐘的消耗主要是io口模擬I2C或者spi通訊時(shí)必須的延時(shí) 不管用for 用nop還是用什么 反正都要死等一會(huì) 那么短的延時(shí)用計(jì)時(shí)器沒意義 一般就是死等 這時(shí)候cpu什么都干不了 累積多了對(duì)進(jìn)行其它任務(wù)有影響 如果用硬件spi或者i2c 除非你打算把51當(dāng)系統(tǒng)用 否則什么都不用考慮

靠減少指令節(jié)能基本就是然并卵的事 標(biāo)壓i7也不會(huì)這么干 何況一個(gè)mcu 耗電量還沒一個(gè)紅led大
回復(fù)

使用道具 舉報(bào)

17#
ID:47286 發(fā)表于 2022-4-2 01:53 | 只看該作者
himanzj 發(fā)表于 2022-4-1 17:38
大約一分鐘好嗎, 不是要你再用一個(gè) 時(shí)鐘準(zhǔn)確計(jì)時(shí)一分鐘

是為了反對(duì)而反對(duì)么

不管你怎么大約 就算你非說10秒就是1分鐘 那也得有個(gè)準(zhǔn)數(shù)吧 那這數(shù)怎么來的 死循環(huán)么 計(jì)時(shí)器么 或者其它什么算法 哪樣不開銷算力

我們的茅盾在于 你認(rèn)為cpu什么都沒干就省電了 而我認(rèn)為這是最大的浪費(fèi) 因?yàn)椴还苣阕尣蛔宑pu干活 它都在不停的干活 如果你不用它 那就是白白的耗電而沒創(chuàng)造任何價(jià)值 哪怕是沒價(jià)值的價(jià)值也沒有

大cpu主動(dòng)降頻節(jié)能是因?yàn)楸緛硭碾娏看?熱功至少要20W以上吧 這還是節(jié)能型的 別說51 stm32能比么 而它的算力遠(yuǎn)遠(yuǎn)超過大部分應(yīng)用的消耗

移動(dòng)電子頻繁休眠節(jié)能并不是它喜歡 是因?yàn)槟壳暗碾姵丶夹g(shù)還不夠給力 是為了更長時(shí)間工作而做出的妥協(xié) 每次休眠要保存環(huán)境 每次起動(dòng)要恢復(fù)環(huán)境 這些都是算力開銷 比不休眠大太多了 這也說明單純靠減少指令實(shí)現(xiàn)節(jié)能是多么不靠譜
回復(fù)

使用道具 舉報(bào)

18#
ID:57657 發(fā)表于 2022-4-2 06:47 | 只看該作者
配置 CLK_DIV 寄存器,即可降低功耗。
功耗取決于一個(gè)時(shí)鐘周期有多少晶體管狀態(tài)改變,以及開關(guān)頻率。
回復(fù)

使用道具 舉報(bào)

19#
ID:155811 發(fā)表于 2022-4-2 12:22 | 只看該作者
dzbj 發(fā)表于 2022-4-2 01:53
是為了反對(duì)而反對(duì)么

不管你怎么大約 就算你非說10秒就是1分鐘 那也得有個(gè)準(zhǔn)數(shù)吧 那這數(shù) ...

,又轉(zhuǎn)移話題說了一大堆,可惜已經(jīng)%%了
回復(fù)

使用道具 舉報(bào)

20#
ID:47286 發(fā)表于 2022-4-2 13:34 | 只看該作者
himanzj 發(fā)表于 2022-4-2 12:22
,又轉(zhuǎn)移話題說了一大堆

好吧 那就簡單點(diǎn) 你的想法是然并
回復(fù)

使用道具 舉報(bào)

21#
ID:883242 發(fā)表于 2022-4-2 14:29 | 只看該作者
himanzj 發(fā)表于 2022-4-2 12:22
,又轉(zhuǎn)移話題說了一大堆,可惜已經(jīng)%%了

%%的是你。連實(shí)測數(shù)據(jù)都沒有就拍腦袋說。
回復(fù)

使用道具 舉報(bào)

22#
ID:155811 發(fā)表于 2022-4-2 16:37 | 只看該作者
Hephaestus 發(fā)表于 2022-4-2 14:29
%%的是你。連實(shí)測數(shù)據(jù)都沒有就

你怎么知道我沒有實(shí)測 ,是你自己不拿證據(jù)說話
回復(fù)

使用道具 舉報(bào)

23#
ID:883242 發(fā)表于 2022-4-2 21:19 | 只看該作者
himanzj 發(fā)表于 2022-4-2 16:37
你怎么知道我沒有實(shí)測 ,是你自己不拿證據(jù)說話

有實(shí)測數(shù)據(jù)拿出來啊,拿不出來%%?
回復(fù)

使用道具 舉報(bào)

24#
ID:155811 發(fā)表于 2022-4-4 14:27 | 只看該作者
dzbj 發(fā)表于 2022-4-2 01:53
是為了反對(duì)而反對(duì)么

不管你怎么大約 就算你非說10秒就是1分鐘 那也得有個(gè)準(zhǔn)數(shù)吧 那這數(shù) ...

我都程序?qū)崿F(xiàn)了,你還糾結(jié)一分還是10秒,
還有你降頻節(jié)能是一方面,難道就可以不要優(yōu)化程序了,
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 九九久久国产精品 | www.日本三级 | 伊人二区| 成人影院在线 | 99久久婷婷国产亚洲终合精品 | 欧美在线不卡 | 久久久在线视频 | 999精品视频 | 日韩在线看片 | 国产福利视频 | 成人精品鲁一区一区二区 | 99色播 | 在线播放国产一区二区三区 | 久久伊人操| 成人h片在线观看 | 亚洲精品一区二区三区中文字幕 | 大陆一级毛片免费视频观看 | 天天综合干 | 久久综合久久综合久久综合 | 国产一区二区成人 | 国产成人精品免高潮在线观看 | 成人a视频片观看免费 | 国产精品视频导航 | 一级黄色短片 | 国产丝袜一区二区三区免费视频 | 欧美在线观看一区 | 国产二区av| 99精品99久久久久久宅男 | 亚洲情综合五月天 | 日日操夜夜操天天操 | 少妇无套高潮一二三区 | 午夜免费观看 | 久久久噜噜噜久久中文字幕色伊伊 | 国产精品久久久久久久午夜片 | 一区在线免费视频 | 国产视频久久 | 欧美激情综合 | 精品一区二区在线观看 | 九色91视频 | 天天干狠狠操 | 日本又色又爽又黄的大片 |