【单片机期中测试】10.利用定时器实现pwm呼吸灯

简介: 【单片机期中测试】10.利用定时器实现pwm呼吸灯
#include<reg52.h>
#define uc unsigned char
sbit led=P2^0;
sbit key=P3^1;
unsigned int time=0,s=0;
void delay(uc c)
{
  uc a,b;
  for(;c>0;c--)
    for(a=38;a>0;a--)
      for(b=130;b>0;b--);
}
void ss() interrupt 3
{
  TH1=64536/256;
  TL1=64536%256;
  time++;
  if(time>=10) time=0;
  if(time<s)
    led=0;
  else
    led=1;
  TF1=0;
}
void main()
{
  TMOD=0x10;
  TH1=64536/256;
  TL1=64536%256;
  ET1=1;
  TR1=1;
  EA=1;
  while(1)
  {
    if(key==0) s++;
    if(s>=10) s=1;
    delay(1);
    while(key==0);
    delay(1);
  }
}

利用定时器控制pwm波形,主函数通过独立按键控制占空比

  • 接线:
  • led接P2^0
  • key接P3^1
相关文章
|
3月前
|
传感器 芯片
毕业设计 基于51单片机霍尔电机转速测量温度PWM调速设计
毕业设计 基于51单片机霍尔电机转速测量温度PWM调速设计
|
1月前
|
传感器
单片机定时器中断
单片机定时器中断
|
3月前
|
应用服务中间件 nginx
nginx中的定时器源码分析与测试
nginx中的定时器源码分析与测试
18 0
|
4月前
|
编解码 前端开发 安全
基于CW32F030单片机的便携式多功能测试笔
一、产品背景 在日常的硬件调试工作中,我们最常使用的仪器仪表可能就是万用表了,虽然万用表号称“万用”,但大部分时候,我们需要使用到的功能无非是电压测量和通断测量。 作为调试的“得力干将”,万用表有时候也会存在一些缺点和局限性,比如:体积较大不便于携带、无法直接反应逻辑电平情况而需要自己判断、不同型号万用表的通断档位阈值电阻不同等等,而最令人头大的,莫过于万用表的COM表笔通常需要接地,而pcb上可能没有直插孔位可以方便的固定笔尖,因此不得不用手辅助“黑表笔“,影响操作灵活性。 二、产品构思 对于这支测试笔,我对他的功能有以下期望: 1、电压测量+阈值判断,阈值电平可以根据需求自行设定
52 0
基于CW32F030单片机的便携式多功能测试笔
|
6月前
|
编解码 网络性能优化 芯片
如何用51单片机实现pwm调光+呼吸灯(超详细+源码)
如何用51单片机实现pwm调光+呼吸灯(超详细+源码)
406 0
如何用51单片机实现pwm调光+呼吸灯(超详细+源码)
|
7月前
STM32F0单片机 PWM + ADC 控制有刷电机
STM32F0单片机 PWM + ADC 控制有刷电机
|
8月前
【单片机期中测试】13.串口通信的应用(2)—— 超声波通过串口返回数据
【单片机期中测试】13.串口通信的应用(2)—— 超声波通过串口返回数据
78 0
|
8月前
【单片机期中测试】12.串口通信的应用(1)——两台单片机之间的通信
【单片机期中测试】12.串口通信的应用(1)——两台单片机之间的通信
90 0
|
8月前
【单片机期中测试】11.交通灯
【单片机期中测试】11.交通灯
30 0
|
18天前
|
测试技术 C语言
网站压力测试工具Siege图文详解
网站压力测试工具Siege图文详解
26 0