I/O接口的功能是负责实现CPU通过系统总线把I/O电路和外围设备联系在一起,按照电路和设备的复杂程度,I/O接口的硬件主要分为两大类:
(1)I/O接口芯片
这些芯片大都是集成电路,通过CPU输入不同的命令和参数,并控制相关的I/O电路和简单的外设作相应的操作,常见的接口芯片如定时/计数器、中断控制器、DMA控制器、并行接口等。
(2)I/O接口控制卡
有若干个集成电路按一定的逻辑组成为一个部件,或者直接与CPU同在主板上,或是一个插件插在系统总线插槽上。
按照接口的连接对象来分,又可以将他们分为串行接口、并行接口、键盘接口和磁盘接口等。
用I/O模拟移位寄存器的时序驱动74LS165,实现并行数据的输入。如下图所示,P1.5被用于串行数据输入,P1.6用于移位时钟输出,P1.7用来控制74LS165的工作状态。
单片机I/O端口驱动74LS165主要包括函数声明管脚定义部分、数据输入函数以及数据输出函数。
(1)函数声明管脚定义。
函数声明管脚定义部分主要完成程序所涉及的库函数的声明及有关引脚的定义,一般置于程序的开头部分,代码如下:
(2)数据输入函数in_simuseri()。
数据输入函数in_simuseri()实现8位数据的从低位到高位的串行输入,程序代码如下所示:
(3)数据输出函数PAs()。
数据输出函数PAs()实现数据的并行输出,程序代码如下:
-
单片机
+关注
关注
6044文章
44657浏览量
640453 -
串口
+关注
关注
14文章
1565浏览量
77464
原文标题:51单片机轻松入门与实践教程
文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
74HC165-Q100;74HCT165-Q100并行输入/串行输出移位寄存器规格书

51单片机中为什么很少出现printf的身影

单片机怎么写入程序
stm32单片机用什么软件编程
单片机烧录程序用什么软件
单片机烧录程序的串口线怎么连接
51单片机烧录软件怎么用
蓝牙模块如何实现单片机和手机端数据互传

SN54LS696、SN54LS697、SN54LS699、SN74LS696、SN74LS697、sn74ls 699同步递增/递减计数器手册

评论