51單片機學習之1-鎖存器驅(qū)動led燈
本文引用地址:http://m.butianyuan.cn/article/201611/323865.htm
第二集
一、單片機型號解析。
1、例子AT89S5224PU
AT—生產(chǎn)商標志,表示該器件是ATMEL公司的產(chǎn)品。
89—ATMEL公司的產(chǎn)品89系列家族(內(nèi)涵Flash存儲器)。
S—表示可在線編程。 還有C表示是CMOS產(chǎn)品、LS表示低電壓2.7V-4V、LV表示低電壓2.7V-6V、LP表示低功耗單時鐘周期指令。
52—表示存儲器的容量是8K,還有53是12K、54是16K、55是20K,51是4K、2051是2K等。
24—表示芯片的最高時鐘頻率為24MHZ。還有33MHZ、20MHZ、16MHZ等。
P—表示DIP封裝。還有 S表示SOIC封裝、 Q表示PQFP封裝、A表示TQFP封裝、J表示PLCC封裝、W表示裸芯片等。
U—表示芯片的產(chǎn)品等級為無鉛工業(yè)產(chǎn)品,溫度范圍為-40至+85℃。還有C表示商業(yè)產(chǎn)品,溫度范圍為0至+70℃;I表示工業(yè)產(chǎn)品,溫度范圍為-40至+85℃;A表示汽車用產(chǎn)品,溫度范圍為-40至+125℃;M表示軍用產(chǎn)品,溫度范圍為-55至+150℃。
二、51單片機內(nèi)部結(jié)構(gòu)8位CPU、4K的ROM、128字節(jié)RAM、4個8位并行I/O口、一個全雙工串行口,2個16位定時器/計數(shù)器,5個中斷源
單片機為TTL電平:高電平+5V低電平0V如果要和計算機通訊,因為計算機高電平-12V低電平+12V所以計算機與單片機之間通訊需要加電平轉(zhuǎn)換芯片MAX232。
三、二進制的運算
【與】:兩者都為1(真)才為1真例:1&1=10&0=00&1=01&0=0
【或】:兩者只要其中一個為1(真)則為真例:1|0=10|1=11|1=10|0=0
【非】:1則00則1例:!1=0!0=1
第三集
一、C51數(shù)據(jù)類型
1、sfr:特殊功能寄存器聲明
C51已經(jīng)為我們定義好的。如reg52.h文件里面的sfrTCON=0x88;我們可以直接操作TCON就等于操作0x88這個地址的內(nèi)容。
2、sfr16:sfr的16位數(shù)據(jù)聲明
同上。
3、sbit:特殊功能位聲明
C51已經(jīng)為我們定義好的。如reg52.h文件里面的sbitTR1=TCON^6;我們可以直接將TR1=1就等于把TCON的第6位置1
4、bit:位變量聲明
二、C51頭文件
通常有:reg51.hreg52.hmath.hctype.hstdio.hstdlib.habsacc.h
常用有:reg51.hreg52.h里面定義了特殊功能寄存器和位寄存器
math.h定義常用數(shù)學運算
三、宏定義
例:
#defineucharunsignedchar
#defineuintunsignedint
#defineulintunsignedlongint
凡是程序源碼中出現(xiàn)uchar時,在我們編譯的時候編譯器會把uchar替換成unsignedchar,uint替換成unsignedint,uling替換成unsignedlongint方便我們使用。和C的含義一樣。
四、C51運算符
與C語言基本相同
+-*/(加減乘除)
>>=<<=(大于大于等于小于小于等于)
==!=(測試等于測試不等于)
&&||?。ㄟ壿嬇c邏輯或邏輯非)例:if(Led==0)printf(“Led等于0”);
>><<(位右移位左移)
&|(按位與按位或)
^~(按位異或按位取反)
五、C-51的基本語法
與C一樣
第四集
一、74HC573鎖存芯片(主要用來擴展單片機的IO口)
74HC573引腳說明:
OE:低電平有效,要使用這個芯片OE必須為低電平芯片才會工作。
D0—D7:為輸入一般接在單片機的IO口
Q0—Q7:為輸出外圍芯片、電機、led等
LE:鎖存控制,當LE為高電平時D引腳輸入的電平狀態(tài)會直接影響Q輸出引腳的電平狀態(tài),相當于單片機的IO口可以直接操控Q輸出引腳,即單片機IO==Q==D。當LE為低電平時,無論D引腳的電平狀態(tài)怎么變動,Q的電平狀態(tài)仍維持不變。相當于Q輸出引腳與單片機的IO口隔離。
評論