合集-STC15学习笔记
摘要:转载自:知乎 https://zhuanlan.zhihu.com/p/628407258 作者:rakey (作者主页 https://www.zhihu.com/people/rakey-49) 学习51单片机之前你一定要具备的基础知识。 1、C语言基础。 2、数字电路基础。 3、模拟电路基础。
阅读全文
摘要:【Proteus仿真】STC15单片机+LCD1602驱动显示时间(DEMO)示例 代码: /************* 本程序功能说明 ************** 驱动LCD1602字符屏. 显示效果为: LCD显示时间. 第一行显示 Clock demo 第二行显示 9-30-27 *****
阅读全文
摘要:8051架构是一种经典的微控制器架构,广泛应用于各种嵌入式系统中。在8051架构中,中断是一种重要的机制,用于处理异步事件,如外部设备的输入、定时器的溢出等。每个中断都有一个对应的中断号,用于标识和处理不同的中断源。 以下是8051架构中常见的中断号及其对应的硬件资源: 外部中断0 (INT0) 中
阅读全文
摘要:STC15单片机I/O口有四种模式,分别是准双向口、推挽输出、高阻输入和开漏输出。那么什么是准双向口、推挽输出、高阻输入和开漏输出呢?单片机的这四种模式又是怎么体现出来呢?我们来看看STC15芯片手册上各种模式的说明如下图所示。 准双向口:与传统8051的P1、P2和P3口相同模式,灌电流达到20m
阅读全文
摘要:标准51单片机是12T的,就是说12个时钟周期(晶振周期,例如12M的,周期是1/12M,单位秒),机器做一个指令周期,刚好就是1/12M*12=1us,常见指令例如_nop_就是一个周期,刚好1us,其他的大多多于一个周期,乘除法更多。所以如果计算指令时间可以这样算。 而现在51核的单片机工艺质量
阅读全文
摘要:.h 文件 #ifndef __MAIN_H_ #define __MAIN_H_ /* Includes */ #include <STC15.h> /* extern variables */ /* extern function prototypes */ #endif /**********
阅读全文
摘要:简短不看版 STC15的SRAM分为idata和xdata两大部分,data又是idata的一部分。 空间分配先使用data,data不够再用idata,idata使用时要预留22个字节以上的空间进行压栈,idata不够再使用xdata,这样的程序效率是最高的 STC15 默认先使用idata中的d
阅读全文
摘要:PCA大致工作原理 PCA是一个具有捕获功能的16位定时器,高八位TH0,低八位TL0,CCON寄存器控制着定时器的计数与中断请求。 CR=1表示开始计数 中断:CCON最低位加上CMOD的最低位可以控制产生中断。中断的向量是interrupt 7,进和中断时,必须首先将sbit CCF0 = CC
阅读全文
摘要:CCP/PCA/PWM是几个功能组合在一起的名称,相当于一个模块的名称。 这个模块包括捕获(Capture)、比较(Compare)和脉宽调制(PWM)三个功能,它们通过同一个引脚输出或输入。CCP/PCA/PWM相当于一个模块的名称,是STC15比STC89单片机多出来的外设功能,被集成到单片
阅读全文
摘要:数据结构(结构体定义借鉴了面向对象思想): #ifndef __KEY_H_ #define __KEY_H_ //定义按键引脚 #define KEY1_State P32 //定义结构体类型 typedef struct { uint8_t volatile KEY_Flag; //按键标志位
阅读全文
摘要:本文前提:读者已经知道如何用STC15实现串口重定向的基础知识(大体思路和代码大意)。 如果不知道,请移步: 《STC15单片机-串口打印》:https://blog.csdn.net/weixin_46251230/article/details/126679956 问题1:uint8_t 数字增
阅读全文
摘要:系统流程图 如果产品有低功耗,则可以使用这个系统框架,根据系统状态位切换系统状态,分为系统运行和系统待机两个状态 程序 程序主要由 main.c 和 system.c 组成。 main.c #include "system.h" extern System_t System;//System_t 对
阅读全文