美国微芯公司推出可以直接驱动LED和继电器

时间:2025-11-01  作者:Diven  阅读:0

试验芯片:MICrochip PIC 18F4550

美国微芯公司推出可以直接驱动LED和继电器

集成开发环境:MPLAB IDE v8.53

编译器:Microchip C18

PIC18系列单片机是美国微芯公司(Microchip)8位单片机系列中的高档系列,其任一I/O引脚允许的最大灌电流或最大拉电流达25mA,可以直接驱动LED和继电器。PORTA、PORTB和PORTE的最大灌电流或最大拉电流总和为200mA,PORTC和PORTD的最大灌电流或最大拉电流总和为200mA,PORTF和PORTG的最大灌电流或最大拉电流总和为100mA(注:PIC18F4550没有这两个端口)。

单片机和外设的交互都是通过I/O端口进行,每个I/O端口均有三个操作寄存器

1、TRISx———数据方向寄存器

用来控制I/O引脚的方向,即用来控制PORTx是输入还是输出。

2、PORTx——— 端口寄存器

用来锁存输出数据。当读PORTx时,器件直接读I/O引脚电平(而不是锁存值)。

3、LATx——— 输出数据锁存器

写端口就是写该锁存器(LATx)。数据锁存器也可以直接读写。如果外设没有使用该引脚,并且TRISx位配置该引脚为输出,则将锁存器内的数据输出到引脚。

在复位状态下,TRISx的复位值为0xff,即TRISx寄存器的8个位(D0 ~ D7)的值均为1。此时相应的PORTx引脚被定义为输入,相应的输出驱动器呈现高阻状态。设置为0时表示相应的引脚定义为输出。

这里应注意的是写PORT就是写LAT,但读PORT和读LAT不同。读PORT读的是引脚的状态,无论该引脚设置为输入引脚还是输出引脚。而读LAT得到的是输出数据锁存器的存储值,读LAT得到的值可能和读PORT得到的值存在不同。

在Microchip C18中,I/O端口三个操作寄存器可以按位(bit)操作,也可以按字节(byte)操作。

如端口B的方向寄存器用TRISB(或DDRB)表示,某一位用TRISBbits.TRISB0(或DDRB bits.RB0)表示。字节用TRISB(或DDRB)表示。

如端口B的PORT寄存器用PORTB表示,某一位用PORTBbits.RB0表示。字节用PORTB表示。

如端口B的输出数据锁存器用LATB表示,某一位用LATBbits.LATB0表示。字节用LATB表示。

由于芯片复位后,LATx(PORTx)锁存器的值是随机的,为了排除I/O引脚电平出现毛刺的可能性,在初始化端口时,首先初始化该PORT的数据锁存器(LAT或PORT寄存器),然后再初始化数据方向寄存器TRIS。

下面用一个实例说明一下具体应用,下图PIC18F4550与电源、晶振和发光二极管组成一个最简单的8位单片机系统,要求同时点亮8个发光二极管

首先可以选择按位操作的方法实现。不难看出,按位操作实际不是真正实现同时点亮与PORTB相连的8个发光二极管,只是发光二极管发光的延时效应掩盖了依次点亮的事实,使得最终效果达到了同时点亮。以下是按位操作方式的实现代码。

#include

void main(void)

{

PORTBbits.RB0=1;

TRISBbits.TRISB0=0;//点亮第1个LED

PORTBbits.RB1=1;

TRISBbits.TRISB1=0; //点亮第2个LED

PORTBbits.RB2=1;

TRISBbits.TRISB2=0; //点亮第3个LED

PORTBbits.RB3=1;

TRISBbits.TRISB3=0; //点亮第4个LED

PORTBbits.RB4=1;

TRISBbits.TRISB4=0; //点亮第5个LED

PORTBbits.RB5=1;

TRISBbits.TRISB5=0; //点亮第6个LED

PORTBbits.RB6=1;

TRISBbits.TRISB6=0; //点亮第7个LED

PORTBbits.RB7=1;

TRISBbits.TRISB7=0; //点亮第8个LED

while(1);

}

其次可以按字节操作来实现,代码比按位操作要简单很多,而且真正实现了同时点亮的要求。以下是按字节操作方式的实现代码。

#include

void main(void)

{

PORTB=0xff;

TRISB=0x00;//点亮8个LED

while(1);

}
       责任编辑:pj

猜您喜欢

汽车保险丝作为保护汽车电路安全的重要元件,其性能参数受到关注。LseLe作为汽车保险丝领域的知名品牌,其产品以优良的品质和精准的电压参数受到了广大用户的认可。本...
2024-12-22 06:57:30

瓷管电阻因其优良的耐高温、耐冲击特性,应用于电力设备、工业控制等领域。作为国内知名品牌,ROYALOHM(厚生)瓷管电阻凭借其很好的品质和稳定的性能,深受用户青...
2018-12-11 18:16:30

贴片电阻5492是一种尺寸小巧但功能强大的电子元件,应用于各种电子产品中。指的是尺寸为5.4mm x 9.2mm的矩形贴片电阻,得名于其英制尺寸0504。这种电...
2024-11-29 10:25:43

11月2日,格科微创新成果GC32E1图像传感器荣获全球电子成就奖年度传感器产品奖。这一荣誉,意味着行业对GC32E1出色性能和所搭载的单芯片高像素集成技术的高...
2023-11-08 09:22:00

发光二极管(LED)是应用于照明、显示和信号传递的半导体器件。随着科技的发展,LED的应用领域不断扩大,市场需求也日益增长。了解发光二极管的规格书对于选购和应用...
2025-04-03 13:30:02

NTC热敏电阻(Negative Temperature Coefficient Thermistor)是对温度变化非常敏感的电阻元件,其电阻值会温度的升高而降...
2025-04-15 13:00:39

测量贴片电阻阻值大小,最常用的方法是使用万用表。将万用表调至电阻档位,选择合适的量程。对于阻值较小的贴片电阻,可以直接用表笔接触电阻两端的焊盘进行测量。但需要注...
2024-11-26 11:29:28

你是否在电子元件的世界里遇到过504这样的数字,却不知其意?其实,代表着贴片电阻的尺寸。贴片电阻,这种微小的电子元件,在电路中是重要的配件,而504正是的一种常...
2024-11-29 10:25:52

电阻作为电子元器件中的基础元件,其性能和质量直接影响到整个电路的稳定性和寿命。尤其是在恶劣环境下工作的设备,电阻的防硫化性能尤为重要。本文将围绕“ASJ(新加坡...
2015-09-01 22:20:30

贴片电阻作为电子元件中的重要组成部分,应用越来越。在众多贴片电阻品牌中,TA-I(大毅)凭借其优良的品质和丰富的规格,赢得了市场的认可。本文将围绕TA-I(大毅...
2012-09-24 04:31:27