您的位置 首页 动态

c8051f020 I/O装备小结

c8051f020IO配置小结020的每个IO口引脚都可以被配置为推挽或漏极开路输出。同时引入了数字交叉开关,允许将内部数字系统资源映射到P0、

c8051f020 I/O装备小结
020的每个I/O口引脚都能够被装备为推挽或漏极开路输出。一起引入了数字交叉开关,答应将内部数字体系资源映射到P0、P1、P2和P3的端口引脚。经过设置交叉开关寄存器可将片内的计数器/定时器、串行总线、硬件中止、ADC转化发动输入、比较器输出以及微操控器内部的其他数字信号装备为呈现在端口I/O引脚。有必要在拜访这些外设的I/O之前装备和答应交叉开关。

留意的问题:

1.低端口既能按位寻址,也能够按字节寻址;高端口只能按字节寻址。

2.没有被分配到的引脚作为一般的数字通用I/O口。

3.P1口还能够用作ADC1的模仿输入。

4.P0MDOUT~P3MDOUT用于操控I/O端口每一位的输出状况。

5.EMIF(外部存储器接口)是用于CPU与片外XRAM之间的数据传输通道,经过寄存器EMI0CF和EMI0CN挑选和办理端口完成数据的传输。

6.为了能拜访片外存储器空间,有必要设置EMI0CN寄存器的内容为片外存储器的空间页地址。

7.假如把外部存储器接口(EMIF)设置在高端口则首要要把EMI0CF的PRTSEL位设置为1,挑选高端口,一起挑选地址的复用或非复用办法,在把XBR的外部寄存器的EMIFLE位设置为0。

8.复用办法装备:在复用办法下,数据总线和地址总线的第8位共用相同的引脚(AD0~AD7)。在该办法下,要用一个外部锁存器(如74HC373或相同功用的锁存器)坚持RAM地址的低8位。外部锁存器由ALE(地址锁存使能)信号操控,ALE信号由外部存储器接口逻辑驱动。

9.在总线复用时,需求把地址数据复用端口装备为漏极开路。

10.ALE高/低脉宽占1个SYSCLK周期,地址树立/坚持时刻占0个SYSCLK周期,/WR和/RD占12个SYSCLK周期,EMIF作业在地址/数据复用办法,即:EMI0CF |= 0x2c;EMI0TC |= 0x2c;装备EMIF的过程是:先将EMIF选到低端口或高端口;然后挑选复用办法或非复用办法;再挑选存储器的方法(只用片内存储器、不带块挑选的分片办法、带块挑选的分片办法或只用片外存储器);然后设置EMI0TC;最终经过寄存器PnMDOUT和P74OUT挑选所希望的相关端口的输出办法。如:

void PORT_Init (void)
{
XBR2= 0x40;
P74OUT |= 0xff;
EMI0CF |= 0x2c;
EMI0TC |= 0x6c;
P3MDOUT |= 0xdf;

}

11.防止高端口处于“浮空”状况,以防止因输入浮空为无效逻辑电平而导致不必要的功率耗费,为此应采纳如下办法的任何一种:a.将XBR2.7位设置为逻辑0挑选弱上拉状况

R/WR/WR/WR/WR/WR/WR/WR/W复位值
WEAKPUDXBARET4EXET4EUART1EEMIFLECNVSTE00000000
位7位6位5位4位3位2位1位0SFR地址

位7 WEAKPUD 弱上拉制止位
0 弱上拉大局答应
1 弱上拉大局制止
位6 XBARE 交叉开关答应位
0 交叉开关制止端口0 1 2 和3 的一切引脚被强制为输入办法
1 交叉开关答应
位5 未用读0 写=疏忽
位4 T4EXE T4EX 输入答应位
0 T4EX 不连到端口引脚
1 T4EX 连到端口引脚
位3 T4E T4 输入答应位
0 T4 不连到端口引脚
1 T4 连到端口引脚
位2 UART1E UART1 I/O 答应位
0 UART1 I/O 不连到端口引脚
1 UART1 TX 和RX 连到两个端口引脚
位1 EMIFLE 外部存储器接口低端口答应位
0 P0.7 P0.6 和P0.5 的功用由交叉开关或端口锁存器决议
1 假如EMI0CF.4 = 0 外部存储器接口为复用办法
则P0.7 (/WR) P0.6 (/RD)和P0.5 (/ALE)被交叉开关越过它们的输出
状况由端口锁存器和外部存储器接口决议
1 假如EMI0CF.4 = 1 外部存储器接口为非复用办法
则P0.7 (/WR)和P0.6 (/RD)被交叉开关越过它们的输出状况由端口锁
存器和外部存储器接口决议
位0 CNVSTE 外部转化发动输入答应位
0 CNVSTR 不连到端口引脚
1 CNVSTR 连到端口引脚;

b.令P74OUT=0xFF,将高端口输出办法装备为推拉办法(P74OUT为高端口输出办法寄存器);

c.向高端口数据寄存器P4、P5、P6和P7写0。

