找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

有沒有一本書講了單片機時間片輪詢算法,最好有例程的

[復制鏈接]
跳轉到指定樓層
樓主
ID:632248 發(fā)表于 2023-6-13 21:17 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
謝謝大家
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發(fā)
ID:883242 發(fā)表于 2023-6-13 22:01 | 只看該作者
主函數(shù)初始化完畢后就搞空while(1)死循環(huán),把查詢操作放到定時中斷里面,就是時間片,還要什么書來講???
回復

使用道具 舉報

板凳
ID:86450 發(fā)表于 2023-6-13 22:49 | 只看該作者
他問的 可能是  分時操作系統(tǒng)。 不是前后臺程序框架
回復

使用道具 舉報

地板
ID:883242 發(fā)表于 2023-6-13 23:24 | 只看該作者
jjwangxu2008 發(fā)表于 2023-6-13 22:49
他問的 可能是  分時操作系統(tǒng)。 不是前后臺程序框架

用上了RTOS這個問題就更簡單了!

以資料最豐富的μc/OS-II為例,任務調度函數(shù)有兩個,一個是OSSched(),這個函數(shù)是內部的,用戶不應該使用,是為了OSTimeDelay等延遲函數(shù)服務的,以及用于各種Message Pend函數(shù)的timeout服務,由systick定時中斷引發(fā)任務調度。另一個是OSIntExit(),這個函數(shù)由用戶放置到中斷服務函數(shù)的最后,當中斷退出后,引發(fā)一次任務調度。

那么基于μc/OS-II的應用程序有種很極端的寫法,完全不使用OSIntExit()函數(shù),這種狀態(tài)下的μc/OS-II不是實時操作系統(tǒng),而是時間片調度的分時系統(tǒng)。
回復

使用道具 舉報

5#
ID:332444 發(fā)表于 2023-6-14 14:49 | 只看該作者
這個應該是投石問路,到其他論壇問看,如果沒有就屬于空白.
單片機時間片策略當然是有的,荔枝:數(shù)碼管顯示延時的時間片,由于寫法不同,則時間片的利用也不同,
如使用if判斷延時是這樣的char ys=0;while(1){if(++ys==0){數(shù)碼管顯示}else 其他處理時間;}
如使用傻等式是這樣的char ys=0;while(1){數(shù)碼管顯示;while(++ys==0);}那么只有傻傻等呆空循環(huán)完成后才能作其他事情;
而上面用判斷的則不然,只要判斷延時還沒到的這段時間就可以執(zhí)行其他事件,這就是2種不同思路產(chǎn)生不同結果

1.jpg (7.87 KB, 下載次數(shù): 34)

1.jpg
回復

使用道具 舉報

6#
ID:632248 發(fā)表于 2023-6-14 19:48 | 只看該作者
jjwangxu2008 發(fā)表于 2023-6-13 22:49
他問的 可能是  分時操作系統(tǒng)。 不是前后臺程序框架

我就是想搞定用時間片輪詢的方法來實現(xiàn)熒光棒的效果,如果用外部中斷寫的話雖然是可以,但是實際應用中這種方法根本不可取
回復

使用道具 舉報

7#
ID:332444 發(fā)表于 2023-6-15 17:41 | 只看該作者
看荔枝,通篇不用阻塞等呆。

51hei.png (23.46 KB, 下載次數(shù): 39)

51hei.png
回復

使用道具 舉報

8#
ID:764101 發(fā)表于 2023-9-4 19:37 | 只看該作者
時間觸發(fā)嵌入式,有書有例程,網(wǎng)上可以搜到,附件是我之前收集的英文版本的,中文版本的超過20M,自行百度吧,自己網(wǎng)上找下!
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表