基于51单片机的可控硅调压调光程序-带过零检测

#include<reg52.h>

#include<intrins.h>
sbitledRS=P1^0;
sbitledRW=P1^1;
sbit ledE=P1^2;
sbit keyjia=P2^7;
sbitkeyjian=P2^6;
sbitcontrolLD=P1^3;
bitflag1=1;
bitflag2=1;
unsigned
char code table[]=" guang liangdu
";
unsignedchar code table1[]=" 00 ";
intnum,flag=0,count=0;
charliangdu=3;
voiddelaykt(void) //导通延时
{
unsigned char a;
for(a=2;a>0;a--);
}
voiddelay(int z) //可调延时
{
unsigned x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--); 
}
void
delay9ms(void) //误差
-0.43402777778us 延时9ms
{
unsigned char a,b,c;
for(c=1;c>0;c--)
for(b=224;b>0;b--)
for(a=17;a>0;a--);
}
voidwrite_com(unsigned com) //写指令
{
ledRS=0;
P0=com;
delay(10);
ledE=1;
delay(20);
ledE=0; 
}
voidwrite_date(unsigned date) //写数据
{
ledRS=1;
P0=date;
delay(10);
ledE=1;
delay(20);
ledE=0;
}
voidwrite_liangdu(unsigned liangdu) //写亮度
{
int shi,ge;
shi=(liangdu-3)/10;
ge=(liangdu-3)%10;
write_com(0x80+0x40+7);
write_date(0x30+shi);
write_date(0x30+ge); 
}
voidinit() //初始化

