① 51单片机的引脚结构和功能
mcs-51
单片机引脚功能
mcs单片机都采用40引脚的双列直插封装方式。图2-9为引脚排列图,
40条引脚说明如下:
1、主电源引脚vss和vcc
①
vss接地
②
vcc正常操作时为+5伏电源
2、外接晶振引脚xtal1和xtal2
①
xtal1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。
②
xtal2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。
3、控制或与其它电源复用引脚rst/vpd,ale/
,
和
/vpp
①
rst/vpd
当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位
在vcc掉电期间,此引脚可接
图2-9
8051引脚排列图
上备用电源,由vpd向内部提供备用电源,以保持内部ram中的数据。
②
ale/
正常操作时为ale功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ale
引脚以不变的频率(振荡器频率的
)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ale脉冲,ale
端可以驱动(吸收或输出电流)八个lsttl电路。
对于eprom型单片机,在eprom编程期间,此引脚接收编程脉冲(
功能)
③
外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,
在每个机器周期内两次有效。
同样可以驱动八lsttl输入。
④
/vpp
、
/vpp为内部程序存储器和外部程序存储器选择端。当
/vpp为高电平时,访问内部程序存储器,当
/vpp
为低电平时,则访问外部程序存储器。
对于eprom型单片机,在eprom编程期间,此引脚上加21伏eprom编程电源(vpp)。
4、输入/输出引脚p0.0
-
p0.7,p1.0
-
p1.7,p2.0
-
p2.7,p3.0
-
p3.7。
①
p0口(p0.0
-
p0.7)是一个8位漏极开路型双向i/o口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,p0口能以吸收电流的方式驱动八个lsttl负载。
②
p1口(p1.0
-
p1.7)是一个带有内部提升电阻的8位准双向i/o口。能驱动(吸收或输出电流)四个lsttl负载。。
③
p2口(p2.0
-
p2.7)是一个带有内部提升电阻的8位准双向i/o口,在访问外部存储器时,它输出高8位地址。p2口可以驱动(吸收或输出电流)四个lsttl负载。
④
p3口(p3.0
-
p3.7)是一个带有内部提升电阻的8位准双向i/o口。能驱动(吸收或输出电流)四个lsttl负载
② AVR atmega168单片机PC0如何设置成ADC0的复用功能
首先初始化ADC:
void ADC_init(void)
{
//作为 ADC 输入,PC0要设置成输入,其实初始默认就是0(输入)。
DDRC &= 0xfe; //#11111110
//关闭PC0内部上拉电阻,(其实初始默认就是0.)
PORTC &= 0xfe;
//选择 ADC 时钟 = 系统时钟128分频
ADCSRA = 0x07;
//设置参考电压为AVCC, AREF 引脚外加滤波电容;
//转换值右对齐;
//ADC通道为内部 GND
ADMUX=0x4f; //01001111
//1.1V 的片内基准电压源, AREF 引脚外加滤波电容 左对齐,ADC通道为内部 GND
//ADMUX=0xef; //11101111
//模拟比较器控制及状态寄存器:ACSR的Bit 7 是 ACD(模拟比较器禁用),ACD 置位(=1)时,模拟比较器的电源被切断。
ACSR=0x80; //关闭内部比较器
ADCSRA |= 0x80; //10000000 //使能 ADC
}
//--------------------------------------------------------------
下面是一次转换的过程:
unsigned int adcRead (void)
{
unsigned int inADC;
ADMUX &= 0xf0; //#11110000B //清除已选择的ADC通道
ADMUX |= 0x01; // #00000001B //选择新的ADC通道(PC0)
ADCSRA|=0x40; //01000000 //启动单次ADC转换
//在 ADC 转换结束,且数据寄存器被更新后, ADCSRA的bit4:ADIF 置位
while ((ADCSRA & 0x10) == 0); //00010000 //通过ADIF判断ADC转换结束
inADC = ADCH ;
inADC =( inADC << 8) | ADCL;
ADCSRA|=0x10; //通过向ADIF标志写 1 来清 ADIF,//清除ADC转换结束标记
return inADC; //返回值
}
③ 51单片机引脚输入设置怎么弄
根据51引脚的定义,对该引脚置1,可以作为输入使用。
而51单片机的所有IO引脚,在启动后默认都是1。因此,如之前没有对此引脚进行过置0操作的话,可以直接读该引脚。但为了保险起见,也为了使程序通用、可移植,最好在读取之前对此引脚置1。
④ 如何理解STM32单片机引脚的复用功能
就是一个管脚有多种功能,根据需要选择相应的功能,设置寄存器就可以
⑤ 51单片机的引脚功能尤其P30的复用功能
51单片机的引脚,其p30和31这两个gpio,除具有串口通信功能外,还可以当做普通的Io口。只需要在写程序时,先定义即可。
⑥ STM32F407单片机UART串口gpio口复用功能配置问题
关于STM32的USART配置,需要完成以下几个步骤
1,打开USART时钟
2,配置PA9及PA10
由于USART属于可选功能项
所以TX要设置成GPIO_Mode_AF_PP;,即复用推挽输出
RX用于数据输入,被设置成浮空输入
这是由于STM32的IO口引脚总共只有以下几种模式
GPIO_Mode_AIN = 0x0,
GPIO_Mode_IN_FLOATING = 0x04,
GPIO_Mode_IPD = 0x28,
GPIO_Mode_IPU = 0x48,
GPIO_Mode_Out_OD = 0x14,
GPIO_Mode_Out_PP = 0x10,
GPIO_Mode_AF_OD = 0x1C,
GPIO_Mode_AF_PP = 0x18
对于特殊功能模式,只有一个复用开漏及复用推挽。
这两种都是用于输出的情况。
所以RX只能被设置成浮空输入
这不仅是USART,对于其他的如SPI也是如此。
⑦ 关于stm32单片机的引脚配置:
STM32F10xxx参考手册 中文英文都有
⑧ 51单片机哪些引脚有复用
P3口所有引脚都有复用。还有RES\VPD;EA\VPP;ALE\PROG。
所谓的管脚复用,就是除第一功能外,增加了第二功能,如单片机89C51的P3 I/O口同时还为中断管脚,主要为节约芯片面积。当然在利用程序控制时是不会影响的