色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AVR單片機(jī)的控制系統(tǒng)設(shè)計(jì)

          基于AVR單片機(jī)的控制系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2013-12-12 來(lái)源:網(wǎng)絡(luò) 收藏

          注意到多通道的參數(shù)設(shè)置項(xiàng)完全相同,ID為111,112,.,118的菜單分支完全一樣,ID為121和122的菜單分支也完全相同。可以定義一種,從而刪去ID為112~118以及ID為122的菜單節(jié)點(diǎn)和子節(jié)點(diǎn)(虛線框所示),其上級(jí)菜單(ID為11和ID為12)的項(xiàng)目中的total值均變?yōu)?。為了區(qū)別不同的通道分支,有兩種實(shí)現(xiàn)辦法:

          一種處理方法采用全局變量

          增加一個(gè)g_CODER_Channel_Number的全局變量,用于保存當(dāng)前的通道號(hào)。在menuselect函數(shù)中,增加一個(gè)針對(duì)本系統(tǒng)設(shè)計(jì)的一個(gè)判斷,當(dāng)ID為11時(shí),則不修改對(duì)應(yīng)的g_pmenu->cur,而是直接修改變量g_CODER_Channel_Number,進(jìn)入對(duì)應(yīng)的顯示函數(shù)后,直接根據(jù)g_CODER_Channel_Number判斷通道號(hào),從而輸出對(duì)應(yīng)的值。這種方法不需要改變系統(tǒng)設(shè)計(jì)的結(jié)構(gòu),但需要針對(duì)不同的系統(tǒng)修改主處理函數(shù)menuselect。

          另一種處理方法在菜單結(jié)構(gòu)中增加一個(gè)MenuSibling結(jié)構(gòu),定義為

          typedef struct _menuSibling{

          signedcharcur;
          signedchartotal;
          }SIBLING;
          同時(shí)對(duì)應(yīng)的菜單結(jié)構(gòu)修改為
          typedefstructmenu{
          ...
          SIBLINGSibling;
          }MENU;

          這樣,ID為11的結(jié)構(gòu)項(xiàng)的Sibling.total為8,Sibling.cur為當(dāng)前的子菜單項(xiàng)。判斷到total>0且Sibling.total>0時(shí),可知其下一級(jí)菜單為SIB2LING菜單,此時(shí)以前需修改cur想的操作則修改Sibling.cur即可。這種設(shè)計(jì)下,每個(gè)節(jié)點(diǎn)增加了2B的空間,但是保證的程序的一致性,對(duì)于不同的系統(tǒng)其設(shè)計(jì)基本一致。

          以上菜單項(xiàng)的設(shè)計(jì)用于系統(tǒng)設(shè)置部分,當(dāng)退出系統(tǒng)設(shè)置時(shí),即進(jìn)入系統(tǒng)循環(huán)檢測(cè)部分。單片機(jī)通過(guò)RS-485接口檢測(cè)各個(gè)通道是否正常,當(dāng)正常時(shí)則顯示為綠燈,出現(xiàn)異常則顯示為紅燈,黃燈為中間狀態(tài)。指示燈的流程參見(jiàn)圖4。

          基于AVR單片機(jī)的控制系統(tǒng)設(shè)計(jì)

          圖4 循環(huán)檢測(cè)的指示燈流程

          結(jié)束語(yǔ)

          按照本文提供的方法優(yōu)化后的設(shè)計(jì),可以滿足大多數(shù)的多通道輸入/輸出系統(tǒng)的的需要,整個(gè)系統(tǒng)的設(shè)計(jì)主要在于建立一個(gè)菜單樹(shù),將對(duì)應(yīng)的節(jié)點(diǎn)編號(hào),再編寫(xiě)對(duì)應(yīng)的節(jié)點(diǎn)處理函數(shù)即可。這種設(shè)計(jì)使得程序的開(kāi)發(fā)、維護(hù)都很容易,具有較強(qiáng)的可擴(kuò)展性和可移植性。

          陀螺儀相關(guān)文章:陀螺儀原理



          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