标题:
给个单片机编程思路 主要是一个开关,第一次接通,延时5s,P30 P31导通,第二次...
[打印本页]
作者:
hjx5548
时间:
2024-1-15 08:15
标题:
给个单片机编程思路 主要是一个开关,第一次接通,延时5s,P30 P31导通,第二次...
主要是一个开关,第一次接通,延时5s,单片机P30 P31导通,第二次之后接通,就是延时3s,P30 ,P31导通。
作者:
yzw846562238
时间:
2024-1-15 14:47
1、定义一个变量,记录导通次数;if(0 == BreakoverNum)
作者:
lxdm163
时间:
2024-1-15 14:48
老哥,这是在凡尔赛吗?按键或者输入检测,奇偶判断延时输出???
作者:
yzw846562238
时间:
2024-1-15 14:51
定义一个变量,记录是否第一次导通,再定义一个变量记录导通时间
if(0 == BreakoverFlag)
{
BreakoverFlag = 1;
BreakoverTime = 5000; /* 导通时间设为5000毫秒 */
}
else
{
BreakoverTime = 3000; /* 导通时间设为3000毫秒 */
}
if(0 < BreakoverTime )
{
/* P30 P31 导通 */
}
else
{
/* P30 P31 不导通 */
}
BreakoverTime 这个值在定时器中断里每1ms减小1
作者:
大IGBT
时间:
2024-1-15 14:55
不知怎么界定第一次,第二次?间隔几分钟,还是几小时,还是隔天
作者:
wangxiangtan
时间:
2024-1-15 16:27
P30 ,P31导通是神马意思,是二极管导通,还是继电器导通,还是使能串口
作者:
jinyudz
时间:
2024-1-15 19:07
没看明白啥意思
单片机P30、P31导通,导通延时时间是多少,是开关按下导通,按键放开关闭吗?
作者:
a137135
时间:
2024-1-16 19:41
// 定义IO口连接的引脚
#define SWITCH_PIN P0_0
#define P30_PIN P0_1
#define P31_PIN P0_2
void delay(int msec) {
// 根据单片机的具体型号和时钟频率来实现延时
// 这里使用示例代码,仅供参考
int i, j;
for (i = 0; i < msec; i++)
for (j = 0; j < 1000; j++);
}
int main() {
// 配置引脚模式为输入和输出
SWITCH_PIN = 1; // 将开关引脚设置为输入
P30_PIN = 0; // 将P30引脚设置为输出
P31_PIN = 0; // 将P31引脚设置为输出
while (1) {
if (SWITCH_PIN == 0) {
// 检测到开关接通
delay(100); // 防止抖动,延时一定时间
if (SWITCH_PIN == 0) {
// 第一次接通
P30_PIN = 1; // 导通P30引脚
P31_PIN = 1; // 导通P31引脚
delay(5000); // 第一次延时5s
} else {
// 第二次及以后接通
P30_PIN = 1; // 导通P30引脚
P31_PIN = 1; // 导通P31引脚
delay(3000); // 第二次及以后延时3s
}
// 关闭P30和P31引脚
P30_PIN = 0;
P31_PIN = 0;
}
}
return 0;
}
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1