12.装备端口引脚的输出办法
每个端口引脚的输出办法都可被装备为漏极开路或推挽办法。在推挽办法下向端口数据寄存器中的相应位写逻辑0 将使端口引脚被驱动到GND 写逻辑1 将使端口引脚被驱动到VDD ,在漏极开路办法下向端口数据寄存器中的相应位写逻辑0 将使端口引脚被驱动到GND 写逻辑1 将使端口引脚处于高阻状况,当体系中不同器材的端口引脚有同享衔接。即多个输出衔接到同一个物理线时(例如SMBus 衔接中的SDA 信号),运用漏极开路办法能够防止不同器材之间的抵触。(推挽办法在有些书中称为推拉办法)

转载-关于开漏、推挽办法2008-01-27 17:53漏级开路即高阻状况,适用于输入/输出,其可独立输入/输出低电平和高阻状况,若需求发生高电平,则需运用外部上拉电阻或运用如LCX245等电平转化芯片。有些朋友,尤其是未学过此方面常识的朋友,在实际作业中将I/O口设置为漏开,并想输出高电平,但向口线上写1后对方并未认出高电平,但用万用表丈量引脚确有电压,这种认为是不对的,关于高阻状况来说,丈量电压是无意义的,正确的办法应是外加上拉电阻,上拉电阻的阻值=上拉电压/芯片引脚最大灌(拉)电流。
推挽办法可彻底独立发生凹凸电平,推挽办法为低阻,这样,才干确保口线上不分走电压或分走极小的电压(可疏忽),确保输出与电源相同的高电平,推挽适用于输出而不适用于输入,由于若对推挽(低阻)加高电平后,I=U/R,I会很大,将形成口的焚毁。

对与C8051F的许多类型片子,将I/O口设置为推挽办法的做法为:PnMDOUT=0xff,Pn=0x00,这样设置I/O口为推挽,并输出低电平(可降低功耗)将I/O口设置为漏开办法的做法为:PnMDOUT=0x00,Pn=0x11,这样设置I/O口为漏开。

假如学过三极管扩大电路必定知道,前置单管扩大器和功放末级扩大电路的差异。单片机内部的逻辑经过内部的逻辑运算后需求输出到外面,外面的器材或许需求较大的电流才干推进,因而在单片机的输出端口有必要有一个驱动电路。

这种驱动电路有两种方法:

其间的一种是选用一只N型三极管(npn或n沟道),以npn三极管为例,便是e接地,b接内部的逻辑运算,c引出,b受内部驱动能够操控三极管是否导通但假如三极管的c极一向悬空,虽然b极上发生凹凸改变,c极上也不会有凹凸改变,因而在这种条件下有必要在外部供给一个电阻,电阻的一端接c(引出脚)另一端接电源,这样当三极管的b有高电压是三极管导通,c电压为低,当b为低电压时三极管不通,c极在电阻的拉动下为高电压,这种驱动电路有个特色:低电压是三极管驱动的,高电压是电阻驱动的(上下不对称),三极管导通时的ec内阻很小,因而能够供给很大的电流,能够直接驱动led乃至继电器,但电阻的驱动是有限的,最大高电平输出电流=(vcc-Vh)/r;

另一种是互补推挽输出,选用2只晶体管,一只在上一只鄙人,上面的一只是n型,下面为p型(以三极管为例),两只管子的衔接为:npn(上)的c连vcc,pnp(下)的c接地,两只管子的ee,bb相连,其间ee作为输出(引出脚),bb接内部逻辑,这个电路一般用于功率扩大点路的末级(音响),当bb接高电压时npn管导通输出高电压,由于三极管的ec电阻很小,因而输出的高电压有很强的驱动才干,当bb接低电压时npn到,pnp导通,由于三极管的ec电阻很小因而输出的低电压有很强的驱动才干,简略的比如,9013导通时ec电阻不到10欧,以Vh=2.5v,vcc=5v核算,高电平输出电流最大=250MA,短路电流500ma,这个核算一起告知咱们选用推挽输出时必定要当心千万不要呈现外部电路短路的或许,不然必定焚毁芯片,特别是外部驱动三极管时别忘了在三极管的基极加限流电阻。推挽输出电路的方法许多,有些单片机上下都选用n型管,但内部逻辑供给互补输出,以上的阐明只是为了阐明推挽的原理,为了更深的了解能够参阅功率扩大电路。

‍推挽办法可彻底独立发生凹凸电平,推挽办法为低阻,这样,才干确保口线上不分走电压或分走极小的电压(可疏忽),确保输出与电源相同的高电平,推挽适用于输出而不适用于输入,由于若对推挽(低阻)加高电平后,I=U/R,I会很大,将形成口的焚毁。

对与C8051F的许多类型片子,将I/O口设置为推挽办法的做法为:PnMDOUT=0xff,Pn=0x00,这样设置I/O口为推挽,并输出低电平(可下降功耗)将I/O口设置为漏开办法的做法为:PnMDOUT=0x00,Pn=0x11,这样设置I/O口为漏开。

推挽输出0的时分和开漏特性相同,便是1的时分能够当作直接接VCC.
推挽输出的驱动才干适当强,由于输出1就等于接到了VCC.而一起推挽输出的IO也需求留意不要直接接到地,不然一旦输出1,就等于VCC经过内部的场效应管直接到地了,这时分IO端发热就很大,时刻长就就拜拜了.
你看到DX32试验板上,按键部分都是串了个300欧才到地的,便是为了防止IO误操作,使这些输入变成推挽输出1而做的维护.
以此为规划根据,一般情况下,一切的IO都尽量防止直接到地,即便这个IO你是计划用来做输入的.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/260327.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部