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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

51單片機(jī)lcd1602按鍵切屏

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
大家好,我又來了,這次是基礎(chǔ)切屏(我也只會(huì)這基礎(chǔ)。。),我用的是stc15w4k56s4的單片機(jī),作用是,可以使用和51一樣的操作。

切屏
切屏:
例如我想在兩個(gè)屏幕之間切換:
1、先把每個(gè)屏幕應(yīng)該顯示的效果給存起來


2、再把兩個(gè)屏幕的顯示操作寫成函數(shù)形式(也可以直接寫在主函數(shù)中,但是這樣的話,主函數(shù)里就很臃腫,所以為了美觀和方便操作,一般寫成函數(shù)形式,直接調(diào)用函數(shù)就好,但是注意,沒有使用的函數(shù),系統(tǒng)會(huì)給警告)


3、寫按鍵掃描函數(shù)

我使用兩個(gè)按鍵,一個(gè)按鍵代表一個(gè)屏幕,這里要注意的是,我使用了清屏指令,我們可以先從顯示操作函數(shù)的形象版看看:

我是用一個(gè)變量m來依次顯示字符,如果要切換屏幕的話,就讓m返回起點(diǎn)“m=0”,讓它重新“跑”(m還挺辛苦的),切屏后,讓它返回起點(diǎn),那么如果之前跑過了lcd1字符串,那么它從起點(diǎn)開始跑,是用“替換”的方法跑,如果它沒跑完之前l(fā)cd1的長(zhǎng)字符串,那也就是說它只替換了之前的那一部分,后面還留有一部分沒有替換,所以就得出了個(gè)道理:m它不能自動(dòng)清掉它之前跑過的地方。那么我們只能再找個(gè)工人:指令設(shè)置函數(shù)(寫指令函數(shù))我用wcmd命名,01H是清屏指令。
還有要注意的就是按鍵抬起,如果沒有按鍵抬起,那么如果我的按鍵是“按一下就+1”那么單片機(jī)就會(huì)一直循環(huán)+1,
4、主函數(shù):

可以看到,由于我都是把操作指令給寫成函數(shù),所以主函數(shù)就直接調(diào)用,是不是很美觀,除了美觀還有個(gè)神奇功能!你可以右鍵某個(gè)函數(shù),有項(xiàng)Go to definition of”xx”然后就可以直接飛到那個(gè)函數(shù)去!
I/O口初始化可以不用看,我用的是stc15w4kxxs4系列。
需要看的是while(1)這部分,這部分我花了好長(zhǎng)時(shí)間才懂:
while(1)是等待
為啥是等待?因?yàn)樗恢睘?(1就是真),當(dāng)它為真時(shí),不跳出循環(huán),為0(假)才能出來;
為啥加這個(gè)東西?這就要另外個(gè)知識(shí)點(diǎn),我們使用的是C語(yǔ)言,是機(jī)器語(yǔ)言,所以我們要學(xué)會(huì)C語(yǔ)言,就只需要讀懂C語(yǔ)言這個(gè)機(jī)器語(yǔ)言而已,C語(yǔ)言是按照主函數(shù)中的順序讀下來的,當(dāng)讀到某個(gè)調(diào)用函數(shù),就Go to調(diào)用的函數(shù),讀里面的數(shù)據(jù),再返回主函數(shù)繼續(xù),while(1)是為真就不跳出,這么一個(gè)死循環(huán)(它別稱死循環(huán)),當(dāng)主函數(shù)讀到while(1)時(shí),就一直等它跳出,(main:大哥咋那么久啊啊);
那我不加行不行?我之前說主函數(shù)是一直讀它里面的程序,如果不加的話它就會(huì)一直這樣讀下去,大家可以看看不加回是什么樣的情況,數(shù)據(jù)就會(huì)一閃一閃的(因?yàn)閙在一直跑啊!),所以要加等待讓主函數(shù)停住(在這停頓!)。
關(guān)于while(1)之前說了,它為真時(shí),不跳出,為假時(shí)才跳出,那么什么時(shí)候?yàn)榧倌兀@就要看它肚子里的貨了,如果肚子里沒貨,那就要一直等,這時(shí)就為1;當(dāng)有1和2兩個(gè)貨時(shí),1貨突然報(bào)警了,這時(shí)1貨就為真,它就優(yōu)先處理1貨,就等1貨被干掉;當(dāng)2貨報(bào)警了,那它又去處理2貨,這時(shí)2貨就為真,它又要去處理2貨,又要等它被干掉。
以上,我是這么理解的,專業(yè)的我不懂,大家聽專業(yè)的也可能聽不懂,所以就先給大家一個(gè)形象的認(rèn)識(shí),今后再接觸專業(yè)的知識(shí)就能事半功倍了。

