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

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

QQ登錄

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

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

單片機(jī)學(xué)習(xí)札記3

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:3721 發(fā)表于 2015-1-5 14:17 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
                                                                                                單片機(jī)C51語(yǔ)言基礎(chǔ)
1.變量
C51支持的變量通常有如下類型:
bit定位在CPU片內(nèi)數(shù)據(jù)存儲(chǔ)區(qū)(RAM)的可位尋址空間中,char(unsigned char 8位):兩者直接支持機(jī)器指令。
int(8051系列CPU將整形變量的msb存放在低地址字節(jié))、long int、float
2.變量的存儲(chǔ)
8051系列單片機(jī)將程序存儲(chǔ)器(ROM)和數(shù)據(jù)存儲(chǔ)器(RAM)分開(kāi)。
3.8051片內(nèi)資源及位變量
①特殊功能寄存器
sfr,sfr16(直接尋址)
sfr P1=0x90;//定義P1口,地址90H
sfr P2=0xA0;//定義P2口,地址A0H
sfr16 T2=0xcc;這里定義8052定時(shí)器2,地址為T2L=CCH,T2H=CDH
(用sfr16定義16位特殊功能寄存器時(shí),等號(hào)后面是它的低位地址,高位地址一定要衛(wèi)浴物理低位地址之上)
sbit可以訪問(wèn)位尋址對(duì)象,可單獨(dú)訪問(wèn)SFR中的位。
㈠sbit 位變量名=位地址
sbit P1_1=0x91;sbit位地址同sfr一樣,位于80H~FFH間
㈡sbit 位變量名=特殊功能寄存器名位位置
  sfr P3=0xB0;
  sbit P3_1=P3^1;(將P3_1定義為P3口的P3.1引腳)
㈢sbit 位變量名=字節(jié)地址^位位置
sbit P3_1=0xB0^1;
②位尋址區(qū)及位變量定義
C51提供一個(gè)bdata的存儲(chǔ)器類型,用于訪問(wèn)單片機(jī)的可位尋址區(qū)的數(shù)據(jù)。
(bdata:可位尋址內(nèi)部數(shù)據(jù)寄存器(16B),允許位與字節(jié)混合訪問(wèn))
unsigned char bdata age;//在位尋址區(qū)定義unsigned char,int bdata score[i];//在可位尋址區(qū)定義數(shù)組score【 i】
sbit flag=age^1;//用關(guān)鍵字sbit定義位變量來(lái)獨(dú)立訪問(wèn)可尋址位對(duì)象其中的一位。
C51提供關(guān)鍵字“bit”實(shí)現(xiàn)位變量的定義及訪問(wèn)bit flag;//將flag定義為位變量
注意事項(xiàng):1.位變量不能定義成一個(gè)指針
2.不能定義位數(shù)組
3.bit與sbit的不同(bit不能指定位變量的絕對(duì)地址,當(dāng)需要指定位變量的絕對(duì)地址時(shí),需要使用sbit來(lái)定義)
例2 sbit flag=P1^0;
sbit定義要求基址對(duì)象的存儲(chǔ)類型為bdata,否則只有絕對(duì)的特殊位定義(sbit)是合法的。位置(^操作符)后的最大值依賴于指定的訪問(wèn)對(duì)象型,對(duì)于char,uchar而言是0-7,對(duì)于int、uint而言是0~15。
typedef(通常定義變量的數(shù)據(jù)類型時(shí)都是使用標(biāo)準(zhǔn)的關(guān)鍵字,方便別人閱讀程序。使用typedef可以方便程序的移植和簡(jiǎn)化較長(zhǎng)的數(shù)據(jù)類型定義)
注:typedef不能直接用來(lái)定義變量,它只是對(duì)已有的數(shù)據(jù)類型作一個(gè)名字上的置換,并不是產(chǎn)生一個(gè)新的數(shù)據(jù)類型
C51支持的主要編譯模式:
SMALL:函數(shù)參數(shù)及局部變量放大片內(nèi)RAM,另外所有對(duì)象包括棧都優(yōu)先放置于片內(nèi)RAM,片內(nèi)用滿再向片外RAM放置。
COMPACT:參數(shù)及局部變量放在片外RAM,通過(guò)R0,R1間接尋址,棧位于8051片內(nèi)RAM。
LARGE:參數(shù)及局部變量直接放入片外RAM,使用數(shù)據(jù)指針DPTR間接尋址。

例:定義一個(gè)可位尋址變量flag,該變量位于23H單元,用sbit指令定義該變量的八個(gè)位,變量名為flag0……flag7。運(yùn)用以上知識(shí)就不難寫出來(lái)了。呵呵。


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

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人性视频免费网站 | 成人av播放 | 99re视频在线观看 | 久久精品成人热国产成 | 91色视频在线观看 | 一级毛片网 | 亚洲精品9999| 日韩在线视频免费观看 | 国产a区| 国产亚洲精品美女久久久久久久久久 | 久久免费资源 | 日批av| 欧美激情a∨在线视频播放 成人免费共享视频 | 欧美日韩三级 | 欧美一级网站 | 男女激情网站免费 | 国产精品国产a级 | 久久久久久久一级 | 亚洲欧美国产一区二区三区 | 操夜夜 | 在线一区观看 | 日韩国产在线观看 | www亚洲免费国内精品 | 色婷婷国产精品 | 久久精品一区二区三区四区 | 啪啪毛片 | 日韩精品免费视频 | 色视频在线免费观看 | 亚洲精品视频免费 | 美女视频一区 | 日本一卡精品视频免费 | 国产在线一区二区三区 | 欧美成人猛片aaaaaaa | 国产成人综合亚洲欧美94在线 | 亚洲精品www | 欧美成人一区二区三区片免费 | 午夜精品视频 | 黄色一级电影免费观看 | 久久av影院 | 国产精品久久久久久久久久东京 | 亚洲69p|