controlLD=1; //触发控制初始化
ledRW=0; //液晶初始化
ledE=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x80);
for(num=0;num<15;num++)
{
write_date(table[num]);
delaykt();
}
write_com(0x80+0x40);
for(num=0;num<15;num++)
{
write_date(table1[num]);
delaykt();
}
EA=1; //外部中断设置
EX0=1;
IT0=1;
}
voidkeyscanf() //键盘判断
{
if(keyjia==0) //加键判断
{
delaykt();
if(keyjia==0)
{
if(flag1==1)
{
flag1=0;
liangdu++;
if(liangdu==10)
liangdu=3;
write_com(0x80+0x40+7);
write_liangdu(liangdu);

}
}
else if(keyjia!=0)
{
delaykt();
if(keyjia!=0)
flag1=1;
}
if(keyjian==0) //减键判断
{
delaykt();
if(keyjian==0)
{
if(flag2==1)
{
flag2=0; 
liangdu--;
if(liangdu==2)
liangdu=9;
write_com(0x80+0x40+7);
write_liangdu(liangdu); 

}
}
else if(keyjian!=0)
{
delaykt();
if(keyjian!=0)
flag2=1;

}
voidzhongduan() interrupt 0 //外部中断
{
flag=1; 
}
voidtimepd() //同步标志判断与定时器设置
{
if(flag==1)
{
flag=0;
TMOD=0x01;
TH0=(65536-1000*(10-liangdu))/256;
TL0=(65536-1000*(10-liangdu))%256;
ET0=1;
TR0=1;

}
voidtime0() interrupt 1 //定时中断程序
{
count=1; 
}
voidchufa() //MOS3020触发
{
if(count==1)
{
count=0;
controlLD=0;
delaykt();
controlLD=1;
delay9ms();
controlLD=0;
delaykt();
controlLD=1;

}
voidmain()

init();
while(1)
{
keyscanf();
timepd();
chufa(); 
}
}

基于51单片机的可控硅调压调光程序-带过零检测相关推荐

  1. p620光耦接单片机_基于51单片机的可控硅调压调光程序-带过零检测

    标签: 单片机 单片机(Microcontrollers,亦称MCU)包括了CPU.随机存储器RAM.只读存储器ROM.多种I/O口和中断系统.定时器/计数器等功能集成到一块硅片上构成的一个小而完善的 ...

  2. 基于51单片机 数控恒流源设计 可调电流源

    设计硬件组成: 基于51单片机 数控恒流源设计 可调电流源基于单片机可调电流源设计  项目定制觉得选题不错 分享一下 由51单片机+LCD1602液晶+变压器+整流桥+开关电源LM2596+TLC56 ...

  3. 74hc164驱动数码管c语言程序,基于51单片机的74HC164驱动数码管显示程序与仿真

    基于51单片机的74HC164驱动数码管显示程序与仿真 基于51单片机的74HC164驱动一位数码管显示程序与仿真 #include #include #define uchar unsigned c ...

  4. 基于51单片机数字温度报警器_DS18B20可调上下限

    51单片机数字温度报警器_DS18B20可调上下限 (仿真+程序+原理图) 原理图:Altium Designer 仿真版本:proteus 7.8 程序编译器:keil 4/keil 5 编程语言: ...

  5. 基于51单片机数字频率计仿真设计(proteus仿真+程序+原理图+参考报告+器件清单)

    51单片机数字频率计仿真设计 51单片机数字频率计仿真设计 主要功能 任务书 实物图 仿真图 原理图 信号采集模块 脉冲产生模块 分频模块 程序 设计报告 全部参考资料 资料下载链接 51单片机数字频 ...

  6. 基于51单片机 数控稳压电源设计 可调电压源

    设计硬件组成: 数控可调电压源系统 51单片机最小系统电路+数码管+TLC5615+稳压模块+LM358+TIP122+变压器设计而成. 设计功能介绍: 1.采用数码管显示当前电压数值 2.通过变压器 ...

  7. 基于51单片机 + ds12c887 + ds18b20 + lcd1602的时钟温度显示器(带闹钟功能)

    一.简介 本设计是基于51单片的的时间温度显示器,可以实现设置年月日.星期以及时分秒和温度的功能,此外还可以设置闹钟,到达设定的时间后会触发蜂鸣器报警,起到一个定时报警的功能. 1.在1602液晶上显 ...

  8. 63、基于51单片机数字频率计NE555数码管显示系统设计(程序+原理图+Proteus仿真+参考论文+开题报告+任务书+元器件清单等)

    摘  要 近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此越来越广泛地应用各个领域. ...

  9. 基于51单片机的智能门禁系统仿真LCD12864显示原理图程序

    硬件设计 本电路是由STC89C52 单片机为控制核心,射频卡信息由MFRC522模块读出,通过MCU在LCD12864上显示,通过按键完成密码验证和修改密码的功能.整个门禁系统框图如图3-1所示. ...

最新文章

  1. Uva 11400 - Lighting System Design (DP)
  2. 研究显示自动驾驶汽车只能解决三分之一的交通事故
  3. linux交换分区的目录,linux 下的交换分区及根目录
  4. 【Android学习笔记】设置App启动页
  5. mysql case break_按月转移日志表中日志时,mysql总是报‘MySQL server has gone away’这样的错!...
  6. 【C++】45.尽量不要在构造函数中调用函数或开启线程
  7. 关于自主开发和研究代码
  8. linux下安装虚拟天文馆,如何在Ubuntu 20.04、18.04中安装Stellarium 0.20.0虚拟天文馆
  9. win10文件夹加密_(十六)小众但好用:免费开源免注册的同步盘加密工具 Cryptomator...
  10. 为啥我的Python这么慢 (一)
  11. java 对象equals_浅谈Java对象的equals方法
  12. HTML圆角+div立体阴影
  13. Cartoon CG:卡通渲染(开篇)
  14. 【金三银四】TCP,UDP,Socket,Http网络编程面试题(2021最新版)
  15. 正常图片转灰色图片——灰度图
  16. 《分形艺术,当科学嫁给了艺术》稿件撰写历程
  17. nabcd分析解谜类rpg游戏
  18. 对接丰网查询物流信息
  19. sdk 今日头条_今日头条商业SDK(激励视频)的坑
  20. 文本框导入图片并显示到页面上

热门文章

  1. Codeforces 298A Snow Footprints 题解
  2. java wifi信息_Java中如何获取WiFi的名称和信息?
  3. Mac下如何使用keka解压缩文件?Keka for Mac使用教程
  4. 网易微专业python爬虫工程师一期多久_微专业-Python爬虫工程师 – 3个月成为网络爬虫工程师...
  5. mysql 5.6.25启动不起来
  6. kubernetes和docker----2.学习Pod资源
  7. windows查看进程及对应端口的进程
  8. 广东国税远程数据复制备份项目
  9. python100个常用术语_盘点Python中的常用术语
  10. 计算机技术应用于化学教学,第1篇多媒体技术应用于化学教学中意义.doc