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

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

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2703|回復(fù): 14
收起左側(cè)

C語(yǔ)言這種宏定義怎么理解?

[復(fù)制鏈接]
ID:656213 發(fā)表于 2021-9-15 11:05 | 顯示全部樓層 |閱讀模式
也摸索了快一年的單片機(jī)了,看書(shū),開(kāi)發(fā)板上各種練習(xí),可一到實(shí)際應(yīng)用就懵逼了,下面是一段以前工程師寫(xiě)的實(shí)際項(xiàng)目代碼,完全看不懂呀,, 老手們指點(diǎn)一二,謝謝!
51hei圖片_20210915105755.png
回復(fù)

使用道具 舉報(bào)

ID:277550 發(fā)表于 2021-9-15 13:18 | 顯示全部樓層
實(shí)際代碼中,用前面的,直接用后邊的替換上去。
回復(fù)

使用道具 舉報(bào)

ID:656213 發(fā)表于 2021-9-15 14:17 | 顯示全部樓層
devcang 發(fā)表于 2021-9-15 13:18
實(shí)際代碼中,用前面的,直接用后邊的替換上去。

你講的替換我肯定是知道的,我不明白的是后面的那些表達(dá)式。
回復(fù)

使用道具 舉報(bào)

ID:480510 發(fā)表于 2021-9-15 14:33 | 顯示全部樓層
#define    key5       (1<<4) 就是1左移4位,意思是key5那個(gè)引腳設(shè)置為高電平
回復(fù)

使用道具 舉報(bào)

ID:656213 發(fā)表于 2021-9-15 15:12 | 顯示全部樓層
ByanouQ 發(fā)表于 2021-9-15 14:33
#define    key5       (1

(1<<4) 就是1左移4位,》這句能理解,    意思是key5那個(gè)引腳設(shè)置為高電平》這句理解不了,咋就成了高電平, 難道是 1左移4位=10000,  “1” 剛好對(duì)應(yīng)第5位 ?
回復(fù)

使用道具 舉報(bào)

ID:509408 發(fā)表于 2021-9-15 15:23 | 顯示全部樓層
程序都是從0開(kāi)始編號(hào)計(jì)數(shù)的 ,然后我們實(shí)際生活中大多從1開(kāi)始計(jì)數(shù)。  
比如 (1<<4) 變成10000,如果每一位(0或1)代表一個(gè)按鍵狀態(tài)(閉合或斷開(kāi)),不就可以表示5個(gè)按鍵狀態(tài)了嗎?
這樣很通俗易懂了吧
回復(fù)

使用道具 舉報(bào)

ID:656213 發(fā)表于 2021-9-15 15:30 | 顯示全部樓層
tzs233 發(fā)表于 2021-9-15 15:23
程序都是從0開(kāi)始編號(hào)計(jì)數(shù)的 ,然后我們實(shí)際生活中大多從1開(kāi)始計(jì)數(shù)。  
比如 (1

好的,謝謝,有點(diǎn)理解了。
回復(fù)

使用道具 舉報(bào)

ID:656213 發(fā)表于 2021-9-15 15:34 | 顯示全部樓層
#define        LED7(m)        (Dram[0] = Dram[0]&(~(1<<6))|(m<<6))   這句有人講解一下嗎?  里面的數(shù)據(jù)定義如下: uint8 Dram[2];     m 怎么理解,程序里面也沒(méi)有關(guān)于它的定義
回復(fù)

使用道具 舉報(bào)

ID:814525 發(fā)表于 2021-9-15 15:49 | 顯示全部樓層
主要是把這些單一離散的輸入輸出信號(hào)組合到一個(gè)寄存器中統(tǒng)一處理。比如5個(gè)按鍵經(jīng)過(guò)按鍵處理程式得到的結(jié)果是11110或00001,表示KEY1被按下;11101或00010表示KEY2被按下。一個(gè)位代表一個(gè)按鍵,依次類(lèi)推。
回復(fù)

使用道具 舉報(bào)

ID:885138 發(fā)表于 2021-9-15 20:05 來(lái)自手機(jī) | 顯示全部樓層
jiahz2019 發(fā)表于 2021-9-15 15:34
#define        LED7(m)        (Dram[0] = Dram[0]&(~(1

調(diào)用時(shí)為L(zhǎng)ED(0)或LED(1);對(duì)應(yīng)m=0或m=1
編譯時(shí)把后面定義式中的m代換為0或1
回復(fù)

使用道具 舉報(bào)

ID:885138 發(fā)表于 2021-9-15 20:09 來(lái)自手機(jī) | 顯示全部樓層
是LED7(0)或LED7(1),只是看起來(lái)像個(gè)函數(shù),實(shí)質(zhì)還是一句表達(dá)式
回復(fù)

使用道具 舉報(bào)

ID:950946 發(fā)表于 2021-9-15 23:04 | 顯示全部樓層
就是給右邊那些數(shù)字啊,公式啊之類(lèi)的一個(gè)名字,左邊那些字母就是。下次想用那些東西直接寫(xiě)他們的名字就行,也就是你定義的那些
回復(fù)

使用道具 舉報(bào)

ID:731755 發(fā)表于 2021-9-16 00:06 來(lái)自手機(jī) | 顯示全部樓層
漲知識(shí)了。
回復(fù)

使用道具 舉報(bào)

ID:81196 發(fā)表于 2021-9-16 08:44 | 顯示全部樓層
首先你得知道,單片機(jī)里邊用的執(zhí)行,其實(shí)是一堆寄存器的執(zhí)行。那么寄存器是怎么交互的呢?只能通過(guò)數(shù)據(jù)了,你這里的所有數(shù)據(jù)都是最終賦值給寄存器的,而且寄存器的每一位都有其對(duì)應(yīng)的特殊意義。
回復(fù)

使用道具 舉報(bào)

ID:656213 發(fā)表于 2021-9-16 13:54 | 顯示全部樓層
好的,謝謝你們的回答!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产特级毛片 | 中文字幕在线观看日韩 | 天天草天天射 | 蜜臀网| 国产精品永久久久久久久www | 欧美日本高清 | 伊人免费观看视频 | 欧美一级二级在线观看 | 色屁屁在线观看 | 国产在线不卡视频 | 亚洲综合免费 | av中文字幕在线播放 | 成人亚洲视频 | 欧日韩在线 | 一区二区三区视频在线 | 国产精品久久久乱弄 | 日韩免费视频一区二区 | 永久网站 | 欧美电影在线 | 欧美亚洲国语精品一区二区 | 国产精品久久久久久52avav | 久久69精品久久久久久久电影好 | 久久精品国产免费看久久精品 | 欧美国产日韩成人 | 区一区二在线观看 | 四虎影视| 99亚洲 | 91精品国产一区二区三区 | 中文字幕精品视频 | 一区二区视频在线 | 91精品在线看| 亚洲国产精品久久久久 | 91精品国产91久久久久久密臀 | 日韩人体视频 | 欧美久 | 国产一区三区在线 | 国产精品色 | 精品一区二区三区免费视频 | 久久免费资源 | 免费观看日韩精品 | 亚洲精品国产电影 |