基于51单片机设计的闪烁灯

1.实验任务  如图4.1.1所示:在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。2.电路原理图                        图4.1.13.系统板上硬件连线  把“单片机系统”区域中的P1.0端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。4.程序设计内容(1).延时程序的设计方法  作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁时间间隔为0.2秒,相对于微秒来说,相差太大,所以我们在执行某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是如何设计呢?下面具体介绍其原理:  如图4...
关键词: 51单片机 闪烁灯

http://www.eeworld.com.cn/mcu/article_2017123137077.html 发布时间: 2017-12-31



单片机定时器中断时间误差的原因分析及补偿

1 前言单片机内部一般有若干个定时器。如8051单片机内部有定时器0和定时器1。在定时器计数溢出时,便向CPU发出中断请求。当CPU正在执行某指令或某中断服务程序时,它响应定时器溢出中断往往延迟一段时间。这种延时虽对单片机低频控制系统影响甚微,但对单片机高频控制系统的实时控制精度却有较大的影响,有时还可能造成控制事故。为扩大单片机的应用范围,本文介绍它的定时器溢出中断与CPU响应中断的时间误差、补偿误差的方法和实例。2 误差原因、大小及特点产生单片机定时器溢出中断与CPU响应中断的时间误差有两个原因。一是定时器溢出中断信号时,CPU正在执行某指令;二是定时器溢出中断信号时,CPU正在执行某中断...

http://www.eeworld.com.cn/mcu/article_2017123137076.html 发布时间: 2017-12-31



c51单片机定时中断的精确定时编程方法大全

引 言  MCS-51单片机的中断响应延迟时间,取决于其它中断服务程序是否在进行,或取决于正在执行的是什么样的指令。单中断系统中的中断响应时间为3~8个机器周期[1]。无论是哪一种原因引起的误差,在精确定时的应用场合,必须考虑它们的影响,以确保精确的定时控制。根据定时中断的不同应用情况,应选择不同的精确定时编程方法。  文中以定时器T1工作在定时方式1为例,晶振频率为12MHz 。1 方法1  在定时器溢出中断得到响应时,停止定时器计数,读出计数值(反映了中断响应的延迟时间),根据此计数值算出到下一次中断时,需多长时间,由此来重装载和启动定时器。例如定时周期为1ms,则通常定时器重装...

http://www.eeworld.com.cn/mcu/article_2017123137075.html 发布时间: 2017-12-31



51单片机T0定时器应用2

1.实验任务  用AT89S51的定时/计数器T0产生2秒钟的定时,每当2秒定时到来时,更换指示灯闪烁,每个指示闪烁的频率为0.2秒,也就是说,开始L1指示灯以0.2秒的速率闪烁,当2秒定时到来之后,L2开始以0.2秒的速率闪烁,如此循环下去。0.2秒的闪烁速率也由定时/计数器T0来完成。2.电路原理图图4.16.13.系统板硬件连线(1).把“单片机系统”区域中的P1.0-P1.3用导线连接到“八路发光二极管指示模块”区域中的L1-L4上4.程序设计内容(1).由于采用中断方式来完成,因此,对于中断源必须它的中断入口地址,对于定时/计数器T0来说,中断入口地址为000BH,因此在中断入口地方...
关键词: 51单片机 T0 定时器

http://www.eeworld.com.cn/mcu/article_2017123137090.html 发布时间: 2017-12-31



51单片机PWM控制LED亮灭

设计思路:用定时器中断产生最小时间单位T0,每m个T0组成一个子周期T10,其中前n个T0为LED导通时间,即Ton=n*T0,则Toff=(m-n)*T0;每X个T10组成一个母周期T20,其中前y个T10为有效控制时间,后续的(x-y)个T10令LED熄灭或者子周期占空比调至最小。;适当调节n/m和x/y的比例使显示效果达到最佳。;以下是刚刚调试通过的小段程序,显示效果良好。;实验过程本人有一种推测,不知是否成立:;子周期的最小占空比的宽度应大于LED的点亮时间,即点亮LED的时间宽度n/m*T0应足够产生余辉。类似于动态数码管对点亮时间的要求。;母周期的宽度应小于1/50s,提高刷新频率...

http://www.eeworld.com.cn/mcu/article_2017123137074.html 发布时间: 2017-12-31



STC单片机AD和EEPROM的驱动C程序设计与编写

