采用轮询的方式检测串口输入&&采用中断的方式检测串口输入的区别!
区别1:中断USART1_IRQHandler()不放进main(主函数)里,而轮询检测rcv()需要;
但是需要在主函数里对中断NVIC()进行初始化,因为所有程序都是从主函数开始一步一步执行,想要以后进入中断程序,必须检测到有中断{大开关},此外,中断检测串口输入,还需要在串口函数定义里使能中断{小开关}
分析;中断方式:正常情况下先执行main里面的其他内容,当有串口输入时,产生并进入中断函数主体(没有的话,就一直执行main里面的内容)。
轮询rcv():每次在main里面强制执行。
LCD出现闪屏现象(中断中断串口输入需要加个延时);
分析:没有中断进来,主函数里的while不停循环,速度极快,所以看到的是一闪一闪的;
相比之下,由于rcv()在main 的while里面强制执行,且rcv()会一直等待你输入数据(直到达到你指定的字符结束),不输入的话就一直等待,所以之前显示的内容会一直显示,直到新的内容进来。
最后,中断检测串就输入,记得配置NVIC();
补充:程序调试中的断点设置问题
程序调试时,有些程序往往很难确认什么时候能够执行到,这种问题就不适合单步调试 ----.> (在某一行断点设置),全速执行,一旦到断点程序行即停止,确定问题所在。
采用轮询的方式检测串口输入&&采用中断的方式检测串口输入的区别!的更多相关文章
- S5PV210 串口配置与实验(轮询方式)
S5PV210 UART 相关说明 通用异步收发器简称 UART, 即 UNIVERSAL ASYNCHRONOUS RECEIVER AND TRANSMITTER,它用来传输串行数据.发送数据时, ...
- 《连载 | 物联网框架ServerSuperIO教程》- 5.轮询通讯模式开发及注意事项。附:网友制作的类库说明(CHM)
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
- WebSocket和long poll、ajax轮询的区别,ws协议测试
WebSocket和long poll.ajax轮询的区别,ws协议测试 WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连 ...
- STM32F10x_硬件I2C主从通信(轮询发送,中断接收)
Ⅰ.写在前面 关注我分享文章的朋友应该知道我在前面讲述过(软件.硬件)I2C主机控制从机EEPROM的例子.在I2C通信主机控制程序是比较常见的一种,可以说在实际项目中,很多应用都会使用到I2C通信. ...
- 误人子弟的网络,谈谈HTTP协议中的短轮询、长轮询、长连接和短连接
引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码.在研究一个项目的时候,源码里面用到了HTTP的长轮询.由于之前没太接触过,因此LZ便趁着这个机会,好好了解了一下HT ...
- HTTP的长短连接、长短轮询的区别(转载)
引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码.在研究一个项目的时候,源码里面用到了HTTP的长轮询.由于之前没太接触过,因此LZ便趁着这个机会,好好了解了一下HT ...
- WebSocket原理及与http1.0/1.1 long poll和 ajax轮询的区别【转自知乎】
一.WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)首先HTTP有1.1和1.0之说,也就是所谓的ke ...
- HTTP协议中的短轮询、长轮询、长连接和短连接
HTTP协议中的短轮询.长轮询.长连接和短连接 引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码.在研究一个项目的时候,源码里面用到了HTTP的长轮询.由于之前没太接 ...
- 转---谈谈HTTP协议中的短轮询、长轮询、长连接和短连接
作者:伯乐在线专栏作者 - 左潇龙 http://web.jobbole.com/85541/ 如有好文章投稿,请点击 → 这里了解详情 引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此 ...
随机推荐
- zigbee初探
什么是zigbee? 1.它是一种通信方式,一种通信协议: 2.其作用就是构建一个类似无线局域网的东西:如果这个局域网用于传感器的数据收集.监控,那么这个网络就叫做无线传感器网络. 应用领域:家居.工 ...
- 使用VMware克隆Linux系统
最近在学习使用solr云技术,因为是用来学习操作,因此需要在一台虚拟机上,安装多台LinuxOS. 但是又想偷懒,不想每安装一个LinuxOS,就重新配置Linux环境,所以使用克隆,只需安装好一个模 ...
- 团体程序设计天梯赛L1-027 出租 2017-03-23 23:16 40人阅读 评论(0) 收藏
L1-027. 出租 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 下面是新浪微博上曾经很火的一张图: 一时间网上一片求救声, ...
- 单例模式到Java内存模型
先说单例模式: 经典的单例模式实现: 饿汉式: public class Singleton { private static Singleton instance = new Singleton() ...
- MongoDB YAML格式的配置文件
根据官网的提示内容,默认的配置文件内容为 systemLog: verbosity: 0 quiet: false # traceAllExceptions: <boolean> sysl ...
- PMBOK项目管理PMI主义\IPMA概述
PMP(Project Management Professional)指项目管理专业人士资格认证,是美国项目管理协会(Project Management Institute,PMI)在全球180多 ...
- json的两种格式
JSON: JavaScript Object Notation (JavaScript 对象表示法) JSON 是存储和交换文本信息的语法.类似 XML. 一.JSON对象:JSONObj ...
- python3.5在内存中获取远程图片尺寸
自已看看,用于获取选程图片的尺寸 >>> from io import BytesIO>>> import requests as rs>>> f ...
- Foxman, 基于微核架构的 Mock 解决方案
本文来自 网易云社区 . Foxman ⇗ 是一个使用 Node.js 开发的命令行工具,定位是一个可扩展的 Mock Server,帮助前端开发者轻松.独立.高效地进行前端开发和完成后续的联调工作. ...
- 《Beginning Java 7》 - 4 - finalize() 手动垃圾回收
当我们想在系统进行垃圾回收时做一些特定的工作,我们就可以重写 finalze() 函数,因为 Object 的 此函数是空的. 比如: protected void finalize() throws ...