青少年機器人技術等級考試 實操題(五級)及評分標準(2021-9月)
主題:串口交互心形圖案顯示
器件:ESP32主控、8x8LED點陣、74HC595串口寄存器芯片(或模塊)及相關器件。
要求:
使用74HC595串口寄存器芯片控制8x8LED點陣循環(huán)顯示大小心形圖案,通過串口輸入報文來設置大小心形圖案各自的顯示時長。
報文的格式示例為:B100S300
其中:B100表示顯示大的心形圖案時長100毫秒;S300表示顯示小的心形圖案時長300毫秒。顯示時間范圍在100~999毫秒之間。
具體要求如下:
1、程序啟動后,8x8LED點陣最外側(cè)四邊的LED燈點亮,中間區(qū)域LED燈熄滅。
2、在串口監(jiān)視器窗口輸入框輸入上述格式的報文后,在串口監(jiān)視器窗口輸出解析后相應的報文內(nèi)容。以報文B100S300為例,串口監(jiān)視器窗口輸出的內(nèi)容為B-100:S-300。
3、8x8LED根據(jù)報文的內(nèi)容連續(xù)切換顯示大小兩個心形圖案。以報文B100S300為例,先顯示大的心形圖案,時長100毫秒,然后顯示小的心形圖案,時長300毫秒,依次反復,直至輸入新的報文數(shù)據(jù)。
4、程序采用C代碼編寫,不得使用外部庫調(diào)用。
5、未作規(guī)定處可自行處理,無明顯與事實違背即可。
6、編寫程序文件命名規(guī)則為:DJKS5_身份證號,考試完畢拷貝上交備案。
7、程序編寫過程中不得打開庫例程和其它程序,如發(fā)現(xiàn),實操成績按照0分處理。
?
說明:
1、數(shù)組heartB[]和heartS[]分別為大小心形的點陣數(shù)據(jù)。編程時可參考使用。
byte heartB[] = {0x99, 0x00, 0x00, 0x00, 0x81, 0xC3, 0xE7, 0xFF};
byte heartS[] = {0xFF, 0xDB, 0x81, 0x81, 0xC3, 0xE7, 0xFF, 0xFF};
?
2、String類庫的成員函數(shù)及其功能描述如下:
indexOf(val);????????? // 自左向右查找字符val在字符串對象實例中的位置。
substring(from,to) ??? // 從字符串對象實例中截取指定位置的字符串。
toInt(); ????????????? // 將字符串轉(zhuǎn)換為整數(shù)。
3、Serial類庫的成員函數(shù)及其功能描述如下:
avaiable();??????????? // 返回UART接收緩沖區(qū)中的字節(jié)數(shù)。
read();??????????????? // 從UART接收緩沖區(qū)讀取數(shù)據(jù)。
readString();????????? // 從UART接收緩沖區(qū)中讀取字符串。
?
評分組成
實操題總分100分,由兩部分組成,分別為:電路搭設和功能呈現(xiàn)。其中電路搭設分值20分,功能呈現(xiàn)80分。
電路搭設評分 -- 總分20分
本題可采用單塊74HC595移位寄存器芯片、兩塊74HC595移位寄存器芯片或74HC595移位寄存器芯片模塊進行電路搭設。如沒有采用7474HC595移位寄存器芯片,電路搭設為0分。
原器件:
(1) 74HC595移位寄存器模塊(或元器件)? 5分
(2) 8x8LED點陣???????????????????? 5分
電路搭設:
(3) 8x8LED點陣與74HC595連接?????? 5分
(4) 74HC595與主控板連接??????????????? 5分
功能呈現(xiàn)評分 -- 總分80分
(1) 程序啟動后,8x8LED點陣最外側(cè)四邊的LED燈點亮,中間區(qū)域LED燈熄滅,得10分;
(2) 實現(xiàn)在8x8LED顯示大的心形圖案,得10分;
(3) 實現(xiàn)在8x8LED顯示小的心形圖案,得10分;
(4) 通知學生輸入“B200S600”報文信息后,8x8LED正確交替顯示大小心形圖案,得15分;
(5) 通知學生輸入“B600S200”報文信息后,8x8LED正確交替顯示大小心形圖案,得15分;
(6) 實現(xiàn)當在串口監(jiān)視器窗口輸入框輸入相應報文后,串口監(jiān)視器窗口正確顯示解析后的報文信息,得20分。