51单片机
入门单片机
JHElec
目前主要学习单片机开发(arduino、51、esp32、stm32)及python等嵌入式软硬件开发知识
展开
-
c51定时器的使用---定时点亮led
因为 init_timer()函数已经配置好,1ms发生一次脉冲,进入中断。中断处理函数timer0_interrupt() 使用一个变量time_count来记录脉冲的次数,也就是说time_count的大小就代表计数了多少ms(因为设置了1ms记录脉冲一次)。定时器主要是配置寄存器:1)设置定时器工作模式(定时还是计数,这里使用定时0);2)定时多久,主要操作TH0和TL0,两个属于同一个寄存器;3)打开定时器开关,让定时器可以工作,包括总开关EA,使能定时器开关ET0,开始工作开关TR0。原创 2023-06-16 20:57:40 · 579 阅读 · 0 评论 -
定时器0程序
51单片机有两个16位的定时器/计数器,其核心部件为加法计数器。初始化步骤(1)TMOD的确定(2)计数器的计数初值X已知需要计的数n : X=2N-n(3)开中断。定时器/计数器在中断方式工作时,需开CPU中断和源中断——编程IE寄存器;(4)启动定时器/计数器——编程TCON中的TR1或TR0位。定时器/计数器结构图TCON为计数器控制寄存器(TCON)工作方式控制寄存器(TMOD)工作模式1工作模式2工作模式3代码#include &l原创 2022-05-06 23:56:26 · 1409 阅读 · 0 评论 -
51单片机之定时器/计数器0中断程序
用按键控制led的亮灭,这里的只用一根线,因为按键已经在电路中是固定好的。/**************************************************************************************实验现象:下载程序后,操作K4按键使LED1(D11)状态取反 接线说明: (具体接线图可见开发攻略对应实验的“实验现象”章节) 1,单片机-->LED&交通灯模块 P20-->D1 2,单片机原创 2022-04-28 23:34:25 · 3065 阅读 · 2 评论 -
51单片机之独立按键
利用一个按键来控制一个灯的亮灭分析按键的电路图k3、k4、k5、k6四个按键的网络标号为P35、P34、P33、P32,这几个I/O口是专门来开关的。本程序利用k3来控制与P1^5口相连的一个led。通过判断按键的状态来控制led的亮灭,达到按键按一下led亮或灭的效果。(用一根杜邦线将P3^5与led的总线端连接,总线端将P1口的八个led连接在一起)代码://头文件#include<reg51.h>#include<intrins.h>//定义变量typ原创 2022-04-24 16:47:03 · 3159 阅读 · 0 评论 -
51单片机之动态数码管显示
动态数码管显示原理显示原理动态数码管与静态数码管的实现方法差不多,首先是段选,即让哪一个数码可以工作。其次是位选,让工作的数码管显示数字。单片机的代码是一个一个执行的,之所以可以显示的效果不同,是因为延时不同。延时长,会看到四个数码管依次显示1、2、3、4数字。延时短,会看到“静态”的1、2、3、4。但并不是静态的,因为其时间达到了微秒级,人眼不能分辨频率,造成的视觉暂留。效果图展示与上图比较,下面的这张图可以看到一些不应亮的LED还发这微光,这是因为没有进行消隐导致的,我们可以在原创 2022-04-23 23:24:32 · 13137 阅读 · 3 评论 -
51单片机之共阳极静态数码管
经过一番探索和学习,明白了静态数码管的点亮原理。下面分享我的学习历程。原理图说明在51单片机的电路图中,有p20、p21、p22、p23的使能端,就是相当于4个开关,分别令其为低电平0则亮,高电平1则暗。P0口有8个端子分别为数码管的八段led, 也就是说控制使能端,可以控制这八个端子,不同的led亮则对应不同的数字或者是字母。在单片机中,数码管的输出p0~p8,对应下图的P0端。开源代码//头文件#include<reg51.h>//定义数组typedef原创 2022-04-22 21:04:29 · 6474 阅读 · 0 评论 -
51单片机之蜂鸣器
经过摸索,终于完成了流水灯的实现,重点是要学会看芯片的原理电路下面简单介绍一下实现的过程:一、芯片原理图:蜂鸣器电路上的P04标号可在CPU电路中找到对应的标号,我们可利用这个I/O口。蜂鸣器电路这里是j3端口,有一个R23的电阻与蜂鸣器相连,我们需要用一根杜邦线连接到CPU电路。选择R23对应右侧的端子(需要将帽盖拔下才能看见端子)。#include <intrins.h> //定义头文件typedef unsigned char u8; //定义无符号字符型typ原创 2022-04-20 09:45:23 · 7596 阅读 · 1 评论 -
2.STC89C52RC芯片之流水灯程序
这里编程软件使用keil 4和程序下载软件ISP.程序下载需冷启动和转换为hex文件 流水灯效果图 YL-39开发板#include <REGX52.H> /*头文件*...原创 2022-04-16 17:23:03 · 2411 阅读 · 0 评论