stc单片机具有在应用编程,调试起来比较方便;带有10位AD;内部eeprom;可在1T/机器周期下工作,速度是传统51单片机的12倍;下面是我写的AD和EEPROM的驱动C代码:/*----------------------------------------------------------------    *File Name: stc_AD.c                &nbs...
关键词: STC单片机 AD EEPROM

http://www.eeworld.com.cn/mcu/article_2017123137072.html 发布时间: 2017-12-31



基于51单片机的12864 LCD显示--按键电子时钟程序设计

//液晶屏为JM12864或FYD12864(带字库),我用这两种型号的屏没问题, 4行*8列汉字=32 串行通信 接/口P1.5--P1.7,可根据你的电路修改相应的接口。#include <reg52.h>#include <intrins.h>#define uchar unsigned charvoid LCD_ini();void ascii_change(void);void delay();void wri_add(uchar com);void wri_dat(uchar com1);void shan(void);void disp();vo...

http://www.eeworld.com.cn/mcu/article_2017123037066.html 发布时间: 2017-12-30



LCD1602四线编程方法程序设计实例

第一次调4线的LCD1602,比较困难,或者因为延迟不对,或者因为命令错误,我足足用了一天时间,搞定了4线的1602编程实现。这里提供51单片机和LPC23XX系列单片机的程序。51的程序是我上网找的,可以参考里面的实现步骤,可以直接仿真,但是不知道烧到板子里是否可以。LPC23XX系列单片机的程序可以直接烧写板子里运行,注意里面的管脚定义,因为在proteus里没找到对应的芯片,这里不知是否可以仿真。51程序#include <reg51.h>sbit LCM_RW=P2^0; //定义引脚sbit LCM_RS=P2^1;sbit LCM_E =P2^2;#define LCM...
关键词: LCD1602 四线编程

http://www.eeworld.com.cn/mcu/article_2017123037064.html 发布时间: 2017-12-30



51单片机串口使用方法与设计实验

很多朋友在使用单片机串口的时候存在着一定的问题,我根据自己的经验,给大家总结如下:串口调试经过调试,以上功能基本实现,目前可以通过上位机对单片机进行实时控制。程序如下://这是一个单片机C51串口接收(中断)和发送例程,可以用来测试51单片机的中断接收//和查询发送,另外我觉得发送没有必要用中断,因为程序的开销是一样的#i nclude <reg51.h>#i nclude<stdio.h>#i nclude <string.h>#define INBUF_LEN 4   //数据长度unsigned char inbuf1[INBUF_...

http://www.eeworld.com.cn/mcu/article_2017123037062.html 发布时间: 2017-12-30



51单片机IO口模拟串口通讯程序设计实例

51 IO口模拟串口通讯C源程#include <reg51.h>sbit BT_SND =P1^0;sbit BT_REC =P1^1;/**********************************************IO 口模拟232通讯程序使用两种方式的C程序 占用定时器0**********************************************/#define MODE_QUICK#define F_TM F0#define TIMER0_ENABLE TL0=TH0; TR0=1;#define TIMER0_DISABLE TR0=0;sb...

http://www.eeworld.com.cn/mcu/article_2017123037061.html 发布时间: 2017-12-30



基于51单片机的驱动程序设计(C51)

*————————————————————〖说明〗SPI总线驱动程序 包括的普通封装标准模式,特殊封装标准模式默认11.0592MHz的晶振。〖文件〗93CXX.C ﹫2003/5/12〖版本〗V3.00A Build 0803—————————————————————*//*通用93c06-93c86系列使用说明93c06=93c4693c56=93c6693c76=93c86DIPx 可以自行定义*/#include "reg51.h"#include "intrins.h"/*-------------------------------...

http://www.eeworld.com.cn/mcu/article_2017123037060.html 发布时间: 2017-12-30



基于(DHT90/SHT10)温湿度实时显示小系统详解

一、 目的与要求制作一个温湿度实时显示小系统,响应时间控制在1s左右,探头部分能够放进大约10cm直径的容器中。二、 工作原理采用AT89S52单片机作为本系统的控制单元,传感器采用DHT90(即把SHT10封装为4个2.54标准插针的独立结构,大连北方测控代理的价格为50元/片),显示模块为LCD1602。单片机收到来自DHT90的温湿度数据,再经过软件线性拟合,最后送到1602上显示并没隔1s刷新一次数据。三、 原理图  四、 硬件设计电源部分采用+5V开关电源集成模块(实测输出电压5.19V),这符合DHT90和AT89S52单片机的供电要求。本系统电路设计较简单,难...

http://www.eeworld.com.cn/mcu/article_2017123037057.html 发布时间: 2017-12-30



51单片机简单I/O实验实例源程序

一.实验要求以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理。二.实验目的1.学习在单片机系统中扩展简单I/O接口的方法。2.学习数据输出程序的设计方法。3.学习模拟交通灯控制的方法。4.学习双色灯的使用。三.实验电路及连线四.实验说明1.因为本实验是交通灯控制实验,所以要先了解实际交通灯的变化规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北...
关键词: 51单片机 I O实验

http://www.eeworld.com.cn/mcu/article_2017123037055.html 发布时间: 2017-12-30



多功能AT89C2051倒计时器电路设计与制作

倒计时器在生活非常有用,用单片机自制,不但电路简单,而且功能可根据需要自行设计。由74系列、40系列小规模数字芯片设计的倒计时器非常多,但有显示不直观(无LED数码管);调整参数不灵活;计时精度低(采用RC振荡)等缺点。在此向大家介绍如何用89C2051单片机自制倒计时器的方法。一、功能介绍1. 独立的三路倒计时。均可独立设置启动、关闭。2. 范围:0~20小时,可任意设定。关机后数据不丢失。计时精度高:<0.1S3..独立的三路输出:a:第1路 蜂鸣器输出: 15Sb:第2路 PNP晶体管输出:5Sc:第3路 PNP晶体管输出:直致关机二、工作原理  &n...
关键词: AT89C2051 倒计时器

