3.5芯片中的基本输入输出概论
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
➢ MC68HC08JL3型号的芯片有以下I/O端口:
共有3 个并行 输入/输 出端口
PORTA 7个端口,普通I/O/特殊功能 PORTB 8个端口,普通I/O/特殊功能 PORTD 8个端口,普通I/O/特殊功能
3.1 PORTA的寄存器
➢ 并行口A有7个端口,每个口可以作为普通的I/O口, 除此之外,A口还可以作为键盘接口。
3.1.5 怎样设置PTA口的工作方式?
➢ 假如想把PORTA的PTA5、PTA0设置为输入,且 有5K上拉,其他口设置为输出,应该如何设置?
➢ 答案:
❖MOV #%11011110,DDRA ❖MOV #%00100001,PTAPUE
➢ 数据输出时,直接将数据送到A口数据寄存器即可;
如: STA PORTA
3.4.1 PORTD寄存器
名称 数据寄存器 PTD
➢ PORTD并行端口也有8个口,每个口可 作为普通的输入/输出端口,除此之外,还 有第二功能。 ➢ PTD0~3 作ADC输入通道; ➢ PTD4(TCH0)、PTD5(TCH1)引脚 可作为定时器输入/输出。 ➢ PTD2、3、6、7具有LED驱动能力, PTD6、7有25mA大电流驱动和5k上拉电 阻。
➢ 数据输入时,直接从数据输入口读数据即可。
如:LDA PORTA
3.1.6 PTA口的第二功能
➢ PTA口除了普通的I/O口功能外,还有特殊的第二 功能。
➢ PTA0~6口可作键盘接口。对于像家电这样的产品, 其键盘是行列交叉的一个键盘矩阵,通过输出行 扫描,获得对应的列按键信号,并产生中断。 (其它厂家的单片机并行接口也可以用作键盘的 行列扫描,但不能产生中断,会使软件编程复杂。 所以这一功能是MOTOROLA公司的特殊设计)
相应位设置为1,则该位为输出; 则PORTA中那些位为输
复位时,设置为输入;
入,那些位为输出?
3.1.2 A口上拉寄存器PTAPUE
➢A口上拉寄存器 PTAPUE $000D
PTA6EN PTAPUE6 PTAPUE5 PTAPUE4 PTAPUE3 PTAPUE2 PTAPUE1 PTAPUE0
➢ PORTA作为一种并行口,负责着数据的输入和输出, 数据放在哪里?芯片如何知道PORTA作为输入还是 输出?
➢ 这些属性由PORTA的三个寄存器进行设置。
名称 数据寄存器 方向寄存器 PORTA DDRA
地址 $0000
$0004
上拉电阻控制 寄存器 PTAPUE
$000D
3.1.1 PORTA、DDRA
PTA6EN – 管理OSC2管脚,此选择位仅在选择RC振荡器时有效 1=OSC2作为普通PTA6管脚使用,有键中断和上拉功能。 0=OSC2为RC时钟振荡器输出脚。(RCCLK)
PTAPUE[6:0] : PORT A上拉设置位,仅在口设置为输入时有效 1=如果DDRA位被设为0时,对应口设置为5K上拉。 0=无上拉连接。
➢ 在后面的键盘扫描章节将详细说明。
3.2 PORTB口(PTB)
➢ 并行口B也有8个端口,每个口可以作为普通的 I/O口,除此之外,B口还可以作为A/D变换的输入 口。
➢控制端口B的寄存器如下:
名称 数据寄存器 方向寄存器 上拉电阻控制
PTB
DDRB
寄存器PUE
地址 $0001
$0005
无
可见端口B内部无上拉电阻。 PTB和DDRB寄存器的使用同PORTA口
3.3 关于ADC的说明
MC68HC08内部只有一个ADC转换模块, 和多路转换开关,外部接12通道ADC输入 (PTB0~7, PTD0~3,共12路),究竟转换 哪一路,由程序选通其中的某一通道进行 转换。 转换完成后,由程序读走被转换的数据。 (关于这部分内容在后面的章节中说明。)
3.4 PORTD并行口
3.1.4 内部工作原理的分析(续)
➢ 如果该端口是用作输入,则可以选择是否需 要用内部上拉电阻,由上拉控制寄存器控制 (PTAPUE),PTAPUEn输出1,则缓冲门3输 入1,场效应管导通,上拉电阻接上;如果是 输出,则上拉电阻自动断开(图中没有表现出 来)。
➢ 为什么要用上拉电阻?如果输入引脚接集电 极开路(OC)的逻辑电路,就要接内部上拉电 阻,否则,可不接,因此,根据具体电路而定。
➢ 人体感官与芯片输入输出ቤተ መጻሕፍቲ ባይዱ口的区别:人体感官 的功能比较复杂,不仅负责了信号的输入输出, 而且还有知觉、动作,可以说是一种顶级的传感 器,而I/O端口只负责芯片电信号的输入输出。
3 MC68HC08JL3中的I/O端口
➢ 输入口Input, 简称I,输出口Output, 简称O, MC68HC08单片机与其它型号的单片机有所不同, 它有多个并行I/O端口,但是依据封装形式不同和引 脚不同,有些I/O脚并没有引到片外。
➢A口数据寄存器 PORTA $0000
…… PTA6 PTA5 PTA4 PTA3 PTA2 PTA1 PTA0
➢A口方向寄存器DDRA $0004
…… DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRA1 DDRA0
相应位设置为0,则该位为输入; 若DDRA=#%01010101,
《单片机技术基础》
3.5 芯片基本的输入输出端口
1 本讲的目标
➢明白芯片基本I/O的作用 ➢掌握基本I/O的使用
2 基本输入输出端口的作用
➢ 人体的五官、四肢、皮肤:这些是人体的感官, 是一种高级的I/O设备。人体与外界的交互就是靠 它们完成的。
➢ 芯片的输入输出端口:I/O端口有如人体的感官, 芯片获取外部的信息、控制外界的部件,就是依 赖它们完成的。
3.1.3 I/O端口内部结构图
3.1.4 内部工作原理的分析
➢ 每一端口的数据有两路流向: 1、从内部数据总线到数据寄存器,再到缓冲
门1,到I/O引脚,为数据输出方向; 2、从I/O引脚到缓冲门2,到内部数据总线,
数据输入。
➢ 当方向寄存器输出0,缓冲门1关闭,缓冲门2打开, 所以I/O引脚电平直接输入到内部总线; 当方向寄存器输出1,缓冲门1 、3打开,缓冲门2关 闭,数据由内部数据总线送到数据寄存器,再通过缓 冲门1输出,且数据可以回读。
共有3 个并行 输入/输 出端口
PORTA 7个端口,普通I/O/特殊功能 PORTB 8个端口,普通I/O/特殊功能 PORTD 8个端口,普通I/O/特殊功能
3.1 PORTA的寄存器
➢ 并行口A有7个端口,每个口可以作为普通的I/O口, 除此之外,A口还可以作为键盘接口。
3.1.5 怎样设置PTA口的工作方式?
➢ 假如想把PORTA的PTA5、PTA0设置为输入,且 有5K上拉,其他口设置为输出,应该如何设置?
➢ 答案:
❖MOV #%11011110,DDRA ❖MOV #%00100001,PTAPUE
➢ 数据输出时,直接将数据送到A口数据寄存器即可;
如: STA PORTA
3.4.1 PORTD寄存器
名称 数据寄存器 PTD
➢ PORTD并行端口也有8个口,每个口可 作为普通的输入/输出端口,除此之外,还 有第二功能。 ➢ PTD0~3 作ADC输入通道; ➢ PTD4(TCH0)、PTD5(TCH1)引脚 可作为定时器输入/输出。 ➢ PTD2、3、6、7具有LED驱动能力, PTD6、7有25mA大电流驱动和5k上拉电 阻。
➢ 数据输入时,直接从数据输入口读数据即可。
如:LDA PORTA
3.1.6 PTA口的第二功能
➢ PTA口除了普通的I/O口功能外,还有特殊的第二 功能。
➢ PTA0~6口可作键盘接口。对于像家电这样的产品, 其键盘是行列交叉的一个键盘矩阵,通过输出行 扫描,获得对应的列按键信号,并产生中断。 (其它厂家的单片机并行接口也可以用作键盘的 行列扫描,但不能产生中断,会使软件编程复杂。 所以这一功能是MOTOROLA公司的特殊设计)
相应位设置为1,则该位为输出; 则PORTA中那些位为输
复位时,设置为输入;
入,那些位为输出?
3.1.2 A口上拉寄存器PTAPUE
➢A口上拉寄存器 PTAPUE $000D
PTA6EN PTAPUE6 PTAPUE5 PTAPUE4 PTAPUE3 PTAPUE2 PTAPUE1 PTAPUE0
➢ PORTA作为一种并行口,负责着数据的输入和输出, 数据放在哪里?芯片如何知道PORTA作为输入还是 输出?
➢ 这些属性由PORTA的三个寄存器进行设置。
名称 数据寄存器 方向寄存器 PORTA DDRA
地址 $0000
$0004
上拉电阻控制 寄存器 PTAPUE
$000D
3.1.1 PORTA、DDRA
PTA6EN – 管理OSC2管脚,此选择位仅在选择RC振荡器时有效 1=OSC2作为普通PTA6管脚使用,有键中断和上拉功能。 0=OSC2为RC时钟振荡器输出脚。(RCCLK)
PTAPUE[6:0] : PORT A上拉设置位,仅在口设置为输入时有效 1=如果DDRA位被设为0时,对应口设置为5K上拉。 0=无上拉连接。
➢ 在后面的键盘扫描章节将详细说明。
3.2 PORTB口(PTB)
➢ 并行口B也有8个端口,每个口可以作为普通的 I/O口,除此之外,B口还可以作为A/D变换的输入 口。
➢控制端口B的寄存器如下:
名称 数据寄存器 方向寄存器 上拉电阻控制
PTB
DDRB
寄存器PUE
地址 $0001
$0005
无
可见端口B内部无上拉电阻。 PTB和DDRB寄存器的使用同PORTA口
3.3 关于ADC的说明
MC68HC08内部只有一个ADC转换模块, 和多路转换开关,外部接12通道ADC输入 (PTB0~7, PTD0~3,共12路),究竟转换 哪一路,由程序选通其中的某一通道进行 转换。 转换完成后,由程序读走被转换的数据。 (关于这部分内容在后面的章节中说明。)
3.4 PORTD并行口
3.1.4 内部工作原理的分析(续)
➢ 如果该端口是用作输入,则可以选择是否需 要用内部上拉电阻,由上拉控制寄存器控制 (PTAPUE),PTAPUEn输出1,则缓冲门3输 入1,场效应管导通,上拉电阻接上;如果是 输出,则上拉电阻自动断开(图中没有表现出 来)。
➢ 为什么要用上拉电阻?如果输入引脚接集电 极开路(OC)的逻辑电路,就要接内部上拉电 阻,否则,可不接,因此,根据具体电路而定。
➢ 人体感官与芯片输入输出ቤተ መጻሕፍቲ ባይዱ口的区别:人体感官 的功能比较复杂,不仅负责了信号的输入输出, 而且还有知觉、动作,可以说是一种顶级的传感 器,而I/O端口只负责芯片电信号的输入输出。
3 MC68HC08JL3中的I/O端口
➢ 输入口Input, 简称I,输出口Output, 简称O, MC68HC08单片机与其它型号的单片机有所不同, 它有多个并行I/O端口,但是依据封装形式不同和引 脚不同,有些I/O脚并没有引到片外。
➢A口数据寄存器 PORTA $0000
…… PTA6 PTA5 PTA4 PTA3 PTA2 PTA1 PTA0
➢A口方向寄存器DDRA $0004
…… DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRA1 DDRA0
相应位设置为0,则该位为输入; 若DDRA=#%01010101,
《单片机技术基础》
3.5 芯片基本的输入输出端口
1 本讲的目标
➢明白芯片基本I/O的作用 ➢掌握基本I/O的使用
2 基本输入输出端口的作用
➢ 人体的五官、四肢、皮肤:这些是人体的感官, 是一种高级的I/O设备。人体与外界的交互就是靠 它们完成的。
➢ 芯片的输入输出端口:I/O端口有如人体的感官, 芯片获取外部的信息、控制外界的部件,就是依 赖它们完成的。
3.1.3 I/O端口内部结构图
3.1.4 内部工作原理的分析
➢ 每一端口的数据有两路流向: 1、从内部数据总线到数据寄存器,再到缓冲
门1,到I/O引脚,为数据输出方向; 2、从I/O引脚到缓冲门2,到内部数据总线,
数据输入。
➢ 当方向寄存器输出0,缓冲门1关闭,缓冲门2打开, 所以I/O引脚电平直接输入到内部总线; 当方向寄存器输出1,缓冲门1 、3打开,缓冲门2关 闭,数据由内部数据总线送到数据寄存器,再通过缓 冲门1输出,且数据可以回读。