STC51单片机IO口模式快速设置.doc

STC51单片机IO口模式快速设置.doc

ID:54698247

大小:163.00 KB

页数:3页

时间:2020-04-19

STC51单片机IO口模式快速设置.doc_第1页
STC51单片机IO口模式快速设置.doc_第2页
STC51单片机IO口模式快速设置.doc_第3页
资源描述:

《STC51单片机IO口模式快速设置.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、STC51单片机IO口模式的快速设置新型51单片机STC系列,较传统51单片机在性能和速度上有根本性的提高。速度提高8—12倍;片上RAM大量增加;片上外围模块大量增加,等等。其中IO口的模式增加为4种(传统51只有1中),以P0口为例:这里,每个端口新增两个寄存器PxM0,PxM1(x=0,1,2,3)。在设置每一个IO端的模式时都需要对这两个寄存器进行操作。比如:要将P0.7设为推挽输出,P0.6设为准双向口,P0.5设为高阻输入;P0.4设为开路模式,P0.3---P0.0都设为准双向口,那么需要如下的代码:IO_

2、Init(){P0M0=0x30;//00110000P0M1=0x90;//10010000}这样的设置不便于记忆,很容易写错,且写好的代码可读性差,为此,我们可以通过一个宏定义来解决,具体如下:#definePORT00#definePORT11#definePORT22#definePORT33#defineBIT00#defineBIT11#defineBIT22#defineBIT33#defineBIT44#defineBIT55#defineBIT66#defineBIT77#defineSTANDARD0

3、#definePP_OUT1#defineZ_IN2#defineOD3#defineIOMODE(Port,bit_n,mode){switch(Port){case0:switch(mode){caseSTANDARD:P0M0&=~(1<

4、=(1<

5、=(1<

6、caseOD:P0M0

7、=(1<

8、=(1<

9、=(1<

10、=(1<

11、=(1<

12、P1M1

13、=(1<

14、=(1<

15、=(1<

16、=(1<

17、=(1<

18、break;case3:switch(mode){caseSTANDARD:P3M0&=~(1<

19、=(1<

20、=(1<

21、=(1<

22、=(1<

23、序中可以直接这样写IO_Init(){IOMODE(PORT0,BIT7,PP_OUT)IOMODE(PORT0,BIT6,STANDARD)IOMODE(PORT0,BIT5,Z_IN)IOMODE(PORT0,BIT4,OD)IOMODE(PORT0,BIT3,STANDARD)IOMODE(PORT0,BIT2,STANDARD)IOMODE(PORT0,BIT1,STANDARD)IOMODE(PORT0,BIT0,STANDARD)}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。