http://www.eeworld.com.cn/mcu/article_2017123037054.html 发布时间: 2017-12-30



单片机6位数字钟电路设计与分析

51单片机作的电子钟程序在很多地方已经有了介绍, 对于单片机学习者而言这个程序基本上是一道门槛,掌握了电子钟程序, 基本上可以说51单片机就掌握了80%。常见的电子钟程序由显示部分, 计算部分, 时钟调整部分构成。 时钟的基本显示原理:时钟开始显示为0时0分0秒,也就是数码管显示000000,然后每秒秒位加1 ,到9后,10秒位加1,秒位回0。10秒位到5后,即59秒 ,分钟...
关键词: 单片机 6位数字钟

http://www.eeworld.com.cn/mcu/article_2017123037052.html 发布时间: 2017-12-30



51单片机向PC电脑发送一组汉字的方法

最近看到有朋友在网上问单片机怎么向电脑发送一串汉字这个问题,其实这个问题也不难.呵呵.只要把相关的参数设置好一些,然后把汉字定义成一组字符向电脑发送就可以.为了让大家更明确的了解,我就写了下面的一个程序来演示一下.操作条件:1.XP操作系统.2.XP的超级终端显示.3.WJ-V4.0开发板.4.单片机STC89C52.5.晶振11.0592M 操作步骤:1.设置TMOD设置波特率和定时器1的工作方式.2.设置定时器的初始值.3.设置串行口工作方式.4.设置波特率不加倍.5.打开TR1允许发送.6.启动定时器.7.串行中断打开.8.打开EA中断. 现在发上源代码:#inclu...

http://www.eeworld.com.cn/mcu/article_2017123037049.html 发布时间: 2017-12-30



C51单片机设计模拟I2C总线驱动程序

/********************************** I2C总线驱动 *************************************模块名:I2C总线驱动    型号:I2C功能描述:此模块包括发送数据及接收数据,应答位发送,并提供了几个直接面对器件的操作函数,能很方便的与用户程序进行连接并扩展。    需要注意的是,函数是采用延时方法产生 SCL 脉冲,对高晶振频率要做一定的修改!!    在写E2PROM的时候一定要延时!!!   ...

http://www.eeworld.com.cn/mcu/article_2017123037045.html 发布时间: 2017-12-30



基于增强型STC系列单片机的微型打印机设计方案

1引言由于常用的微型针式打印机的速度慢,噪声大,无法满足某些场合的需要。微型热敏打印机具有打印速度快、噪音低、可靠性高、字迹清晰、机头小而轻等优点,可满足各种场合的打印要求,因此得到广泛应用。笔者在汽车行驶记录仪的开发过程中,根据厂家要求,选用较为先进的热敏打印机作为打印设备。但微型热敏打印头对打印时序和温度要求较高,一旦控制不当极易造成打印头烧毁。因此,在有合理的硬件设计的基础上,软件设计也十分重要。本文使用某些软件设计替代了部分硬件电路,使打印机的控制电路得到了简化。2打印原理选用的FTP-628作为热敏打印头。该热敏打印头点结构384点/行,水平方向点密度:8点/mm,垂直方向行间距:8...

http://www.eeworld.com.cn/mcu/article_2017122937042.html 发布时间: 2017-12-29



利用51单片机实现IO口模拟串口

有时需要双串口,转贴一篇 地址见下面IO口模拟串口 1602显示数据位内容  程序可以实现一个51单片机有两个串口#include<regx52.h>sbit BT_SND =P1^1;sbit BT_REC =P1^0;//1602部分引脚定义sbit LCM_RW =P2^1 ;//定义引脚sbit LCM_RS =P2^0;sbit LCM_E =P2...

http://www.eeworld.com.cn/mcu/article_2017122937040.html 发布时间: 2017-12-29



普通51单片机驱动3.5寸TFT的应用实例与源代码!

  前市场流行的3.5寸屏基本上都是只内置了驱动器,而不带控制器,这样给用户的使用造成了一些难度。基本上很多朋友在用彩屏时选择一些带LCD控制器的ARM7或ARM9去开发,对于不会ARM开发的朋友来说,只使用普通MCU,这样可以选择的3.5寸TFT模块,就很难找到了。  本文就是基于市场上一款比较使用的3.5寸TFT模块编写的,用户只需要帮该TFT模块当作普通的单色液晶的开发思路来使用,就可以很容易去编程。  一、 硬件选择  1、   MCU:AT89S51  2、   开发编译环境:Keil C51  3、   3.5寸TFT模块型号:MzT35C1  二、 ...

http://www.eeworld.com.cn/mcu/article_2017122937036.html 发布时间: 2017-12-29




<上一页 45678910111213141516171819 下一页> 相关结果约12,080个