好久沒(méi)發(fā)些東西了,本來(lái)想做點(diǎn)東西可是由于種種原因擱淺了
前兩天在網(wǎng)上看到一個(gè)帖子,是幾年前的,帖子的內(nèi)容是關(guān)于單片機(jī)菜單程序的,只是關(guān)鍵的菜單項(xiàng)索引部分,看到了之后就在想自己也寫一個(gè),一開始想按照他的思路寫的,寫的過(guò)程中發(fā)現(xiàn)不大好寫,尤其在多級(jí)菜單方面不怎么好處理,于是寫不下去了,于是去網(wǎng)上找些資料看看,看到一個(gè)帖子是說(shuō)“一個(gè)占用內(nèi)存最小的菜單程序”(總結(jié)出來(lái)就是把菜單大部分內(nèi)容存到ROM里),看了一會(huì)發(fā)覺有點(diǎn)意思,但是也想到有關(guān)顯示刷新部分不大好理解,菜單索引部分雖然顯然易懂,通用性也強(qiáng),就是不大好處理顯示部分
繼續(xù)上網(wǎng),發(fā)現(xiàn)個(gè)顯示部分處理的比較好的例子,理解了之后就開始整合兩個(gè)好的程序,寫的過(guò)程中終于走出了自己的路子,直接在Proteus中仿真實(shí)現(xiàn)
程序使用五個(gè)鍵,實(shí)際目前使用三個(gè)(上,下,菜單/確認(rèn))默認(rèn)屏幕下按菜單/確認(rèn)進(jìn)入菜單,在返回到顯示模式之前,該鍵功能是確定,程序的架構(gòu)是LCD時(shí)鐘,相應(yīng)修改可實(shí)現(xiàn)移植,相當(dāng)方便,更改硬件只要修改源文件中的硬件接口部分,其他地方不需要修改
操作:上(選中上一項(xiàng))
下(選中下一項(xiàng))
菜單項(xiàng)中的back表示返回到上一級(jí)菜單
菜單項(xiàng)中的back to screen表示返回到默認(rèn)屏幕