PIC单片机I/O口控制
为什么配置I/O口:
I/O端口寄存器复位后默认为输入(输出高阻态);为实现I/O端口功能需要先对端口进行I/O口初始化
配置I/O口需要的几种寄存器:
ANSELx(模拟选择寄存器):0 = 数字I/O口,1 = 模拟输入口
TRISx(数据方向控制寄存器):0=输出模式(Out),1=输入模式(In)
PORTx(读取器件引脚电平)
LATx(输出锁存器)
PORT与LAT寄存器区别:
rd port指令脉冲来的时候,管脚端平锁存到port中,也就是说要想获得正确的管脚状态,只有读取port寄存器,而如果去读lat寄存器,读到的输出锁存器的值,比如说你一开始设置管脚成输出,通过lat输出了一个0x55,然后你设置管脚成输出,这个时候管脚电平再外部电路的驱动下发生了变化编程了0x66,这个时候你读port才能读到0x66,而如果你去读lat则读到的是你上一次输出值,不是当前时刻管脚电平状态。这也就是lat和port的不同之所在。所以在做pic18的时候我们应该养成写则写lat,读则读port的好习惯
LAT是作为缓存使用的,PORT读的是I/O状态,所以,读I/O时用PORT,写I/O时用LAT。
总结一下:
1、I/O作为写输出时使用锁存器LAT;
2、I/O作为读输入时使用端口PORT;
***3.若定义IO口为输入,要得到IO端口的实际电平,则直接读取PORTx寄存器,若将IO口定义为输出,则通过写LATx来达到对IO口置高低电平操作。
4.当某个引脚配置成模拟IO时候,必须将其相应的TRISx配置成输入,这样才能读取到引脚上外部电压。
IO控制:https://blog.csdn.net/dmlk31/article/details/114162703?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162480988116780357284144%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162480988116780357284144&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_v2~rank_v29-5-114162703.first_rank_v2_pc_rank_v29&utm_term=pic%E6%95%B0%E5%AD%97IO%E8%AE%BE%E7%BD%AE&spm=1018.2226.3001.4187
PIC单片机I/O口控制相关推荐
- 51c语言单片机io口控制实验报告,单片机I/O口控制实验
描述 实验 单片机I/O 口控制实验 一. 实验目的 利用单片机的P1 口作IO 口,使用户学会利用P1 口作为输入和输出口. 二. 实验设备及器件 IBM PC 机 一台 DP-51PROC 单片机 ...
- 如何使用一个单片机的IO口控制两个LED?
简 介: 本文介绍了一种使用单个IO口独立控制两个LED点亮的方案.并对于不同颜色的LED和不同工作电压下的MCU进行了讨论.给出了在不同的颜色组合.工作电压的情况下不同的驱动方案. 关键词: IO, ...
- PIC单片机之I/O控制
I/O控制对于单片机而言是最基础最核心的东西,其实单片机除了AD DA 转换之外的事情.其他大部分的事情I/O口都能做的到.I/O控制简单却能千变万化. 单片机在大部分应用中做的事情,莫过于 输入高低 ...
- IO口多路查理复用:三个单片机IO口控制六个LED
简 介: 本文介绍了单片机的IO控制 LED 中的复用技术,特别查理复用基本原理和特点进行了介绍.使用一款IS31FL3731可以构成16×9的PWM亮度可控的 LED 矩阵. 关键词: 查理复用,C ...
- 单片机I/O口的结构的详解
1.什么是源型 漏型?什么是上拉电阻?下拉电阻?什么是 线驱动输出 集电极开路输出,推挽式输出? 我们先来说说集电极开路输出的结构.集电极开路输出的结构如图1所示,右边的那个三极管集电极什么都不接,所 ...
- 《我和PIC单片机:基于PIC18》——1.2 主题芯片介绍
1.2 主题芯片介绍 PIC单片机产品线丰富,型号众多.目前在国内介绍PIC的书籍中,大多都以具有较高性价比的中档机作为例子.为了能更加全面地展示PIC,本书是以高档的18系列单片机PIC18F452 ...
- PIC单片机低功耗调试心得
PIC单片机低功耗调试心得 因项目需求,需要长时间低功耗,在调试PIC16LF18系列单片机时,发现其低功耗设置的关键地方与STM32和STM8还是有很大区别的,特别整理出来记录如下 : 1.PIC单 ...
- 51单片机模拟交通信号灯控制系统设计
51单片机模拟交通信号灯控制系统设计 设计要求: 1.用LED灯模拟十字路口交通灯控制 2.正常情况下双方向轮流通行 3.特殊情况时,A方向通行 4.紧急情况时,A和B方向都不通行 本任务涉及定时控制 ...
- 8255总线实验 编写程序利用8255扩展单片机的IO口,控制8位数码管显示1-8。
8255总线实验 编写程序利用8255扩展单片机的IO口,控制8位数码管显示1-8. 程序: #include<reg51.h> #include<absacc.h> #def ...
最新文章
- [20190402]对比_mutex_wait_scheme不同模式cpu消耗.txt
- 说说我的工作——桌面支持
- 51CTO博客 NO.1 大奖赛之后感想---奖品
- mysql递归查询所有上下节点_非递归打印二叉树的所有路径,保存父节点和孩子节点到底有啥差别...
- [ BZOJ 4668 ] 冷战
- curl工具使用实例
- xcode7打包ipa文件
- NYOJ-苹果(dp)
- 如何保持交互的可见性
- 连接查询(多表查询)
- 巧用MacOS的勿扰模式,解决广告弹窗
- table函数--Matplotlib
- 说说“用户无线网络时不时断开重连”的故障!
- 按哪个键锁定计算机,台式电脑键盘锁住了,按哪个键解锁
- 如何利用多任务学习提升模型性能?
- rbd feature
- 简单修复360安全检测提示的发现robots文件漏洞
- android debug SIGABRT (signal SIGABRT)
- 智能点餐小程序有哪些基本功能
- F 魏迟燕的自走棋(思维+贪心+并查集维护联通块/左部点配对边<=2的匈牙利)