找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机+可控硅过零检测源程序及proteus仿真

  [复制链接]
跳转到指定楼层
楼主
一个51单片机做的带过零检测的可控硅驱动,下面是仿真原理图:



利用单片机中断实现可控硅的过零检测,下面是源代码:
  1. #include <reg51.h>
  2. #include"intrins.h"
  3. sbit fan=P3^7;
  4. sbit pressed=P3^5;

  5. unsigned char fan_open=0;
  6. unsigned char int_time=0;
  7. unsigned char table[9]={20,30,40,50,60,70,80,90,100};
  8. unsigned char p=0;

  9. //中断子程序
  10. void ext0(void) interrupt 0
  11. {
  12. int_time++;
  13. fan_open--;
  14. if(fan_open==0)          {fan_open=table[p];fan=0;}
  15. if(int_time>=100)  {fan_open=table[p];int_time=0;fan=1;}
  16. }

  17. //延时子程序
  18. void delay(void)
  19. {
  20. unsigned int i,j;
  21. for(i=0;i<10000;i++)
  22.         for(j=0;j<4;j++)
  23.                 _nop_();
  24. }

  25. /************主  程序*************/
  26. void main(void)
  27. {
  28. fan_open=table[p];
  29. IT0=1;
  30. EA=1;
  31. EX0=1;
  32. fan=1;
  33. while(1)
  34. {
  35. if(pressed==0)        {if(p>=9) p=0;p++;}       
  36. delay();         
  37. }
  38. }
复制代码



可控硅过零检测.rar

67.49 KB, 下载次数: 572, 下载积分: 黑币 -5

评分

参与人数 1黑币 +5 收起 理由
爱滴生 + 5

查看全部评分

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

使用道具 举报

沙发
ID:77245 发表于 2017-2-21 17:04 | 只看该作者
谢谢分享!!!!!!!!!!!!!!!!!!!!!!!!!!!
回复

使用道具 举报

板凳
ID:187159 发表于 2017-4-7 16:07 | 只看该作者
谢谢分享
回复

使用道具 举报

地板
ID:191180 发表于 2017-4-19 12:47 | 只看该作者
沙发!!!!
回复

使用道具 举报

5#
ID:48108 发表于 2017-5-1 15:58 | 只看该作者
谢谢分享
回复

使用道具 举报

6#
ID:47933 发表于 2017-5-1 21:36 | 只看该作者
本帖最后由 lyf898 于 2017-5-1 22:14 编辑

..............
回复

使用道具 举报

7#
ID:197402 发表于 2017-5-6 20:31 | 只看该作者
谢谢分享
回复

使用道具 举报

8#
ID:96072 发表于 2017-6-21 11:47 | 只看该作者
谢谢分享
回复

使用道具 举报

9#
ID:63812 发表于 2017-9-14 13:51 | 只看该作者
感谢分享,下来学习一下
回复

使用道具 举报

10#
ID:162196 发表于 2017-10-4 22:55 | 只看该作者
本帖最后由 a1234ssssss 于 2017-10-6 20:36 编辑

交流100个脉冲之中,在最低转速时,导通20个脉冲,截止80个,这样电机会有类似频闪的现象吗?
回复

使用道具 举报

11#
ID:257172 发表于 2017-12-4 13:56 | 只看该作者
很好的例程
回复

使用道具 举报

12#
ID:257186 发表于 2017-12-4 14:26 | 只看该作者
感谢分享,非常给力
回复

使用道具 举报

13#
ID:286181 发表于 2018-2-28 09:54 | 只看该作者
你这个有问题,调速,对于可控硅来说都是在单个周期内实现导通和关断,获得不同有效值,
回复

使用道具 举报

14#
ID:265915 发表于 2018-2-28 20:23 | 只看该作者
很想学习。
回复

使用道具 举报

15#
ID:89041 发表于 2018-5-7 18:04 | 只看该作者
希望对自己有用,好好学习
回复

使用道具 举报

16#
ID:328516 发表于 2018-5-12 21:34 | 只看该作者
谢谢分享
回复

使用道具 举报

17#
ID:366054 发表于 2018-7-6 09:11 | 只看该作者
学习学习
回复

使用道具 举报

18#
ID:389156 发表于 2018-8-23 09:53 | 只看该作者
能解释下 int_time++;fan_open--;  是什么意思吗
回复

使用道具 举报

19#
ID:389156 发表于 2018-8-23 09:59 | 只看该作者
能帮忙解释下 int_time++; fan_open--; 什么意思吗?没有理解,提前感谢
回复

使用道具 举报

20#
ID:389156 发表于 2018-8-23 11:12 | 只看该作者
471901064@qq.co 发表于 2018-2-28 09:54
你这个有问题,调速,对于可控硅来说都是在单个周期内实现导通和关断,获得不同有效值,

那这个程序能成功吗?我也同意单个周期控制导通关断,能仔细说说该怎么改这个程序吗?
回复

使用道具 举报

21#
ID:519881 发表于 2019-5-1 19:46 | 只看该作者
感谢分享!!找了好久 终于找到了
回复

使用道具 举报

22#
ID:523919 发表于 2019-7-16 17:36 | 只看该作者
能帮我解释一下他这个程序主要做的是什么吗?
最近在学习过零检测的东西。

给我解释一下吗
回复

使用道具 举报

23#
ID:583877 发表于 2019-10-30 22:31 | 只看该作者
你控制可控硅的电路对吗?
回复

使用道具 举报

24#
ID:164436 发表于 2019-12-23 10:09 | 只看该作者
下载下来学习学习
回复

使用道具 举报

25#
ID:686253 发表于 2020-1-15 15:46 来自手机 | 只看该作者
找這個好久了,來試試能不能用、
回复

使用道具 举报

26#
ID:960963 发表于 2021-10-8 15:53 | 只看该作者
用的是51单片机编的,有点不明白
回复

使用道具 举报

27#
ID:396783 发表于 2022-7-30 16:15 | 只看该作者
这个是丢波,单个周期调属于斩波
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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