如何用C语言写交替程序(按一个按钮等亮再按灯灭)

作者&投稿:缪映 (若有异议请与网页底部的电邮联系)
组态中一个灯、一个按钮,按一下按钮灯就长亮,再按一下按钮灯就灭的命令语言是什么?~

添加一个按钮一个指示灯。创建一个变量取名为 灯开关,类型为内存离散;
双击按钮,在命令语言连接那选择“按下时”然后输入命令语言如下: \\本站点\灯开关=!\\本站点\灯开关;
双击指示灯 ,变量名那单击哪个问号 然后选择变量“灯开关”或者直接输入 \\本站点\\灯开关;
再运行就行。

1、首先打开编程软件Keil uVision4,新建一个工程文件,在菜单栏中Project—— New uVision Project..。

2、然后选择单片机型号是 Atmel 公司的 AT89c52,单击OK。

3、再单击工具栏上新建按钮,新建一个文档,然后再点击保存,输入保存的路径,输入名字。

4、右键单击将这个文件添加到到工程文件夹中。

5、打开新建的文档,在文档中进行写程序。

6、点击下面方框中的图标,在Target项晶振的上写上:12.0代表晶振是12M,然后跳到Output项在生成HEX文件上打勾,点击OK。

7、然后点击三个编译按钮意思分别为:单个文件编译、编译已修改的文件、产生HEX文件,HEX文件用来下载到单片机上的,也可用来做仿真。

8、我们打开ISIS 7 Professional 软件,将程序添加到该电路中,然后按下启动按钮。

你是在为单片机编程吗??
比如这样:
bit a=0; //标志位——用于存放灯状态的位,当a=1是,灯是一个状态,比如亮;当a=0 // 时,灯是另一个状态,比如灭。
unsigned char b; //检测按键是否按下的变量,在单片机中可能就是一个I/O口的一位,比如P1.1
if(b) //检查按键是否按下,这里b不等于0就视为有按键按下,b等于0为无按键按下。
{
a=~a; //每按一次按键,a就会自己求反一次,这样它的状态就在亮与灭之间交替变换。
}
当然,你还可以在这个程序加上去除抖动的程序。

设定一个值,判断按钮点击的次数是奇数还是偶数,奇数把设定值为1,偶数设定值为0,根据这个值判断,就可以了啊

伤不起啊,我的答案先出来,居然没被推荐,那大哥还想是复制我的吧???居然推荐了,看看答案时间再推荐好吧? 有没搞错。伤不起,伤不起啊....


