给大家共享一个中颖单片机实现继电器控制的源码:- /**************************************************************************************************
- 说明;继电器控制使用了12V外部电源,所以在使用时连接仿真器的同时还要外接12V电源从J1输入,不然在下载时会
- 弹出一个检测到未上电的对话框.
- 本程序的功能: 使用定时器1产生中断使继电器周期性的断开闭合
- 要求:打开拨码开关J11的1脚
- **************************************************************************************************/
- #include <sh88f516.h>
- unsigned char i=0;
- bit time1flag;
- main()
- {
- char i,j=0;
- CLKCON = 0x00;
- P4M0 = 0x00;
- P4M1 = 0x10; //P4_7推挽输出模式
- TMOD = 0x10; //定时器工作方式1,16位
- TH1 = 0xF6; //(65536-1536)/16M=4ms
- TL1 = 0x00;
- TR1 = 1; //开始计数
- ET1 = 1; //打开定时器1中断
- EA = 1; //打开总中断
-
-
- while(1)
- {
- if(time1flag)
- {
- time1flag = 0;
- i++;
- if(i>10)
- {
- i=0;
- P4_7 = ~P4_7; //Relay control bit
- }
-
- if(j<11)
- {
- P1_5=~P1_5;
- P1_4=~P1_4;
- j++;
- P1_7=~P1_7;
- P1_6=~P1_6;
-
- }
- P1_2=~P1_2;
- P1_3=~P1_3;
- }
-
-
- }
- }
- void TIME1_INT() interrupt 3 //定时器1的中断号为3.
- {
-
- ET1 = 0; //close定时器1中断
- TH1 = 0x06; //(65536-1536)/16M=4ms
- TL1 = 0x00; //(65536-1536)/16M=4ms
- i++;
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
压缩包里面包含有中颖单片机sh88f516常用功能的源码,中文注释都很详细
下载地址:http://www.51hei.com/bbs/dpj-98300-1.html
|