評(píng)分

參與人數(shù) 3黑幣 +58 收起 理由
erdan同學(xué) + 3
zqy181818 + 5 贊一個(gè)!
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:130231 發(fā)表于 2018-1-8 22:35 | 只看該作者
實(shí)用,不錯(cuò)!多謝分享!
回復(fù)

使用道具 舉報(bào)

板凳
ID:507959 發(fā)表于 2019-4-11 11:14 | 只看該作者
為什么 我切屏的時(shí)候,還保留沒切屏的時(shí)候的數(shù)據(jù)
回復(fù)

使用道具 舉報(bào)

地板
ID:535834 發(fā)表于 2019-8-2 19:26 | 只看該作者
erdan同學(xué) 發(fā)表于 2019-4-11 11:14
為什么 我切屏的時(shí)候,還保留沒切屏的時(shí)候的數(shù)據(jù)

要刷屏!
回復(fù)

使用道具 舉報(bào)

5#
ID:59423 發(fā)表于 2019-10-19 14:10 | 只看該作者
解釋的很通透,理解起來簡(jiǎn)單。
回復(fù)

使用道具 舉報(bào)

6#
ID:675814 發(fā)表于 2019-12-28 00:36 | 只看該作者
請(qǐng)問如果想要用一個(gè)按鍵來控制切屏的話應(yīng)該怎樣做?
回復(fù)

使用道具 舉報(bào)

7#
ID:502152 發(fā)表于 2020-5-3 21:20 | 只看該作者
想知道,可以不用通過復(fù)位鍵直接按兩個(gè)按鍵切換顯示內(nèi)容嗎?
回復(fù)

使用道具 舉報(bào)

8#
ID:502460 發(fā)表于 2020-5-3 23:44 | 只看該作者
erdan同學(xué) 發(fā)表于 2019-4-11 11:14
為什么 我切屏的時(shí)候,還保留沒切屏的時(shí)候的數(shù)據(jù)

估計(jì)是沒有清屏,把清屏函數(shù)調(diào)用一下。
回復(fù)

使用道具 舉報(bào)

9#
ID:862380 發(fā)表于 2020-12-22 20:46 | 只看該作者
niuquanwang 發(fā)表于 2020-5-3 23:44
估計(jì)是沒有清屏,把清屏函數(shù)調(diào)用一下。

這個(gè)你有完整程序嗎,實(shí)在不會(huì)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 视频一区二区在线观看 | 一区二区三区四区在线视频 | 国产精品免费一区二区三区四区 | 日韩av成人在线 | 日韩精品一区二区三区中文字幕 | 国产精品一区二区三区在线 | 久久人人爽人人爽人人片av免费 | 久久久久久国产 | 日韩欧美一区二区三区免费观看 | 色久电影 | 全部免费毛片在线播放网站 | 欧美日韩成人影院 | 亚洲精品电影网在线观看 | 高清国产午夜精品久久久久久 | 国产精品视频久久 | 日日干夜夜操天天操 | 成人国产精品久久久 | 久久亚洲一区二区 | 精品国产三级 | 99色综合| 在线观看日韩 | 丁香六月激情 | 精品国产91 | 黄色毛片免费看 | 精品国产鲁一鲁一区二区张丽 | 欧美亚洲成人网 | 久热精品免费 | 亚洲高清在线观看 | 一区二区三区av夏目彩春 | 精品久久国产 | 日本色综合| 色婷婷精品国产一区二区三区 | 久久国产精品99久久久大便 | 91色站| 天天躁日日躁aaaa视频 | 亚洲一区在线观看视频 | 欧美成年黄网站色视频 | 欧美在线视频a | www.99久久.com| 国产精品视频一区二区三区四区国 | 亚洲国产区 |