- 1
- 0
- 约7.87千字
- 约 18页
- 2019-11-06 发布于广东
- 举报
第6章 ATM16 输入输出端口应用 M16 输入输出端口引脚配置 端口引脚第二功能表 (1) 端口引脚 第二功能 PA0 ADC 输入通道0 PA1 ADC 输入通道1 PA2 ADC 输入通道2 PA3 ADC 输入通道3 PA4 ADC 输入通道4 PA5 ADC 输入通道5 PA6 ADC 输入通道6 PA7 ADC 输入通道7 端口 引脚 第二功能 PB0 T0 (T/C0外计数输入) XCK(USCRT外时钟输入/输出) PB1 T1 (T/C0外计数输入) PB2 AIN0(模拟比较正输入) INT2 (外中断2输入) PB3 AIN1(模拟比较负输入) OC0 (T/C0输出比较匹配输出) PB4 SS (SPI从机选择引脚) PB5 MOSI(SPI主机出/从机入信号) PB6 MISO(SPI主机入/从机出信号) PB7 SCK (SPI总线串行时钟) **SPI 串行外部接口 端口引脚第二功能表 (2) 端口引脚 第二功能 PD0 RXD(USART输入引脚 ) PD1 TXD(USART输出引脚 ) PD2 INT0(外部中断0输入 ) PD3 INT1(外部中断1输入 ) PD4 OC1B(T/C1输出比较B) PD5 OC1A(T/C1输出比较A) PD6 ICP1(T/C1输入捕捉输入) PD7 OC2(T/C2输出比较输出) **USART 通用异同步收发端口 端口引脚 第二功能 PC7 TOSC2( 定时振荡引脚2 ) PC6 TOSC1( 定时振荡引脚1 ) PC5 TDI(JTAG 测试数据输入 ) PC4 TDO(JTAG测试数据输入 ) PC3 TMS(JTAG测试模式选择 ) PC2 TCK(JTAG 测试时钟 ) PC1 SDA( 两线串口数据入/出线 ) PC0 SCL(两线串口时钟入/出线 ) **JTAG Joint Test Action Group (联合测试行动组) 一位I/O 口线电路示意图 一位I/O 端口线电路示意图 I/O 引脚等效原理图 每个端口都具三个寄存器: DDRx---数据方向寄存器; PORTx--数据数值寄存器; PINx---引脚电平寄存器; 四个端口;X=A、B、C、D端口 每寄存器都有8个位:n=0、1、2、3、4、5、6、7位 所有端口引脚都有内部上拉电阻,且有保护二极管与VCC 和地相连,在输入时可以选用。 端口引脚配置 1、DDRxn =0 , 该端口位配置为输入。 1) 若PORTxn=0 , PUD=X,内拉上拉电阻无效。 2) 若PORTxn=1 , PUD=0,内拉上拉电阻使能。 PUD=1,内部上拉电阻无效。 2、 DDRxn =1 , 该端口位配置为输出,内部上拉电阻无效。 3、 复位时各引脚均为高阻态。 此时没有时钟在运行。 端口设置举例 例: 配置端口A的引脚0~3输出高电平、引脚4~7输出低电平。 DDRA =0x0FF; //8位全高电平1,表示输出 DDRTA=0x0F; //高四位输出低电平, //低四位输出高电平。 例: 假设端口B的引脚和外部连接、要读端口B的电平。 unsigned char c ; //定义无符号字符C C=PINB ; //令C等于B端口电平 端口应用举例6.4(p118) 6.4.2 设端口PA交替输出0xaa,0x55。8个发光管间隔闪亮500毫秒。 # include mega16.h // 输入/输出端口包含头文件 # define uchar unsingned char //定义uchar为无符号字符数据 # deinde uint unsingned int //定义uint为无符号整形数据 void delay_ms (uint k) //定义delayw为ms级延时子函数 { uint i,j ; //定义无符号整形数i,j for (i=0; ik; i++)
原创力文档

文档评论(0)