怎么用c语言编写代码使LED灯交替显示全亮与全息
在全亮的代码后面添加一个for循环 for(int i=0;i<10000(根据自己板子的晶振周期来计算);i++){ } 不用写全息代码,他自己就会出现你想要的效果 即:全亮...for(int i=0;i<#;i++){ }

c语言程序1,0交替输出
程序思路问题不大,但是你的for循环的条件会造成死循环(除非你是故意的),不停输入n,输出f(n)。还有,你这样的用指针没有充分利用函数的返回值,你看我写的:还有费波那契数列这样写会导致很多重复的计算,如果能正向递推累加(或者开数组记录已经算过的f(n))则能大大降低时间复杂度 ...

用C语言编写程序实现两个整数交换值
include<stdio.h>int main(){ int x,y,t; printf("请输入二个整数:\\n"); scanf("%d%d",&x,&y); printf("输入的二个数为:x=%d,y=%d\\n"); t=x; x=y; y=t; printf("交换后的二个数为:x=%d,y=%d\\n"); return 0;} ...

数据结构 用c语言写的 集合的并、交和差运算的程序
可以用二个一维数组,再用两个for循环来判断结果:交,并,差 在for循环中,用一个if来判断一下,是不是a[0]==b[j],只要有相等的,就令之放在c[0]这就是交集!!并集就好求吧,只要令c[i]=a[i],再来一个就是c[i+j+1]=b[j](因为我这里是考虑j=0开始的,然后自加差就是在交上改动一下...

用C语言写每隔2次或者3次呼叫一个子程序,怎么写呀??
循环中,假如控制变量是 i,用 整数%整数 求 余数 得 0 的方法。n=3; \/\/ 每3次调用1次,也就是 隔2次,调用1次 m=4; \/\/ 每4次调用1次,也就是 隔3次,调用1次 for (i=1;i<=100;i++){ if (i%n==0) fun1();if (i%m==0) fun2();} ...

如果用C语言写一个在D盘循环创建文件的程序
不要用来干坏事:include<stdio.h> define N 510 void main(){ char str[N][12]={0};int i=0;FILE *fp;for(i=0;i<N;i++){ str[i][0]='D';str[i][1]=':';str[i][2]='\\\\';str[i][3]='\\\\';if(i<10){ str[i][4]='0';str[i][5]='0';str[i][6]=i+...

这个程序我真不会写 求哥哥姐姐们了 帮我用c语言编写一下这个程序 用3...
include<stdio.h> int main(){ int i,j;double s=0 ;for (i=1;i<=100;i++)s=s+i;for (i=1;i<=50;i++)s=s+i*i;for (i=1;i<=10;i++) s=s+ 1.0\/i;printf("sum=%lf\\n",s);return 0;} 得: sum=47977.928968 ...

程序调度(时间片轮转算法)用C语言程序怎么写啊??谢谢
include<stdio.h> struct pcb { char name;int time;};void main(){ int n,i,j,flag=1;struct pcb a[100];printf("输入程序个数:");scanf("%d",&n);getchar();\/*接收回车*\/ for(i=0;i<n;i++){ printf("输入程序的名字:如A B C...\\n");scanf("%c",&a[i].name);...

用C语言编写一个程序,将一维数组中的元素向右循环N次,用指针法和下标法...
要是有什么程序写的不足的话,,,最起码编写思想你得提取一下咯~! 本回答由提问者推荐 举报| 答案纠错 | 评论 21 0 内蒙人_yanjun 采纳率:27% 擅长: 编程语言 其他回答 #include<stdio.h>#define X 10;x为数组长度要改直接改后面的数字void main(){ int array[X+1]; \/\/长度为x+1,最后一个元...

谁知道用C语言怎么写求幻方的程序?
include <stdio.h> include <stdlib.h> include <math.h> include <conio.h> define MAX_INDEX 100 void swap(int *a,int *b){ int t;t=*a;a=*b;b=t;} \/*快速排序算法*\/ void QuickSort(int a[], int l, int r){ int i=l; \/*从左至右的游标*\/ int j=r + 1; \/*从...

资阳市14765102563: 单片机,C语言程序.要求每按一次按键数码管按以下图循环交替
斐阮多酶: 关于这个问题,只能给你思路,不能给你程序呀,因为编译环境是不一样的,思路如下:当检测到按键按下时:首先I&#47;O口输出给数码管第一种状态,延时1s:I&#47;O口输出给数码管第二种状态,延时1s:I&#47;O口输出给数码管第三种状态,延时1s:I&#47;O口输出给数码管第四种状态,延时1s:未上面的语句加上死循环.

资阳市14765102563: 单片机 用C语言怎么编写用一个按钮,控制一盏灯的亮与灭的程序? -
斐阮多酶: 设按钮状态(高/低)输入某个IO口; 找到读取这个IO口的数据地址; 程序不断读取这个地址,并比较相应位是否有变化; (要有去抖处理,否则一次按键会产生多个变化) 设指示灯对应的IO口数据地址; 根据按键发生与否设置这个IO口相应位进行翻转.

资阳市14765102563: 怎么实现 当运行中的一个程序按下的某一个按键时,执行我自己编的另一个程序 用c语言解释最好了!!!谢谢 -
斐阮多酶: 程序是思维 给你个思路:程序不停的循环运行,其中包括你的按键扫描,当你扫描到某个按键按下了以后,置一个标志位,然后其他程序根据是否存在这个标志位来决定是否执行,也就是有标志就执行你自己编的程序,没有的话就不执行.

资阳市14765102563: c语言中如何设置点击按钮 -
斐阮多酶: 用 ShellExecute 函数可以执行一个指定的 exe 程序 也可以用 system 函数通过命令行运行一个 exe 程序

资阳市14765102563: c语言 按钮 执行语句 -
斐阮多酶: C语言的话 你可以选择利用 getchar() 你一按回车 就可以执行你 getchar(); 后面的代码了.比如#include main(){ getchar(); printf("1"); } 你运行后 一开始什么都没有 你按下回车 就能把 1 显示出来.

资阳市14765102563: C语言或者什么写一个简单的按键模拟程序 -
斐阮多酶: #include <stdio.h>#include <conio.h>#include "windows.h" fun() {int c ;system("cls"); printf("\n\n\n"); printf(" 等待一秒 \n"); printf(" ↑ \n"); printf(" ← → \n"); printf(" ↓\n"); printf(" 等待两秒\n"); printf("\n\n请选择:\n"); ...

资阳市14765102563: 怎么样用C语言编写一个有按钮
斐阮多酶: WM—DRAWITEM void CCsdnDlg::OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct) { if(nIDCtl==IDC_BUTTON1) { CDC dc; CFont *pFont; pFont=new CFont(); pFont->CreatePointFont(240,"Courier New"); dc.Attach(lpDrawItemStruct->hDC); dc.SelectObject(pFont); dc.TextOut(0,0,"demo"); }

资阳市14765102563: 如何编写c51程序,用c语言编写,就是按一下按钮灯泡闪一下,在按一下灯泡闪两下,然后再按一下灯泡闪 -
斐阮多酶: 用 全局位变量 (如 bit TimesFlag(次数标志位))记录按键是 奇数还是偶数,初始化是0(算偶数),每按一下,就取反(TimesFlag=~TimesFlag),那么 这个位 是 1 就表示 奇数下,0 就表示 偶数下.通过判断这个值,就能 知道要 输出 多少次了.再提供一个 全局位变量(如 bit OutEn),记录是否可以输出闪灯,当 有新按键时,就允许输出(OutEn=1),闪完灯就禁止输出(OutEn=0) 不过你还要记录按键的状态,判断是否 刚刚 按下(刚按下就提供输出要求(OutEn=1)),不然就会 一直 闪.

资阳市14765102563: 如何利用c语言添加button按钮 -
斐阮多酶: Windows 窗体程序是基于消息机制的,所有控件,它的本质都是一个窗体,都是使用 CreateWindows 函数来创建,不过类名,则需要指定为系统预先注册的控件类,比如,你要创建一个按钮控件,就要这样子 CreateWindows( "BUTTON", "按钮标题" ),CreateWindows 这个函数你应该用了不少了吧,其余的参数可以参考 MSDN,但是类名我们指定了 “BUTTON”,说明我们要创建一个按钮,每个按钮都有一个唯一的 ID,通过你的消息处理函数,可以知道哪个按钮发生了什么事件,详细讲的话,非常多,你可以参考 MSDN,或者《Windows 程序设计》这本书 .

资阳市14765102563: C语言写一个自动按键程序 -
斐阮多酶: 用循环语句实现1秒的延时,跳出循环后再延时(如2秒)如无结束键按下再跳转回1秒延时循环.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网