为了保存住假期里学习过的单片机,尽量做到一个星期模仿一个实例,也是进一步学习Proteus。
今天编写的是LED间隔闪光,时间为1S,仿真软件Proteus。
/* Main.c file generated by New Project wizard
*
* Created: 周六 11月 25 2017
* Processor: 80C52
* Compiler: Keil for 8051
* Author: Chenchong
*/
#include
#include
#define uchar unsigned char
#define uint unsigned int
sbit LED=P1^0;
void DelayXms(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<120;i++);
}
}
void main(void)
{
// Write your code here
while (1)
{
LED=~LED;
DelayXms(1000);
}
;
}
关键字:80C51 单片机 LED闪烁
引用地址:
80C51单片机模仿实例100—1 LED闪烁
推荐阅读最新更新时间:2024-11-20 10:36
基于MC33905设计的MCU功率管理方案
MC33905是第二代系统基本芯片(SBC),包括有多中特性和增强的模块设计,能作为MCU和其它集成 电路 如 传感器 ,CAN收发器的先进的功率管理单元. MC33905内置了高速CAN 接口 (ISO11898-2 和-5),以及本地和 总线 故障诊断,保护以及故障安全操作模式等.本文介绍了MC33905主要特性,方框图,以及简化应用框图和典型应用 电路 , MC33905评估板EVB主要特性, 电路图 和材料清单(BOM). The 33904/5 is the second generation family of System Basis Chips which combine several features and
[电源管理]
单片机系统中的软件抗干扰技术
近年来单片机系统在工业测控领域的应用越来越广泛,而对于环境恶劣的工业现场,这种新型的微控制器的可靠性、安全性就成为了一个大问题。在实验室运行正常的程序到了工业现场却不能运行,或者出现运行不稳定经常死机等。在这里主要讨论一下如何通过软件技术来增强系统的稳定运行。 当系统的 CPU 部位受到干扰信号的作用时,将使系统失控。最典型的故障是破坏程序计数器 PC 的状态值。导致程序在地址空间内 " 乱飞 " ,或者陷入死循环。对这种情况的处理主要有这么几种方法: 1 、指令冗余技术; 2 、软件陷阱技术; 3 、看门狗技术。 下面 以 MCS-51 单片机来做说明。 指令冗余技术 指令由操作码和操作数组成,操
[单片机]
PIC单片机的基本程序设计方法解析
PIC单片机(Peripheral Interface Controller)是一种用来开发去控制外围设备的集成电路(IC)。一种具有分散作用(多任务)功能的CPU。本内容讲述了PIC单片机中的程序设计方面的学习 1、PIC单片机程序的基本格式 先介绍二条伪指令: EQU ——标号赋值伪指令 ORG ——地址定义伪指令 PIC16C5X单片机在RESET后指令计算器PC被置为全“1”,所以PIC16C5X几种型号芯片的复位地址为: PIC16C54/55:1FFH PIC16C56:3FFH PIC16C57/58:7FFH 一般来说,PIC单片机的源程序并没有要求统一的格式,大家可以根据自己的风格来编写。但这里我们推荐一
[单片机]
51单片机采用ADC0808检测ADC_LCD1602显示
系统整体设计 1)本设计的控制器采用51单片机 2)ADC0808采集光敏电阻的分压 光照强度越弱,被点亮的LED数目越多,当弱到一定阈值的时候 Speaker报警 3)LCD1602显示当前电压值 具体实现如下代码 #include reg51.h #include stdio.h #define uchar unsigned char #define uint unsigned int #define DATA_PORT P0 #define OPEN 0 #define CLOSE 1 volatile uchar Speaker_Alarm = 0; uchar Flag_2s = 0; //---------
[单片机]
STM32F103单片机使用内部RC振荡器做时钟源
平时在做项目的时候都用的是外部晶振做为时钟源,想试试用内部RC振荡器做为时钟源,在网上搜了一下如何设置内部时钟,发现资料比较少的。决定将设置内部RC振荡器做为时钟源的方法记录下来。 用的单片机是STM32F103C8T6,项目工程是在正点原子的示例代码上修改来的。用一个LED工程测试,在主程序中闪烁LED灯。 #include sys.h #include delay.h #include usart.h #include led.h int main ( void ) { delay_init(); //延时函数初始化 LED_Init(); //初始化与LED连接的硬件接口 while
[单片机]
基于普通单片机的LIN协议实现方案
1 概述 LIN协议是新出现的一种新型低成本串行通信总线,其全称是Local Interconnect Network,即局部互联网络。它最开始出现于汽车行业,是为解决汽车智能化和网络化的发展要求和降低汽车制造成本的矛盾而提出来的一种串行总线协议,主要用于车门、车灯等需要简单控制但又要求智能控制的场合。它的主要特点是:采用单个主控制器/多从设备通信模式;基于普通UART/SCI接口硬件实现,协议简单;网络传输速率不高,最高可达20kb/s。由于LIN协议的突出特点是协议对硬件的依赖程度低,可以基于普通单片机的通用串口等硬件资源以软件方式实现,成本低廉,因此可广泛应用于汽车行业以外的其他领域,如智能家庭网络内部的数据传输、节点控
[应用]
51单片机IO口模拟串口通讯1-延时法
最近因工作需要,研究了一下单片机IO口模拟串口通讯的相关知识。相关内容主要参考了网上《51单片机模拟串口的三种方法》和《单片机IO口模拟串口程序(发送+接收)》两篇文档,并动手做了一下实验。感受颇多。 硬件环境:STC89C52 软件环境:IDE Keil uVision V4.10 编译器 C51 V9.0 代码如下: /********************************************** 方法1:延时法 硬件:11.0592MHz晶振,STC89C52,RXD P1.0 TXD P1.1 波特率:9600 描述:所谓延时法是指根据模拟出的波特率,每1位持续的时间的长短是通过循环空指令来延
[单片机]
GD32 MCU电源复位和系统复位有什么区别
GD32 MCU的复位分为电源复位和系统复位,电源复位又称为冷复位,相较于系统复位,上电复位更彻底,下面为大家详细介绍上电复位和系统复位的实现以及区别。 电源复位包括上电/掉电复位或者从standby模式唤醒产生的复位,电源复位将会复位除备份域以外的所有寄存器以及SRAM,如果软件上希望实现电源复位,可以通过GPIO控制电源或者通过进入standby之后通过看门狗唤醒实现。 系统复位实现的方式比较多,包括外部引脚复位、独立看门狗复位、窗口看门狗复位、内核软复位等,系统复位电路如下图所示,内部系统复位会至少产生20us的NRST低电平,进而被内部电路捕捉到,实现系统复位。因而此处就要有个要求,外部电路不能影响内部拉低NRST
[单片机]