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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

一種基于系統(tǒng)節(jié)拍時間的單片機程序設(shè)計模式( 思想的提出 -01)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:249272 發(fā)表于 2019-12-2 16:58 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 水漫金山2017 于 2019-12-3 09:00 編輯

   

    單片機又稱微控制器,其工作原理與PC機相似,也就是存儲程序和程序控制的工作方式。這里的程序有可能是匯編語言也有可能是C語言,但這里我們即將要討論的不是用哪種語言編寫程序的問題。我想和大家討論的是一種程序設(shè)計模式,也就是討論一下單片機程序設(shè)計中的一種比較通用,合理的方法。當(dāng)然了,這里還是以C語言程序設(shè)計作為例程。我們都知道,從微觀上來講,CPU只能一條條的執(zhí)行指令。(這里為方便討論問題,有可能不區(qū)分指令和程序)。也就是說,在微觀上來講,CPU在某一個時刻,只能執(zhí)行一個指令動作,這是我們要明白的第一點。第二點,我們還要知道單片機中還有一個特別好的運行機制,那就是中斷。中斷可以讓任勞任怨的CPU專注于眼前的事情,而不必時刻“擔(dān)心”著“突然事件”。待到“突然事件”發(fā)生,CPU再轉(zhuǎn)頭去處理。還有一點,我們要明白,那就是單片機的主頻越高,指令執(zhí)行的越快。(當(dāng)然了,頻率高帶來的附作用,也不是我們這篇文章要討論的)。知道了以上三點,我們現(xiàn)在就開始有關(guān)文章主題的討論。
    平時生活中,我們經(jīng)常用快慢這兩個字。比如說,這個人做事真快,吃飯也快,寫程序也快,總之吃喝拉撒,衣食住行都快。那么一個人做事快,有什么好處呢?很明顯,節(jié)約時間,能處理更多的事情,看起來像是很多事情同時做了一樣。慢,則一切相反。對單片機這種MHZ頻率的機器來講,實現(xiàn)”看起來像”同時處理更多的事情更是不在話下。這也是單片機程序能并發(fā)的物質(zhì)基礎(chǔ)之一。單片機雖然快,但我們也不能隨隨便便把所有任務(wù)都直接丟給單片機去處理,那樣會出問題的。比如,我們在剛一接觸單片機程序設(shè)計時,會這樣寫程序://主程序:                                 //中斷服務(wù)程序
void main()                                void ISR(void)
{                                               {
      //初始化單片機系統(tǒng)                  Task1();
                                                    Task2();
         Inital()                                  Task3();               
                                                }
      //超級循環(huán)
     while(1)
     {
           Task1();
           Task2();
           Task3();
     }
}
這樣寫單片機程序會因為一個任務(wù)的“阻塞”而耽誤其他程序的實時響應(yīng)。比如,Task1,是一個按鍵掃描程序,其中有大概10ms的消抖時間,如果我們在程序中直接寫一個delay_10ms()程序,那么Task2和Task3勢必會因為這個延時而耽誤運行。所以,為了解決類似這樣的沖突,我們提出了一種單片機程序設(shè)計模式,一種基于系統(tǒng)節(jié)拍時間的程序設(shè)計模式。這種設(shè)計模式的思想是,在一個系統(tǒng)節(jié)拍時間到來,只運行其中一任務(wù)(注意,一定是一個任務(wù))。所謂節(jié)拍時間是單片機系統(tǒng)提供給每一個任務(wù)的運行時間。在實際應(yīng)用中,其實每個任務(wù)的最低響應(yīng)時間要求可以是不同的,比如,按鍵可以10 - 20ms掃描一次,動態(tài)掃描的LED,總的刷新周期不超過20ms,人眼還是可以接受的,再比如,溫度數(shù)據(jù)采集甚至可以500ms一次,正因為這些差異我們可以實現(xiàn)單片機程序的“并發(fā)執(zhí)行“。






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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91电影| 亚洲国产成人在线视频 | 精品国产一级 | 亚洲国产欧美91 | 国产亚洲精品久久午夜玫瑰园 | 密色视频| 91伊人 | 国产农村一级国产农村 | 一区二区精品 | 久久久国产亚洲精品 | 91精品久久久久久久久久 | 国产免费一区二区 | 日本成人久久 | 激情六月天 | xxx视频| 一级看片免费视频囗交动图 | 狠狠爱综合网 | 国产在线aa | 91在线网站 | 天天爱av | 一区二区三区国产好 | 九九热精| 亚洲综合日韩精品欧美综合区 | 五月综合久久 | 国产激情| 视频一区二区在线 | 久久久妇女国产精品影视 | 成人二区 | 中国一级特黄毛片大片 | 精品一区二区免费视频 | 又黄又爽的网站 | 国产精品乱码一区二区三区 | 99热电影| 日韩一区二区在线看 | 欧美xxxx网站 | 亚洲视频免费 | 成人免费小视频 | 成年免费大片黄在线观看一级 | 日韩三级在线观看 | 婷婷久久精品一区二区 | 亚洲福利在线观看 |