版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C8051F的每个I/O 口引脚都可以被配置为推挽或漏极开路输岀。同时引入了数字交叉开关,允许将 内部数字系统资源映射到 PO P1、P2和P3的端口引脚。通过设置交叉开关寄存器可将片内的计数 器/定时器、串行总线、硬件中断、ADC转换启动输入、比较器输岀以及微控制器内部的其他数字信号配置 为岀现在端口 I/O引脚。必须在访问这些外设的I/O之前配置和允许交叉开关。注意的问题:1. 低端口既能按位寻址,也可以按字节寻址;高端口只能按字节寻址。2. 没有被分配到的引脚作为一般的数字通用I/O 口。口还可以用作ADC1的模拟输入。P3MD0L用于控制I/O端口每一位的输岀状态。(外部存储器接口)是
2、用于 CPU与片外XRAM之间的数据传输通道,通过寄存器EMIOCF和EMIOCN选择和管理端口实现数据的传输。6. 为了能访问片外存储器空间,必须设置EMIOCN寄存器的内容为片外存储器的空间页地址。7. 如果把外部存储器接口( EMIF)设置在高端口则首先要把 EMIOCF的 PRTSEI位设置为1,选择高端口,同时选择地址的复用或非复用方式,在把XBR的外部寄存器的EMIFLE位设置为0。8. 复用方式配置:在复用方式下,数据总线和地址总线的第 8位共用相同的引脚(AD0AD7。在该 方式下,要用一个外部锁存器(如 74HC373或相同功能的锁存器)保持 RAM地址的低8位。外部锁 存器
3、由ALE(地址锁存使能)信号控制,ALE信号由外部存储器接口逻辑驱动。9. 在总线复用时,需要把地址数据复用端口配置为漏极开路。高/低脉宽占1个SYSCLK周期,地址建立/保持时间占0个SYSCL周期,/WR和/RD占12个SYSCLK 周期,EMIF工 作在地址/数据复用方式,即:EMI0CF|= 0x2c;EMI0TC |= 0x2c;配置EMIF的步骤是: 先将EMIF选到低端口或高端口;然后选择复用方式或非复用方式;再选择存储器的模式(只用片内存储器、不带块选择的分 片方式、带块选择的分片方式或只用片外存储器);然后设置EMI0TC最后通过寄存器PnMDOUT P74OU选择所期望的相
4、关端口的输岀方式。女口:void PORT_I nit (void)XBR2=0x40;/*使能交叉开关和弱上拉*/P74OUT |= 0xff;/*使能P4P7推挽输岀*/EMI0CF |= 0x2c;/*EMIF工作在地址/数据复用方式,只用外部存储器,ALE高/低脉宽占1个SYSCL周期*/EMI0TC |= 0x6c;周期*/*地址建立/保持时间占0个SYSCLK周期,/WR和/RD占12个P3MDOUT |= 0xdf;/*使能推挽输岀*/11. 避免高端口处于“浮空”状态,以避免因输入浮空为无效逻辑电平而导致不必要的功率消耗,为此应采取如下措施的任何一种:a.将位设置为逻辑0选择弱
5、上拉状态R/WR/WR/WR/WR/WR/WR/WR/W复位值WEAKPUD XBARE-T4EXET4EUART1EEMIFLECNVSTE00000000位7位6位5位4位3位2位1位0SFR地址位7 WEAKPU弱上拉禁止位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 UAR
6、T1 I/O 不连到端口引脚1 UART1 TX和RX连到两个端口引脚位1 EMIFLE外部存储器接口低端口允许位0 和 的功能由交叉开关或端口锁存器决定1如果=0外部存储器接口为复用方式则(/WR) (/RD)和(/ALE)被交叉开关跳过它们的输岀状态由端口锁存器和外部存储器接口决定1如果=1外部存储器接口为非复用方式则(/WR)和(/RD)被交叉开关跳过它们的输岀状态由端口锁存器和外部存储器接口决定位0 CNVSTE外部转换启动输入允许位0 CNVSTR不连到端口引脚1 CNVSTR连到端口弓I脚;b. 令P74OUT=0xF,将高端口输岀方式配置为推拉方式 (P74OUT为高端口输岀方式
7、寄存器);c. 向高端口数据寄存器 P4、P5、P6和P7写0。12. 配置端口引脚的输岀方式每个端口引脚的输岀方式都可被配置为漏极开路或推挽方式。在推挽方式下向端口数据寄存器中的相应位写逻辑 0将使端口引脚被驱动到 GND写逻辑1将使端口引脚被驱动到 VDD,在漏极开路方式下向端口数据寄存器中的相应位写逻辑0将使端口引脚被驱动到GND写逻辑1将使端口引脚处于高阻状态,当系统中不同器件的端口引脚有共享连接即多个输岀连接到同一个物理线时(例如SMBus连接中的SDA信号),使用漏极开路方式可以防止不同器件之间的冲突。(推挽方式在有些书中称为推拉方式)关于开漏、推挽方式,漏级开路即高阻状态,适用于
8、输入/输岀,其可独立输入/输岀低电平和高阻状态,若需要产生高电平,则需使用外部上拉电阻或使用如LCX245等电平转换芯片。有些朋友,尤其是未学过此方面知识的朋友,在实际工作中将I/O 口设置为漏开,并想输岀高电平,但向口线上写 1后 对方并未认岀高电平,但用万用表测量引脚确有电压,这种认为是不对的,对于高阻状态来说, 测量电压是无意义的,正确的方法应是外加上拉电阻,上拉电阻的阻值=上拉电压/芯片引脚最大灌(拉)电流。推挽方式可完全独立产生高低电平,推挽方式为低阻,这样,才能保证口线上不分走电压或分走极小的电压(可忽略),保证输岀与电源相同的高电平,推挽适用于输岀而不适用于输入,因为若对推挽(低
9、阻)加高电平后,I=U/R,I会很大,将造成口的烧毁。对与C8051F的很多型号片子,将I/O 口设置为推挽方式的做法为:PnMDOUT=0x,Pn=0x00,这样设置I/O 口为推挽,并输岀 低电平(可降低功耗) 将I/O 口设置为漏开方式的做法为:PnMDOUT=0x,0 Pn=0x11,这样设置I/O 口为漏开。如果学过三极管放大电路一定知道, 前置单管放大器和功放末级放大电路的区别。 单片机内部的逻辑 经过内部的逻辑运算后需要输岀到外面,外面的器件可能需要较大的电流才能推动, 因此在单片机的 输出端口必须有一个驱动电路。这种驱动电路有两种形式:其中的一种是采用一只 N型三极管(npn或
10、n沟道),以npn三极管为例,就是e接地,b接 内部的逻辑运算,c引岀,b受内部驱动可以控制三极管是否导通但如果三极管的c极一直悬空,尽管b极上发生高低变化,c极上也不会有高低变化,因此在这种条件下必须在外部提供一个电阻,电 阻的一端接c(引岀脚)另一 端接电源,这样当三极管的 b有高电压是三极管导通,c电压为低,当 b为低电压时三极管不通,c极在电阻的拉动下为高电压,这种驱动电路有个特点:低电压是三极管驱动的,高电压是电阻驱动的(上下不对称),三极管导通时的ec内阻很小,因此可以提供很大的电流,可以直接驱动led甚至继电器,但电阻的驱动是有限的,最大高电平输岀电流 =(vcc-Vh)/r ;
11、另一种是互补推挽输岀,采用 2只晶体管,一只在上一只在下,上面的一只是n型,下面为p型(以三极管为例),两只管子的连接为:npn (上)的c连vcc,pnp (下)的c接地,两只管子的ee,bb相连,其中ee作为输岀(引岀脚),bb接内部逻辑,这个电路通常用于功率放大点路的末 级(音响), 当bb接高电压时npn管导通输岀高电压,由于三极管的ec电阻很小,因此输岀的高电压有很强的驱动能力,当 bb接低电压时npn截至,pnp导通,由于 三极管的ec电阻很小因此输 岀的低电压有很强的驱动能力,简单的例子,9013导通时ec电阻不到10欧,以Vh=, vcc=5v计算,高电平输岀电流最大=250M
12、A短路电流500ma这个计算同时告诉我们采用推挽输岀时一定要小心 千万不要岀现外部电路短路的可能,否则肯定烧毁芯片,特别是外部驱动三极管时别忘了在三极管的基极加限流电阻。推挽输岀电路的形式很多,有些单片机上下都采用n型管,但内部逻辑提供互补输岀,以上的说明仅仅为了说 明推挽的原理,为了更深的理解可以参考功率放大电路。振荡器问:内部时钟振荡器是否稳定是否可以用于产生波特率的时基?答:不同器件的内部时钟振荡器的精度是不同的(士 20%)。随电源电压变化,它也将发生变化(%/V。 但基本不随温度变化(1%温度变化范围-40 C+85C)。由于不同器件内部振荡器的离散性较大,所以不能用于产生波特率,应
13、该外接标准晶体。而有些器件,如C8051F3xx/f12x/f04x/f06x 内部振荡器精度为士 2%可用于产生波特率 。问:片内/外振荡器如何配置?答:正确步骤:1、允许外部振荡器;2、等待1ms3、查询 XTLVLD 0-14、切换到外部振荡器。注意:振荡器频率的选择,即 OSCXC寄存器的配置(外部振荡器频率控制位的设置)。关于更多的信息以及源代码可以参看应用笔记 AN002配置内部和外部振荡器。应用笔记可以从我公司网站下载:问:C8051F MCU勺指令执行速度为多少?答:C8051F MCU勺CIP-51内核采用流水线结构,与标准的 8051结构相比,指令执行速度有很大的 提高。标
14、准的8051单片机执行一个单周期指令需要12个系统时钟周期,而C8051FMCI执行一个单周期指令只需要一个系统时钟周期。如果系统时钟频率为25MHz执行一个单周期指令所需时间为40n s。问:切换外部晶振时应注意哪些问题?答:首先要允许外部振荡器,但此时的系统时钟源仍应是内部时钟,直到外部振荡器稳定后,才可将系统时钟源切换到外部振荡器上,否则会岀现切换不过去,系统死机的情况。问:使用外部晶振应注意哪些问题?答:1、所有的模拟和数字电源引脚都应接电源();2、C8051F3xx系列器件的晶振引脚间应跨接一个 10M电阻(在新华龙网站的“主页”一“原理图 /PCB库”中有C8051F系列单片机的
15、典型接线图);3、晶振、电容等相关器件尽量靠近单片机的晶振引脚。问:系统时钟切换到外部时钟后,内部的时钟是否应关闭?答:可以选择关闭或不关闭,但是从降低功耗的角度来说,应该关闭。问:系统时钟可不可以在程序中随时切换?答:可以,但是由内部再一次切换到外部时应按照技术问答2所介绍的步骤进行切换。问:使用外部晶振时如何配置芯片的引脚?答答:对于芯片上有固定晶振引脚的设备 (例如C8051F02X);相应时钟输入引脚按选择的晶振模式自 动分配引脚;对于晶振引脚与GPIO共用的芯片(例如C8051F30X);晶振引脚要按下述方式进行设置:(1) .外接晶体体时;XTAL1与XTAL2都要配置为模拟输入(
16、2) .外接振荡电路为“ RC或“C方式时,XTAL2引脚要配置为模拟输入(3) .外接CMO时钟电路时,XTAL2引脚要配置为数字输入(4) .以上几种方式在引脚的配置中都要使用跳过功能将此引脚跳过问:外接晶振的最高频率是多少答:外接晶振的最高频率是 30MHz模数转换问:从上电(或退岀掉电模式)到 ADC稳定开始转换需要多长时间?答:模拟建立时间也就是等待参考电平稳定的时间。它取决于接在VREF引脚的电容容量。此电容越大VREF勺噪音就越小,ADC转换结果的噪音也就越小。如果用 卩F电容,则稳定时间大约为 2ms如 果无旁路电容(不推荐),稳定时间大约为10卩So注意:在开始转化之前,需要
17、一个卩S的跟踪时间,这也就决定了 ADC多路转换开关(MUX的切换速度。问:ADC的最大输入电压及输入阻抗?答:ADC的最大输入电压为VREF它的输入电压范围是 0V-AV+/VDD输入电容为10pF;输入阻抗等价于一个5kQ电阻和一个10pF电容的串联。请参考应用笔记AN019“计算开关电容 ADC的建立时间”。问:ADC可编程窗口检测器有什么用途?答:ADC可编程窗口检测器在很多应用中非常有用。它不停地将ADCS岀与用户编程的限制量进行比较,并在检查到越限条件时通知系统控制器,这在中断驱动的系统中尤其有效,既可以节省代码空间和CPU带宽又能提供快速响应的时间。问:为了使ADC或 DACM有
18、更好的性能,是否应在 VREF引脚接电容?答:推荐在VRE田I脚接一个卩F的陶瓷电容器与一个大的电容(典型为卩F钽电容)。在VREF引脚加电容是为了降低VREF的噪声。因为VRE啲噪声越小,ADC或 DAC转换结果的噪声也就越小。且这 两个电容在PCB板上应尽可能离VREF引脚近。问:内部参考电平是否可以用于外部电路的参考?答:可以,你可以用VREF言号作为输岀驱动其它电路(像放大器的偏置电压等)。注意,VREF引脚只能提供源电流,也就是说,要有负载接地使电流流岀C8051器件。例如,如果你将 VREF连到0P运放的(+)节点,你要加一个下拉电阻对地(24K左右)将电流限制在100卩A问:如果
19、测试的模拟输入电压范围是 0-5V怎么办?答:因为模拟输入(AINx)引脚不能承受5V电压,任何引脚在任何情况下(不管ADC或 PGA勺设置 如何)必须使其输入 电压保持在AGND AW之间,这是为了避免沉(或源)电流通过ESD保护装置。 为了测试0-5V范围的信号,必须使信号衰减(衰减到 AW以下)才能 进入到ADO入。当使用外 部VREF寸,要求 VREF勺最大值比 AV+小 300mV问:F02x器件内部有PGA(可编程增益放大器)可以对输入模拟信号进行放大。其中的一个放大倍数为 倍。是否意味着我可以外接+6V的模拟输入电压,经过倍的放大变成3V输入到AINx呢?答:请注意:任何模拟引脚
20、(数据IO 口和VDD引脚除外)的最大输入电压为到 VDD+。如果超岀此范 围可能造成器件永久损坏。在单端输入方式,有两个限制因素如下:1、AIN输入电压必须在AGND AV+之间以避免吸/源电流流过ESD保护器件。2、 AIN电压必须在AGN和(VREF / GAIN)之间。假设一个12位的ADC AINx引脚的输入电压小于 AGND结果将是0x000;如果输入电压大于(VREF / GAIN),结果将是0xFFF。例如,使用外部参考,PGA增益为,允许的电压输入范围是 0V到/ =。问:如何提高系统的ADC勺性能?答:第一、将模拟电源和数字电源分开,可以使用比较简单的方法,如在模拟电源和数
21、字电源之间加简单的滤波。第二、将模拟地和数字地分开,并在电源附近通过磁珠连接。第三、制板时,大面积覆铜。第四、未使用到的模拟引脚要接地。第五、为了确保参考电压的稳定,参考电压引脚一定要接去耦电容。第六、模拟信号的输入电压范围是 O-VDD,如果模拟输入的外围有可能侵入高电压(超过芯片的极限 允许范围),就要采取保护措施(如加两个肖特级二极管)。如果模拟输入会有瞬间过电流,也要加 限流保护。问:如果使用内部参考源,C8051F020/F021的参考电压引脚如何连接?答:C8051F020/F022共有4个参考电压引脚, VREF VREF0 VRFE1和 VREFD允许 ADC和DAC使用一个外
22、部电压基准或片内电压基准。通过配置VREF0CF基准电压控制寄存器,ADC0还可以使用DAC0的输岀作为内部基准,ADC1也可以使用模拟电源作为电压基准。内部基准电压必须通过VREF引脚连接到芯片内部。所以当您的系统中使用到内部基准电压时,必须确保VREF与VREF0 VREF1 VREFD(全部或部分)引脚的连接。C8051F021/F023共有两个参考电压引脚, VREFA和VREF如果ADC0和ADC1使用内部参考源,必须 将VREFA与VREF引脚连接。注意:如果使用ADC或 DAC则不管电压基准取自片内还是片外,REF0CN寄存器中的BIASE位必须被置为逻辑1。问:为什么在进行A/
23、D转换时测得的数据跳变很大?答:当输入信号有干扰脉冲、ADC勺转换时间太短、在通道切换后通道还没有稳定就开始转换等原因都会导致转换后的数据跳变大,请仔细检查以上三点并做相应的处理就可以解决此类问题。问:在进行A/D转换时所测得的数据与计算所得的数据相差很大,但跳变不大,为什么?答:1、计算时所用的基准电压是多少,如果用的是内部基准,把内部基准电压通过交叉开关分配到芯片引脚上,再进行测量;2、换别的通道转换看是否正常。问:ADC勺单端输入与差分输入的区别答答:在单端方式工作时;ADC专换的是单输入引脚对地的电压值;在增益为1时,测量的值就是输入的电压值;范围是0V到VREF当增益增加时,输入的范
24、围要相应的减小;在差分方式工作时;ADC转换的是AIN+与AIN-两个引脚的差值;在增益为 1时,测量的值等于 (AIN+)-(AIN-),范围是-VREF到+VREF当增益增加时,输入的范围要相应的减小。注意:在差分方式时所提的负压是指 AIN-引脚的电压大于AIN+引脚的电压,实际输入到两个引脚的 电压对地都必需是正的;例如:如果AIN+引脚输入的电压为0V, AIN-引脚的输入电压为1/2VREF时, 差分的输入电压为(0V-1/2VREF) = -1/2VREF。端口问:器件IO 口的吸收(sink )电流和源(source )电流是多少?答:10 口的沉电流和拉电流的极限参数为100
25、mA(但是此时已经不能保证端口的正常逻辑关系了)具体的参数请参考datasheet的端口 IO部分的“端口 I/O直流电气特性”。问:端口是否要加保护?答:在端口电流瞬间跳变的情况下,建议加限流电阻进行保护。另外如果端口可能有超过极限电压范围的瞬变电平侵入,也要加瞬态保护。(瞬态保护的通常方式为接入TVS器件)问:C8051F系列单片机的IO 口与传统8051单片机相比有什么区别?答:C8051F系列单片机的IO 口全部为三态双向口 (而传统8051单片机P1、P2、P3 口为准双向口): 内部有弱上拉可禁止(传统 8051单片机固有),可配置为开漏输岀和推挽输岀(传统 8051单片机只 有开
26、漏输岀)。片内数字资源要通过数据交叉开关(crossbar )按一定的优先级配置到IO引脚(C8051F2xx系列 除外,而传统8051单片机不具备这一功能)。IO 口的配置更加灵活。问:C8051F系列单片机电源电压全部为,那么是否有与5V系统接口的比较简单的解决方案?答:所有10 口允许5V (极限值为)输入,但是输岀高电平为 VDD如果与5V系统接口,最简单的方法是开漏输岀并在输岀端加接 5V上拉,关键是上拉电阻的选择。具体参考应用笔记AN0I1 “在5V系统中使用C8051FxxX。建议:如果可能,请尽量选用供电电压兼容的芯片,这是一种最理想的选择。问:模拟引脚能否简单地用于数字 I / O答:如果模拟引脚是独立的是不可以的。但是如果模拟引脚和数字I0是复用的,是可以通过 SFR勺设置来完成配置。问:C8051F020/022 的 p4-p7 口和 p0-p3 口有什么不同?答:P0-P3 口复位时为通用口,可通过 Crossbar (数据交叉开关)寄存器按优先级设置成第二功能。 而P4-P7 口是通用口,另外P4-P7寄存
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025 九年级数学上册三角函数值计算易错点提醒课件
- 应急救护培训课件
- 房车旅游合同范本
- 小车协议买卖合同
- 工程合同续期协议
- 聚酯部安全教育培训课件
- 2025年前置仓运营外包协议
- 小学科学数字教育资源中人工智能教育内容创作的创新实践教学研究课题报告
- 基于人工智能的家电商智能化仓储物流系统优化研究教学研究课题报告
- 初中化学电解水微型化实验装置对实验安全性的影响研究课题报告教学研究课题报告
- 老年人穿衣搭配课件
- 【2025年】嘉兴市委宣传部所属事业单位选聘工作人员考试试卷及参考答案
- 二手房意向金合同范本
- 充电桩与后台服务器通讯协议V2G
- 抵御宗教极端思想课件
- 体育会展融合策略分析报告
- 如何调解婚姻家庭纠纷讲座
- 重大活动网络安全保障方案
- 江苏省苏州市吴中学、吴江、相城区2024-2025学年化学九上期末质量检测模拟试题含解析
- 建筑公司发展策划方案
- 教育培训销售管理制度及主要工作流程
评论
0/150
提交评论