STC51单片机
STC89C52RC单片机,普中科技
王哈哈、
好好学习,天天向上。
展开
-
【Keil_MDK5】如何下载包pack?
可以从这里右键点击下载install,但是下载不了。如果可以下载,那一切无事。打开,安装,即可,打开Keil,便可。原创 2024-01-25 15:23:31 · 540 阅读 · 0 评论 -
【51单片机】外部中断
0、前言参考:普中 51 单片机开发攻略 第16章 及17章1、硬件。原创 2024-01-21 23:21:34 · 880 阅读 · 0 评论 -
【51单片机】
参考:普中 51 单片机开发攻略 第14章。原创 2024-01-21 17:55:01 · 631 阅读 · 0 评论 -
【51单片机】LED 点阵
参考:普中 51 单片机开发攻略 第13章。原创 2024-01-21 17:32:00 · 523 阅读 · 0 评论 -
【51单片机】IO 扩展(串转并)--74HC595
参考:普中 51 单片机开发攻略 第12章【51单片机入门教程-2020版 程序全程纯手打 从零开始入门】 https://www.bilibili.com/video/BV1Mb411e7re/?nop()是什么语句?<< and >> 位运算操作符【51单片机入门教程-2020版 程序全程纯手打 从零开始入门】 https://www.bilibili.com/video/BV1Mb411e7re/?从18:30—— 结尾。原创 2024-01-21 16:35:59 · 463 阅读 · 0 评论 -
【51、32单片机】模块化编程(.c .h文件)
USER:存放工程文件、主函数文件 main.c,以及其他包括system_stm32f10x.c等CORE :用来存放核心文件和启动文件OBJ :是用来存放编译过程文件以及hex 文件STM32F10x_FWLib :用来存放 ST 官方提供的库函数源码文件SYSTEM:此文件夹里面的代码由 ALIENTEK 提供,是STM32F10x 系列的底层核心驱动函数,可以用在 STM32F10x 系列的各个型号上面,方便大家快速构建自己的工程。HARDWARE:存放我们其他硬件的代码。原创 2024-01-21 00:41:27 · 410 阅读 · 0 评论 -
【51单片机】矩阵按键
参考:普中 51 单片机开发攻略。原创 2024-01-20 22:25:15 · 1025 阅读 · 0 评论 -
【51单片机】动态数码管
上一章我们主要是介绍一位数码管的内部结构及控制原理。下面我们再来介 绍下多位数码管及动态显示原理的相关知识。本章所要实现的功能是:控制动态数码管从左至右显示数字 0-7。原创 2024-01-20 00:21:58 · 636 阅读 · 0 评论 -
【锅炉报警系统】利用AT89C52、Keil5在Proteus做仿真设计
参考:普中51单片机开发攻略-A2 pdf采用软件:Proteus7.8:点击下载Keil5:点击下载AD:改成嘉立创ADVisio:点击下载设计内容:本设计是基于单片机的锅炉报警系统,主要实现以下功能:• 可实现LCD1602显示水位、温度和蒸汽压力;• 可通过按键调整水位、温度和蒸汽压力的阈值;• 通过超声波测量水位;• 通过DS18B20测量温度;原创 2024-01-18 00:51:14 · 965 阅读 · 0 评论 -
【51单片机】如何利用PZ-ISP将代码烧入到51单片机?
参考资料:“E:\普中-2&普中-3&普中-4开发板资料”我买的单片机就是有“-RC”系列的,但我没有选rc,就一直下载不进去!原创 2024-01-18 00:50:37 · 556 阅读 · 0 评论 -
【51单片机】延时函数delay的坑——关于无符号整型数据for语句“x >= 0“变成死循环
只能说,网上的东西是个人都能写(比如像我这种废物csdn就有好几万的访问量,经不住考验,一定要持有怀疑的态度。也请大家以后把代码跑通了再发上去吧,毕竟像我这种新手真的很痛苦。我懒得写delay函数,直接去csdn嫖代码,我一直以为别人肯定是跑通了才发出来,就一直奉为圭臬。x和y定义的是无符号整形,如果等于0的话它还在执行一次减一,以至于for变成while死循环。请认真看看以下延时函数是否正确,并且指出错误:(考考C语言功底)Proteus是否有问题,还加了晶振电路。研究Keil是否配置错误。原创 2024-01-09 14:48:46 · 582 阅读 · 0 评论 -
静态数码管显示
//静态数码管显示#include<reg51.h>typedef unsigned char u8;typedef unsigned int u16;sbit LSA=P2^2;sbit LSB=P2^3;sbit LSC=P2^4;u8 code smgduan[]={0x3f,0x30,0x07};void main(){ LSA=0; LSB=0; LSC=0; P0=smgduan[2]; while(1);}原创 2020-11-20 22:29:46 · 89 阅读 · 0 评论 -
21号成果
openmv通过串口输出0,但输出的了不是单纯的了,而是一串一串码,该怎么让51识别这些码是接下来的任务。import timefrom pyb import UARTuart = UART(3, 9600)while(True): uart.write("0") time.sleep(1000)51单片机串口通信代码 //静态数码管显示+PC串口通信#include<reg51.h>typedef unsigned char u8;typedef原创 2020-11-21 21:11:02 · 75 阅读 · 1 评论 -
定时器方式2
#include<reg52.h> #define uchar unsigned char#define uint unsigned int sbit led1=P1^0;uint num; void TIM0init(void){ TMOD=0x02; //设置定时器0为工作方式2 TH0=6; //装入初值 TL0=6; EA=1; //开总中断 ET0=1; //开定时器中断 TR0原创 2020-12-10 15:48:23 · 1523 阅读 · 0 评论 -
独立按键(用led表达)
该代码没有实用性,仅仅学习其原理/**************************************************************************************实验现象:下载程序后按下K1按键可以对D1小灯状态取反接线说明: (具体接线图可见开发攻略对应实验的“实验现象”章节) 注意事项:该函数只是为了学习其独立按键原理,不要实用,因为while()语句非常占用CPU *********原创 2020-11-25 23:00:05 · 161 阅读 · 0 评论 -
外部中断0
/**************************************************************************************实验现象:下载程序后,操作 K3 按键使 D1 状态取反接线说明: (具体接线图可见开发攻略对应实验的“实验现象”章节)1,单片机-->LED&交通灯模块P20-->D12,单片机-->独立按键模块P32-->K3注意事项:********************************原创 2020-12-08 17:15:02 · 415 阅读 · 0 评论 -
外部中断1
/**************************************************************************************实验现象:下载程序后,操作K4按键使LED1(D11)状态取反 接线说明: (具体接线图可见开发攻略对应实验的“实验现象”章节) 1,单片机-->LED&交通灯模块 P20-->D1 2,单片机-->独立按键模块 P33-->K4 注意事项原创 2020-12-08 17:27:15 · 2183 阅读 · 0 评论 -
2020-12-13 51单片机笔记
单片机型号选择错误 该STC软件左上角的单片机型号显示不出来 LCD1602显示屏插反extern uchar time;报错没定义 在其他文件运用时也要加上uchar time; 不能直接使用在.c文件定义变量,然后在.h里用 extern 引用是没问题的但是 .h 文件不能用 extern 引用自己 .c文件的变量在 .h里面一般不定义变量.h一般用宏定义 #define ,自己百度就知道宏定义了...原创 2020-12-22 18:18:24 · 164 阅读 · 1 评论 -
矩阵按键
/**************************************************************************************实验现象:下载程序后数码管显示0,按下矩阵按键上的按键显示对应的数字 注意事项: ***************************************************************************************/#inclu原创 2020-12-06 17:55:16 · 160 阅读 · 0 评论 -
动态数码管显示
/**************************************************************************************实验现象:下载程序后"动态数码管模块"从左至右显示0-7接线说明: 单片机-->动态数码管模块(具体接线图可见开发攻略对应实验的“实验现象”章节) 注意事项: ******************************************************原创 2020-11-18 19:14:24 · 344 阅读 · 0 评论 -
PC-51单片机实现串口通信(通过静态数码管表达)
成功了!!!当if(m==‘1’)则pc端就需要用文本模式输入数字//静态数码管显示+PC串口通信#include<reg51.h>typedef unsigned char u8;typedef unsigned int u16;sbit LSA=P2^2;sbit LSB=P2^3;sbit LSC=P2^4;u8 code smgduan[]={0x3f,0x30,0x4f};void UsartInit(){ SCON=0X50;原创 2020-11-20 22:23:48 · 762 阅读 · 1 评论 -
串口通信(PC-51单片机)
/**************************************************************************************实验现象:下载程序后打开串口调试助手,将波特率设置为4800,选择发送的数据就可以显示 接线说明: (具体接线图可见开发攻略对应实验的“实验现象”章节) 注意事项: **************************************************原创 2020-12-14 17:54:42 · 220 阅读 · 0 评论 -
延时函数
延时子函数void delayms(u16 x){ u16 i,j; for(i=x;i>0;i--) //循环一次1ms,共xms for(j=110;j>0;j--); }原创 2020-11-20 19:48:33 · 354 阅读 · 2 评论 -
定时器方式3(51单片机
方式3:当选择方式3时,定时器T0就会被分成两个独立的计数器或者定时器。此时,TL0为8位计数器,计数溢出好置位TF0,并向CPU申请中断,之后需要软件重装初值; TH0也被固定为8位计数器,不过TL0已经占用了TF0和TR0,因此TH0将占T1的中断请求标志TF1和定时器启动控制为TR1。 为了防止中断冲突,定时器T0在方式3时,T1不能产生中断,但可以正常工作在方式0、1、2下。通常这种情况下T1将用作串行口的波特率发生器。下面的例子是利用定时器方式3,TL0计数器对应的8位定时器实现第一个发光原创 2020-12-10 16:19:17 · 4300 阅读 · 0 评论