【单片机】延迟程序&延迟子程序的设计(入门)

前言

大家好吖,欢迎来到 YY 滴小小知识点系列 ,热烈欢迎! 本章主要内容面向接触过单片机知识点的老铁

主要内容含:

欢迎订阅 YY滴C++专栏!更多干货持续更新!以下是传送门!

目录

一.认识基本的空操作指令NOP指令

  • 该指令是延迟系统种比较基础的一环,为一个机器周期

二.认识循环指令DJNZ

  • 认识该指令只需要顾名思义即可
  • JZ:JUMP WHEN ZERO(当值为0时跳转)
  • JNZ:JUMP WHEN NO ZERO(当值不为0时跳转)
  • DJNZ:DELETE 1,JUMP WHEN NO ZERO(值减1,当值不为0时跳转)

三.一个1秒延时子程序的编写过程

  • 先用DJNZ(减1循环),实现了一个500微妙的的延时
  • 因为循环体内会执行2个机器周期
  • 我们再利用NOP,在循环体内加两个NOP空指令(延长循环体内机器周期),即实现

四.理解设计思路:嵌套结构的方法来实现延时程序

相关推荐
IT古董8 小时前
《FDE前沿部署工程师实战教程》33 - Enterprise AI Observability:从Agent Trace到全链路智能运维
数据库·人工智能
for_ever_love__8 小时前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
Nturmoils12 小时前
GROUP BY 先别想当然,查汇总前把规则跑清楚
数据库
comyccccc12 小时前
LM2596电源PCB布局布线全解析学习笔记
单片机·嵌入式硬件
最笨的羊羊13 小时前
Oceanbase数据库系列之:向量数据库核心知识
数据库·oceanbase
fish_xk13 小时前
mysql中的表的约束
数据库·mysql
谢亮_vipxieliang13 小时前
Go Channel 高级模式——从底层原理到扇出扇入实战
java·数据库·golang
qq_4017004114 小时前
FreeRTOS 堆内存管理源码剖析:释放一块内存,空闲块数量反而变少了?
单片机·freertos
ggaofeng14 小时前
自己编写邮件服务器和客户端
数据库
java1234_小锋14 小时前
【技术专题】Mysql8 数据库 - Mysql8 添加,更新,删除数据
数据库·mysql