单片机白炽灯调光程序

编程入门 行业动态 更新时间:2024-10-07 02:31:18

单片机白炽灯<a href=https://www.elefans.com/category/jswz/34/1768057.html style=调光程序"/>

单片机白炽灯调光程序

单片机白炽灯调光程序

/*
单片机白炽灯调光程序 (晶振:11.0592MHz)

*/
#include “reg52.h”

sbit lamp_pwm=P1^0;//可控硅位
sbit key0=P1^1;//降低亮度按键位
sbit key1=P1^2;//增加亮度按键位

unsigned int inc;

void INT0s()interrupt 0 using 0//INT0外部中断,过零检测触发
{
TR0=0;
if(!key0)//降低亮度
{
inc+=50;
if(inc>=8000)inc=8000;
}
if(!key1)//增加亮度
{
inc-=50;
if(inc<=800)inc=800;
}
TH0=(65536-inc)/256;
TL0=(65536-inc)%256;
TR0=1;
}

void timer1()interrupt 1 using 0//可控硅触发中断
{
unsigned char i;
lamp_pwm=0;//灯亮
for(i=0;i<2;i++);//延时2us
lamp_pwm=1;//灯灭
}

/STC不断电下载用******/
sfr ISP_DOWNS=0xe7;//ISP软复位地址
sbit ISP_SW=P3^0;//串口数据接收
void DebugDownISP()//软复位
{
if(!ISP_SW)ISP_DOWNS=0x60;
}
/********************************************/

void main()
{
TMOD|=0x01;
IT0=1;//INT0下降沿触发
EX0=1;//外部中断允许
ET0=1;
EA=1;//开总中断
inc=8000;
while(1)
{

更多推荐

单片机白炽灯调光程序

本文发布于:2024-03-07 19:42:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1718742.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:调光   白炽灯   单片机   程序

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!