欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
繼電器延時(shí)直流電機(jī)正反轉(zhuǎn)帶4位數(shù)碼管芯片程序如何編寫?
[打印本頁(yè)]
作者:
hzxty
時(shí)間:
2020-10-6 05:02
標(biāo)題:
繼電器延時(shí)直流電機(jī)正反轉(zhuǎn)帶4位數(shù)碼管芯片程序如何編寫?
接線端口說(shuō)明
1、DC:輸入電源直流12V
2、IN1:信號(hào)輸入端1(負(fù)極觸發(fā))
3、IN2:信號(hào)輸入端2(負(fù)極觸發(fā))
4、IN3:信號(hào)輸入端3(負(fù)極觸發(fā))
要如下功能:
P-1:給信號(hào)1,繼電器1吸合到A時(shí)間自動(dòng)停止,在這延時(shí)期間再給信號(hào)1或信號(hào)2沒(méi)有反應(yīng); 給信號(hào)2,繼電器2吸合到B時(shí)間自動(dòng)停止,在這期間再給信號(hào)1或信號(hào)2都沒(méi)有反應(yīng);信號(hào)3是急停復(fù)位信號(hào),在繼電器1或2吸合期間都會(huì)停止。
P-2: 通電繼電器1吸合到A時(shí)間自動(dòng)停止,在這延時(shí)期間再給信號(hào)1或2沒(méi)有反應(yīng),當(dāng)繼電器1停止后,再給信號(hào)1繼電器1吸合到A時(shí)間自動(dòng)停止; 給信號(hào)2,繼電器2吸合到B時(shí)間自動(dòng)停止,在這期間再給信號(hào)1或信號(hào)2都沒(méi)有反應(yīng); 信號(hào)3是急停復(fù)位信號(hào),在繼電器1或2吸合期間都會(huì)停止。
芯片腳位連接說(shuō)明:STC15W408AS的1腳是信號(hào)3通過(guò)光耦使1腳低電平時(shí)急停;2腳是信號(hào)2通過(guò)光耦使2腳低電平時(shí)使12腳低電平時(shí)通過(guò)光耦使繼電器2啟動(dòng)工作;3腳是信號(hào)1通過(guò)光耦使3腳低電平使11腳低電平時(shí)通過(guò)光耦使繼電器1啟動(dòng)工作。也就是說(shuō)1腳低電平是急停;2腳低電平是繼電器2工作;3腳低電平是繼電器1工作,(平時(shí)都是高電平),11、12腳低電平啟動(dòng)繼電器1、2(平時(shí)高電平),13、14腳到數(shù)碼管TM1650IC的2、3腳。
按鍵設(shè)置說(shuō)明
通電顯示
表示進(jìn)入待機(jī)狀態(tài)
按第一次K1屏幕顯示:Pー1: K2和K3調(diào)節(jié)模式,按第二次K1,屏幕顯示:A001:K2和K3調(diào)節(jié)第一個(gè)時(shí)間A,K4調(diào)節(jié)小數(shù)點(diǎn)(時(shí)間單位)按第三次K1,屏幕顯示:B001:K2和K3調(diào)節(jié)第二個(gè)時(shí)間B,按第四次K1,顯示“-----”表示進(jìn)入待機(jī)狀態(tài)。
比如;需要設(shè)定模式為:P-2;時(shí)間為:A010,B005。
表示第二個(gè)工作方式;給信號(hào)1后;繼電器1啟動(dòng)10秒之后關(guān)閉; 繼電器2再給信號(hào)2之后延時(shí)5秒之后自動(dòng)關(guān)閉。
計(jì)時(shí)范圍:0.1秒~99秒。
作者:
hzxty
時(shí)間:
2020-10-6 09:39
標(biāo)題:
RE: 求繼電器延時(shí)直流電機(jī)正反轉(zhuǎn)帶4位數(shù)碼管芯片程序
STC8F1K08S2或STC8F2K08S2芯片也可以
作者:
hzxty
時(shí)間:
2020-10-6 20:10
求助繼電器延時(shí)直流電機(jī)正反轉(zhuǎn)帶4位數(shù)碼管芯片程序
作者:
hzxty
時(shí)間:
2020-10-8 23:10
請(qǐng)教大師傅,200黑幣
作者:
wulin
時(shí)間:
2020-10-9 11:43
給你一個(gè)演示程序,按實(shí)際電路配置端口即可滿足你的需求。
//按樓主意圖優(yōu)化編寫
//雙路0.1~99.9秒倒計(jì)時(shí)演示程序
//此程序適合51單片機(jī)和STC1T單片機(jī)
//也適合共陽(yáng)/共陰數(shù)碼管
#include<reg51.h>
#include<intrins.h>
#define key_S 10 //宏定義短按(約10ms)
#define key_L key_S*50 //宏定義長(zhǎng)按(約500ms)
#define key_I key_S*38 //宏定義長(zhǎng)按連+/-間隔(約120ms)
#define uchar unsigned char
#define uint unsigned int
//端口根據(jù)實(shí)際電路重新定義
sbit K1 =P1^0;
sbit K2 =P1^1;
sbit K3 =P1^2;
sbit IN1=P1^3;
sbit IN2=P1^4;
sbit IN3=P1^5;
sbit OUT1=P1^6;
sbit OUT2=P1^7;
/*
uchar code table[]={//共陽(yáng)數(shù)碼管段碼"0~f-."
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e,0xbf,0x7f};
*/
uchar code table[]={//共陰數(shù)碼管段碼"0~f-."
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,0x40,0x80};
uchar data dis_buf[4];//顯示數(shù)據(jù)緩存
bit state1,state2;//倒計(jì)時(shí)狀態(tài)
int time1=115,time2=225;
uchar KeySec;
int num=0,num1=0;
bit flashing=0;
//12T51單片機(jī)
void Delay1ms() //@11.0592MHz
{
unsigned char i, j;
_nop_();
i = 2;
j = 199;
do
{
while (--j);
} while (--i);
}
void Timer0Init() //10毫秒@11.0592MHz
{
TMOD |= 0x01; //設(shè)置定時(shí)器模式
TL0 = 0x00; //設(shè)置定時(shí)初值
TH0 = 0xDC; //設(shè)置定時(shí)初值
// TR0 = 1; //定時(shí)器0開(kāi)始計(jì)時(shí)
ET0 = 1;
EA = 1;
}
//STC1T單片機(jī)
/*void Delay1ms() //@11.0592MHz
{
unsigned char i, j;
i = 15;
j = 90;
do
{
while (--j);
} while (--i);
}
void Timer0Init() //10毫秒@11.0592MHz
{
AUXR &= 0x7F; //定時(shí)器時(shí)鐘12T模式
TMOD &= 0xF0; //設(shè)置定時(shí)器模式
TMOD |= 0x01; //設(shè)置定時(shí)器模式
TL0 = 0x00; //設(shè)置定時(shí)初值
TH0 = 0xDC; //設(shè)置定時(shí)初值
TF0 = 0; //清除TF0標(biāo)志
// TR0 = 1; //定時(shí)器0開(kāi)始計(jì)時(shí)
ET0 = 1;
EA = 1;
}
*/
//按鍵掃描
void keyscan()
{
static unsigned int count=0;
if(!K1||!K2||!K3)
{
count++;
if(count>key_L)//長(zhǎng)按有效
count=key_I;//連+/-間隔
if(count==key_S)//短按消抖
{
if(!K1)//預(yù)設(shè)
{
KeySec++;
if(KeySec>=3)
{
KeySec=0;
}
}
}
if(count==key_S||count==key_L)//短按+/-,長(zhǎng)按連+/-
{
if(!K2 && KeySec>0)
{
switch(KeySec)
{
case 1: if(time1<999)time1++; break;
case 2: if(time2<999)time2++; break;
}
}
if(!K3 && KeySec>0)
{
switch(KeySec)
{
case 1: if(time1>1)time1--; break;
case 2: if(time2>1)time2--; break;
}
}
}
}
else count=0;
}
void INscan()
{
if(KeySec==0 && TR0==0)
{
if(!IN1)
{
TR0=1;
OUT1=0;
OUT2=1;
state1=1;
state2=0;
num1=0;
num=time1;
}
if(!IN2)
{
TR0=1;
OUT1=1;
OUT2=0;
state1=0;
state2=1;
num1=0;
num=time2;
}
}
if(!IN3)
{
OUT1=1;
OUT2=1;
state1=0;
state2=0;
num1=0;
num=0;
}
}
void display()//顯示
{
static uchar i=0;
uchar j=0;
if(KeySec==0)
{
if(state1==0 && state2==0)
{//顯示----
// for(j=0;j<4;j++)
// dis_buf[j] = 0xbf;//共陽(yáng)-
for(j=0;j<4;j++)
dis_buf[j] = 0x40;//共陰-
}
else
{
if(state1==1)//顯示A倒計(jì)時(shí)時(shí)間
// dis_buf[0] = 0x88;//共陽(yáng)A
dis_buf[0] = 0x77;//共陰A
else if(state2==1)//顯示B倒計(jì)時(shí)時(shí)間
// dis_buf[0] = 0x83;//共陽(yáng)b
dis_buf[0] = 0x7c;//共陰b
dis_buf[1] = table[num/100%10];
// dis_buf[2] = table[num/10%10]&0x7f;//共陽(yáng)加小數(shù)點(diǎn)
dis_buf[2] = table[num/10%10]|0x80;//共陰加小數(shù)點(diǎn)
dis_buf[3] = table[num%10];
}
}
if(KeySec==1)
{//顯示A預(yù)設(shè)時(shí)間
// dis_buf[0] = 0x88; //共陽(yáng)A
dis_buf[0] = 0x77; //共陽(yáng)A
dis_buf[1] = table[time1/100%10];
// dis_buf[2] = table[time1/10%10]&0x7f;//共陽(yáng)加小數(shù)點(diǎn)
dis_buf[2] = table[time1/10%10]|0x80;//共陰加小數(shù)點(diǎn)
dis_buf[3] = table[time1%10];
}
if(KeySec==2)
{//顯示B預(yù)設(shè)時(shí)時(shí)間
// dis_buf[0] = 0x83; //共陽(yáng)b
dis_buf[0] = 0x7c; //共陽(yáng)b
dis_buf[1] = table[time2/100%10];
// dis_buf[2] = table[time2/10%10]&0x7f;//共陽(yáng)加小數(shù)點(diǎn)
dis_buf[2] = table[time2/10%10]|0x80;//共陰加小數(shù)點(diǎn)
dis_buf[3] = table[time2%10];
}
//共陽(yáng)數(shù)碼管驅(qū)動(dòng)
/* P2&=0xf0;//消隱
P0=dis_buf[i];//送段碼
P2|=0x01<<i;//送位碼
*/
//共陰數(shù)碼管驅(qū)動(dòng)
P0=0x00;//消隱
P2&=0xf0;//清低4位
P0=dis_buf[i];//送段碼
P2|=~(0x01<<i);//送位碼
i++;i%=4;
}
void main()//主函數(shù)
{
Timer0Init();//定時(shí)器初始化程序
while(1)
{
keyscan(); //按鍵掃描
INscan(); //輸入掃描
display(); //數(shù)碼管顯示
Delay1ms(); //控制主循環(huán)約1ms
}
}
void Timer0Interrupt(void) interrupt 1
{
TL0 = 0x00; //設(shè)置定時(shí)初值
TH0 = 0xDC; //設(shè)置定時(shí)初值
num1++;
if(num1>=10)
{
num1=0;
num--;
if(num<=0)
{
num=0;
OUT1=1;
OUT2=1;
state1=0;
state2=0;
TR0=0;
}
}
}
復(fù)制代碼
作者:
hzxty
時(shí)間:
2020-10-9 21:23
謝謝前輩指點(diǎn)
作者:
hzxty
時(shí)間:
2020-10-9 23:34
謝謝總工
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1