找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2374|回复: 7
打印 上一主题 下一主题
收起左侧

毫秒级可调时间中断器制作 单片机程序LCD2004显示

  [复制链接]
跳转到指定楼层
楼主
利用单片机驱动继电器,可以串联在线设备中断,达到模拟故障。


仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


制作出来的实物图如下:



PCB图


更新了程序,四种功能:继电器中断,两路继电器不同步吸起或者落下,模拟方波跳动

单片机源程序如下:
  1. #include <intrins.h>                        //引用程序目录的相对路径中的头文件
  2. #include <reg51.h>                        //引用编译器的类库路径里面的头文件

  3. #include "Delay.c"                        //引用编译器的类库路径里面的头文件
  4. #include "2004.c"                        //引用编译器的类库路径里面的头文件
  5. #include "Keyscan.c"                        //引用编译器的类库路径里面的头文件
  6. #include "Test.c"                        //引用编译器的类库路径里面的头文件

  7. /******************************
  8.                 主程序
  9. ******************************/
  10. void Main()
  11.         {
  12.                 Init();                        //LCD初始化子程序
  13.                 PutString(3,6,"2021-04-06");                        //欢迎界面
  14.                 Delay(1500);                        //欢迎界面显示时长
  15.                 SendCmdorData(0x01,0);                        // 写命令,显示清屏:1、数据指针清零 2、所有显示清零
  16.                 Delay(50);                        //50ms延时,给硬件反应时间
  17.                 Display();                        //数据显示子程序
  18.                 Key=0xf0;                        //键盘口全部高电平
  19.                 while(1)                        //循环指令
  20.                         {
  21.                                 Keyscan();                        //键盘检测
  22.                                 switch(num)
  23.                                         {
  24.                                                 case 0:Setnum(num);num=50;break;    //执行数字添加子程序,键盘按键值赋空值
  25.                                                 case 1:Setnum(num);num=50;break;
  26.                                                 case 2:Setnum(num);num=50;break;
  27.                                                 case 3:Setnum(num);num=50;break;
  28.                                                 case 4:Setnum(num);num=50;break;
  29.                                                 case 5:Setnum(num);num=50;break;
  30.                                                 case 6:Setnum(num);num=50;break;  
  31.                                                 case 7:Setnum(num);num=50;break;  
  32.                                                 case 8:Setnum(num);num=50;break;  
  33.                                                 case 9:Setnum(num);num=50;break;  
  34.                                                 case 11:set_up_able++;data_temp=0;Set();num=50;break;                                        //执行设置参数子程序,键盘按键值赋空值
  35.                                                 case 12:set_up_able=0;Set();Start();num=50;break;                                //开始测试程序子程序,键盘按键值赋空值
  36.                                                 case 21:test=1;Display();set_up_able=0;Set();num=50;Relay1=1;Relay2=1;break;
  37.                                                 case 22:test=2;Display();set_up_able=0;Set();num=50;Relay1=1;Relay2=1;break;
  38.                                                 case 23:test=3;Display();set_up_able=0;Set();num=50;Relay1=0;Relay2=0;break;
  39.                                                 case 24:test=4;Display();set_up_able=0;Set();num=50;Relay1=1;Relay2=1;break;
  40.                                                 default:break;                        //default就是如果没有符合的case就执行它,default并不是必须的.
  41.                                         }
  42.                         }
  43.         }
复制代码


Keil代码与Proteus仿真下载:
毫秒级可调时间中断器(LCD).rar (111.23 KB, 下载次数: 23)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏4 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:25231 发表于 2022-4-10 03:01 来自手机 | 只看该作者
好资料,51黑有你更精彩!!!有时间也做个玩玩
回复

使用道具 举报

板凳
ID:584814 发表于 2022-7-6 15:39 | 只看该作者
毫秒级可调是可以的,但继电器响应就呵呵了
回复

使用道具 举报

地板
ID:1043176 发表于 2022-10-27 14:28 | 只看该作者
画洞洞板的软件可以发一下吗,看着特别好看,还有你是怎么把铜线整的这么直,我的都是七扭八歪的特别难看,有什么方法吗?
回复

使用道具 举报

5#
ID:579397 发表于 2022-11-29 23:54 | 只看该作者
尘沉陈 发表于 2022-10-27 14:28
画洞洞板的软件可以发一下吗,看着特别好看,还有你是怎么把铜线整的这么直,我的都是七扭八歪的特别难看, ...

Sprint-Layout 6.0,百度一下就能下载了
回复

使用道具 举报

6#
ID:579397 发表于 2022-11-29 23:57 | 只看该作者
man1234567 发表于 2022-7-6 15:39
毫秒级可调是可以的,但继电器响应就呵呵了

因为我需要使用的地方有交流、直流,220V以下的环境。除了继电器,还有啥好的方案给我参考下
回复

使用道具 举报

7#
ID:951974 发表于 2022-12-12 19:00 | 只看该作者
405616736 发表于 2022-11-29 23:57
因为我需要使用的地方有交流、直流,220V以下的环境。除了继电器,还有啥好的方案给我参考下

固态继电器啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表