51单片机的脉冲控制器

发布者:EternalBliss最新更新时间:2015-11-18 来源: eefocus关键字:51单片机 手机看文章 扫描二维码
随时随地手机看文章
这个是在前面那个定时器的基础上改过来的。
 
 
脉冲控制器
   输出4个脉冲,输出方式:
   先输出P0 50ms,停止100ms后,输出P1 50ms,停止100ms后。。。
   P3输出完成后,停止10秒,之后循环
   由于时间比较规整,可以在中断里判断输出:
   第一个到时,输出P0,   第二个到时,关闭P0   第三个到时,无动作
   第四个到时,输出P1,   第五个到时,关闭P1   第六个到时,无动作
   第七个到时,输出P2,   第八个到时,关闭P2   第九个到时,无动作
   第十个到时,输出P3,   第11个到时,关闭P3   
   休息200个周期,第211个到时,复位i
   
   case i=1,4,7,10,输出;    2,5,8,11,关闭所有输出
 
   50ms,晶振为11.0592,初值为0x4C00
 
#include "reg51.h"
 
sbit P0_0 = P0^0;
sbit P0_1 = P0^1;
sbit P0_2 = P0^2;
sbit P0_3 = P0^3;
char i = 0;
 
void main()
{
    TMOD = 0x11; //T0方式1
    TL0  = 0x0; //TL0的初值
    TH0  = 0x4C; //TH0的初值
    ET0  = 1; //定时器1的中断允许
    EA   = 1; //开中断
    TF0  = 0;
    TR0  = 1;  
    while(1);
}
 
void Int_T0() interrupt 1 using 2
{
    TL0 = 0x00; //重新装入初值
    TH0 = 0x4C;
i++;
 
switch (i)
{
case 1: P0_0 = 0; break;
case 2: P0_0 = 1; break;
case 4: P0_1 = 0; break;
case 5: P0_1 = 1; break;
case 7: P0_2 = 0; break;
case 8: P0_2 = 1; break;
case 10: P0_3 = 0; break;
case 11: P0_3 = 1; break;
case 211: i = 0; break;
}
}

关键字:51单片机 引用地址:51单片机的脉冲控制器

上一篇:基于51单片机数码管的代码例子
下一篇:单片机程序之三,数码管显示0-9自检

推荐阅读最新更新时间:2024-03-16 14:40

51单片机多机通信电路图及C语言程序
多机通信电路图 此处,U1作为主机,U2为从机1,U3为从机2。 多机通信C语言程序 (1)主机程序 #include #include #define _SUCC_ 0x0f//数据传送成功 #define _ERR_ 0xf0//数据传送失败 unsigned charTable ={0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39}; unsigned char Buff ; //数据缓冲区 unsigned char temp=0xff; sbit KEY1=P1^6; sbit KEY2=P1^7; //unsigned char addr; //延时1ms函数 void de
[单片机]
<font color='red'>51单片机</font>多机通信电路图及C语言程序
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,提高刷新频率以令肉眼察觉不出闪烁。
[单片机]
51单片机基础之外部中断(一)
代码: #include reg51.h typedef unsigned char u8; typedef unsigned int u16; sbit LED=P2^0; sbit KEY=P3^2; void delay(u16 i) { while(i--); } void EXIT0_Init(void) //外部中断初始化 { IT0=1;//跳变沿触发方式(下降沿),低电平触发 EX0=1;//打开INT0的中断允许,打开外部中断0允许 EA=1;//打开总中断 } void main(void) { EXIT0_Init(); while
[单片机]
51单片机中的串口中断模式
最近在写51的串口,遇到一些问题,折腾了十天左右,终于解决了,串口接收数据,用的中断模式,在一个有四层嵌套的while循环中,最底层的循环中使用串口数据,结果发来的数据不正常,一般是第一次没有发过来,第二次的时候一起把第一次的数据一起送上来,而且这种现象是我在用到xdata数据以后就会出现(不管程序中哪个地方用到),要是都用idata就不会出现这个问题,很是奇怪,说实话,我至今没有找到原因,但是找到一个解决办法,分享一下: 在最底层的while循环中,不采用中断接收串口数据,而是采用查询的方式接收串口数据,这样的话就正常了
[单片机]
51单片机——定时器/计数器
1.概述 8051单片机内部有T0和T1两个定时器/计数器。它们既可用作定时器,也可用作计数器,可以通过编程来设置其使用方法。 2.定时器/计数器 2.1 定时功能 2.2.1 定时功能的用法 当定时器/计数器用作定时器时,可以用来计算时间。如果要求单片机在一定的时间后产生某种控制,可将定时器/计数器设为定时器。单片机定时器/计数器的定时功能用法如图1所示。 图1 定时器/计数器的定时功能用法 要将定时器/计数器 T0设为定时器,实际上就是将定时器/计数器与外部输入断开,而与内部信号接通,对内部信号计数来定时。单片机的时钟振荡器可产生12MHz的时钟脉冲信号,经12分频后得到1MHz的脉冲信号
[单片机]
<font color='red'>51单片机</font>——定时器/计数器
单片机成长之路(51基础篇) - 013 MCS-51单片机控制详解–T2M
T2CON:定时器控制寄存器 寄存器地址0C8H,位寻址0C8H~0CFH。 位地址 CF CE CD CC CB CA C9 C8 位符号 TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2 TF2:T2溢出标记   当T2溢出时TF2=1,TD2只能用软件清除   当RCLK=1或TCLK=1时,TF2将不置位 EXF2:T2外部标记   当EXEN2=1时,T2EX/P1.1引脚上的负跳变引起T2的捕捉/重装操作,此时EXF2=1。在T2中断允许时,EXF2=1将引起中断,EXF2只能用软件清除。在T2的向上、向下计数模式下(DCEN=1)EXF2的置
[单片机]
51单片机ADC0832电压测量液晶1602显示的C程序与proteus仿真
很早对AD转换感兴趣,也想自己业余做块单片机开发板,让广大的电子设计爱好者学习使用单片机。 今天通过搜索,整理了proteus 7可以仿真通过的基于51单片机+ADC0832电压采集并通过液晶1602显示电压的C程序及电路连接图,希望对大家有所帮助。 程序是谁写的谁修改的并不主要,主要的是学会并使用单片机AD转换,这才是王道。 电路连接图如下: C程序如下: #include reg52.h #include intrins.h #include math.h /**********************************8/ /**********LCD1602接口程序*********
[单片机]
<font color='red'>51单片机</font>ADC0832电压测量液晶1602显示的C程序与proteus仿真
基于8051单片机的数控电源设计方案
本文介绍了以8051单片机为控制单元,以数模转换器DAC0832输出参考电压,以该参考电压控制电压转换模块LM350的输出电压大小。该电路设计简单,应用广泛,精度较高等特点.LM350系列三端可调式集成稳压器的方法。   关键词:单片机(MCU),数模转换器(DA),掉电存储器(EEPROM)。   引言   目前所使用的直流可调电源中,几乎都为旋纽开关调节电压,调节精度不高,而且经常跳变,使用麻烦。利用数控电源,可以达到每步0.1V的精度,输出电压范围0~15V,电流可以达到2A。   系统结构 图1:硬件系统结构图   对选用芯片说明   DAC0832是一款常用的数摸转换器,它有两种连接模式,一种是电
[单片机]
基于80<font color='red'>51单片机</font>的数控电源设计方案
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved