logo资料库

单片机控制继电器(含程序).pdf

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
单片机控制继电器(含程序) 单片机控制继电器(含程序) 其实对于初学者来说,继电器比流水灯还简单,流水灯有很多花样可以玩,而继电器他就是一个IO口控制,下 面一起来学习一下 今天忽然之间用到了继电器,一时间心血来潮,疯的人就是这样 ,做事情总是这样的不可理喻! 其实对于初学者来说,继电器比流水灯还简单,流水灯有很多花样可以玩,而继电器他就是一个IO口控制,你只要往这个IO 口输入一或者零它就工作了,很简单吧! 下面是我从网上复制过来的原理图 ,由于我电脑上的PROTEL没装上也就不自己画 了, 偷懒下, 其实学会抄人家的东西也是一种不错的学习方法来的, 抄多了也就有手感了,所以我一直以来都是一不放对抄 的, 但要抄得有价值对自己有好处这才叫不费工夫。 这个图是我从网上下来的 由于疯子的硬件连接的是P1^3口 所以程序上的大家注意点就行了。 继电器的外围电路也不难, 就一个三极管一个二极管就行了,三极管起到的是开关作用当你给他1的时候他就不导通。当你给 它0的时候它就导通了,也就是继电器工作了, 还有那个二极管,它主要的作用是保护三极管的作用 ,因为线圈一停电的瞬 间会有反电动势,不过要记得这里的二极管一定要反过来接! /****************************** 单片机疯子实验基地 SCM疯子 2009.9.3 用单片机控制继电器的闭合 献给初学单片机的朋友们希望我的 出现能够带给你们更多的帮助 *******************************/ #include//头文件 #define uint unsigned int//宏定义 为下面的程序书写方便 #define uchar unsigned char//宏定义 为下面的程序书写方便 sbit key_1=P1^0;//定义按键1 sbit key_2=P1^1;//定义按键2 sbit jidianqi=P1^3;//定义控制继电器的IO口 /******************************* 以下是K毫秒的延时函数 工作环境12M 最大可延时65536秒 *******************************/ void delay(uint k) { uint i,j; for(i=0;i
} /**********主函数*************/ void main() { if(!key_1)//判断key_1按键是否有按下 { delay(10);//延时10毫秒再判断,此句是为了消除按键的抖动效应 if(!key_1)//重新判断key_1按键是否有按下 ,如果有按下了 就执行括号里面的内容 { jidianqi=0;//让变量jidianqi为0,启动继电器工作 } } if(!key_2) //判断key_2按键是否有按下 { delay(10);//延时10毫秒再判断,此句是为了消除按键的抖动效应 if(!key_2)//重新判断key_2按键是否有按下 ,如果有按下了 就执行括号里面的内容 { jidianqi=1;//让变量jidianqi为1,关闭继电器工作 } } }
分享到:
收藏