亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        藍橋杯樹莓派模擬題解析三:“電子測距儀”

        2021-07-27 23:03:58牟曉東
        電腦報 2021年6期

        牟曉東

        本文以模擬題“電子測距儀”為例,進行題目解析。

        第三題“電子測距儀”(難度系數(shù)3,25個計分點):

        在日常生活中,我們經(jīng)常會需要測量距離,電子測距儀作為一種測距設(shè)備,可以很方便地幫助我們測出距離,現(xiàn)制作一個簡易的電子測距儀。

        硬件準備:

        1個按鍵模塊【接入25#引腳】,1個數(shù)碼管【接入IIC接口】,1個超聲波傳感器【接入超聲波專用接口】,杜邦線若干。

        編程實現(xiàn):

        (1)程序開始時,數(shù)碼管沒有顯示;

        (2)當按鍵按下并且按住時,數(shù)碼管顯示當前設(shè)備測試的距離值(只顯示整數(shù)部分),測量顯示的距離范圍為2-400cm;

        (3)當測量到的距離大于400或者小于2cm時,數(shù)碼管顯示4個0;

        (4)當按鍵松開時,數(shù)碼管不顯示;

        (5)如此循環(huán)。

        判斷標準:

        3分:實現(xiàn)“編程實現(xiàn)”中的(1);

        5分:實現(xiàn)“編程實現(xiàn)”中的(2);

        7分:實現(xiàn)“編程實現(xiàn)”中的(3);

        5分:實現(xiàn)“編程實現(xiàn)”中的(4);

        5分:完全符合題意。

        1.審題

        “電子測距儀”的關(guān)鍵考點是使用分支選擇結(jié)構(gòu)的嵌套,將超聲波傳感器檢測到的不同范圍距離值在數(shù)碼管上進行顯示;另外,還必須要特別注意數(shù)碼管的使用前設(shè)置(如先關(guān)閉再調(diào)節(jié)亮度等),以及如何單獨控制各個數(shù)字位的數(shù)據(jù)顯示。

        (1)通常使用的HC-SR04超聲波傳感器的有效測距范圍為2-400cm,數(shù)碼管則最多可顯示四位數(shù)字;因此,題目中的要求(2)其實也只是使用了右側(cè)的1號、2號和3號低位數(shù)碼管,最左側(cè)的0號是處于“空閑”狀態(tài)。

        (2)超聲波傳感器進行測距的返回值為9位小數(shù),必須在輸出至數(shù)碼管顯示前進行“取整”操作;還要將這個三位數(shù)進行百位、十位和個位的逐一“分解”,分別輸出至數(shù)碼管的1號、2號、3號,這步操作是該題的難點,需要使用數(shù)學中的“除法”和“取余數(shù)”相結(jié)合的操作方法來實現(xiàn)。

        (3)按鍵的編程控制部分需要使用“獲取25號按鈕檢測結(jié)果”語句,其返回結(jié)果為0和1,分別對應(yīng)“松開”和“按下”兩種狀態(tài)。

        2.實驗器材的安裝

        按照題目要求,將按鍵模塊接入25號的三個引腳;超聲波傳感器有四個引腳,接入專用接口(擴展板的20和21號);將數(shù)碼管的四個引腳(VCC、GND、SCL和SDA)接入IIC接口(Up列);最后,給樹莓派接通電源,啟動操作系統(tǒng)(如圖1)。

        3.編程實現(xiàn)“電子測距儀”

        (1)進入平臺編程環(huán)境

        訪問古德微機器人平臺(www.gdwrobot.cn)。

        (2)數(shù)碼管的“預處理”

        數(shù)碼管在調(diào)用前必須要先進行“關(guān)閉”的操作,而且題目(4)也明確有“按鍵松開時不顯示”的要求;由于數(shù)碼管的關(guān)閉需要逐個進行,為減少代碼數(shù)量,此時應(yīng)該考慮建立函數(shù)“關(guān)閉數(shù)碼管”,順序關(guān)閉0-3號數(shù)碼管。同時,在程序開始調(diào)用該函數(shù)后,添加一條“設(shè)置0號數(shù)碼管的亮度為1”語句。

        (3)構(gòu)建“外層”分支選擇結(jié)構(gòu)

        建立變量“按鍵”,為其賦值為“獲取25號按鈕檢測結(jié)果”;接著建立“如果…執(zhí)行…否則…”分支選擇結(jié)構(gòu),對變量“按鍵”的值是否為1進行判斷,是的話表示為“按下”狀態(tài),準備實現(xiàn)題目中(2)和(3)的要求;否的話(值為0),關(guān)閉數(shù)碼管顯示,實現(xiàn)題目中(4)的要求。

        (4)構(gòu)建“內(nèi)層”分支選擇結(jié)構(gòu)

        如果判斷按鍵為“按下”的狀態(tài),則建立變量“距離”,賦值為“超聲波測距”,并且增加“獲取整數(shù)”處理后進行調(diào)試信息的LOG區(qū)輸出;接著再構(gòu)建“如果…執(zhí)行…否則…”分支選擇結(jié)構(gòu),判斷超聲波測量的距離值是否在2-400cm的正常測量范圍內(nèi);否的話,使用“設(shè)置0/1/2/3號數(shù)碼管顯示0”四個語句,控制顯示4個0,實現(xiàn)題目(3)的要求;是的話,建立變量“百位”、“十位”和“個位”:

        為變量“百位”賦值為“距離除以100”,取出該三位數(shù)的最高位;

        為變量“十位”賦值為先“距離除以100”后取余數(shù)、再將余數(shù)“除以10”;

        為變量“個位”賦值為先“距離除以10”、再將商“取余數(shù)”。

        最后,分別使用三個“設(shè)置1/2/3號數(shù)碼管顯示百位/十位/個位”,其中的“并顯示點0”的意思是控制不顯示數(shù)碼管中的小數(shù)點。

        (5)完善細節(jié)

        將相關(guān)語句按照題目要求放置于“重復當真”的循環(huán)結(jié)構(gòu)中,在循環(huán)體內(nèi)的兩層分支選擇結(jié)構(gòu)的最后均添加一條“等待0.1秒”語句,防止循環(huán)過快(如圖2)。

        4.調(diào)試程序

        在平臺編程環(huán)境中點擊“連接設(shè)備”,正常的話再點擊“運行”按鈕,對照題目中的各種情況進行多次測試,包括程序開始和按鍵松開時“數(shù)碼管不顯示”、按鍵按下并且按住時的正常測距范圍(2-400cm)顯示實際測量值與超范圍時顯示4個0(如圖3),均實現(xiàn)了題目要求。

        最后將程序按照要求保存為“03.txt”,下載并上傳至考試系統(tǒng)中即可。

        5.程序“升級”

        程序代碼仍然可以進行兩處改寫“升級”:

        一是不建立變量“按鍵”,直接在外層分支選擇結(jié)構(gòu)中將“獲取25號按鈕檢測結(jié)果”作為判斷條件,因為該返回值只有0和1,與按鍵的“松開”與“按下”是對應(yīng)的——數(shù)值“1”在很多編程語言中都是表示邏輯真;二是將數(shù)碼管顯示0的四行語句從主程序中去除,將它們增加至新函數(shù)“數(shù)碼管顯示0”中,雖然在主程序中只調(diào)用一次,但整體的簡潔性會更好(如圖4)。

        再次運行程序,同樣也能夠?qū)崿F(xiàn)題目要求。

        成人国产在线播放自拍| 99久久精品日本一区二区免费| 黄色视频在线免费观看| 亚洲女同成av人片在线观看| 久久久亚洲一区二区三区| 日韩人妻另类中文字幕| 久久久无码人妻精品一区| 国产精品久久久久久2021| 日本熟妇免费一区二区三区| 青青草精品视频在线播放| 无码不卡av东京热毛片| 精品国产高清一区二区广区| 一道本中文字幕在线播放| 一个色综合中文字幕人妻激情视频 | 夫妻免费无码v看片| 白又丰满大屁股bbbbb| 伊人亚洲综合网色AV另类| 日本91一区二区不卡| 久久精品中文字幕| 老湿机香蕉久久久久久| av手机天堂| 极品粉嫩嫩模大尺度视频在线播放 | 青青草 视频在线观看| 性色av无码久久一区二区三区| 欧美成人免费看片一区| 亚洲成人av在线播放不卡| 亚洲精品二区三区在线观看| 久久天堂精品一区专区av| 日本精品视频免费观看| 人妻中文无码久热丝袜| 91视频爱爱| 亚洲av天堂一区二区| 久久人人爽爽爽人久久久| 日韩欧美亚洲综合久久影院d3| 91精品全国免费观看青青| 91精品蜜桃熟女一区二区| 午夜成人理论福利片| 亚洲va欧美va国产综合| 亚洲欧美日韩精品高清| av在线播放中文专区| 欧美老肥婆牲交videos|