请你参考:
参照上图,代码如下:
明显有问题
追答怎么会有问题呢?你可以试一下
追问这个怎么改啊?
#include
void main()
{
IT1 = 1;
EX1 = 1;
EA = 1;
P1 = 0x01; //点亮一个灯,如果是共阳,换成0xfe
while(1);
}
void INT1_ISR(void) interrupt 2
{
if(P1 == 0X80) //如果是共阳换成0x7f
P1 = 0X01; //如果是共阳换成0xfe
else
P1 <<= 1; //如果是共阳换成 { P1 <= 1;P1 += 1;}
}
没有给你做按键去抖
这个是led开始是熄灭1个,点亮7个,我需要的是初始点亮一个,熄灭7个
追答#include <reg52.h>这个程序没去抖动,可能不稳定
追问可以了,谢谢啊
怎么用c语言编程51单片机读写程序?
编程代码如下:ORG 0000H MOV DPTR,#1000H ;给源数据块地址指针DPTR赋初值 MOV P2, #20H ;给目的数据块地址指针P2和R0赋初值 MOV RO,#00H LOOP: MOVX A, @DPTR .MOVX @RO, A .INC DPTR INC RO CJNE RO,#64H, LOOP SJMP
大家帮忙找一些51单片机的基本C语言程序例子,最好带说明,谢啦_百度知 ...
串口通信程序:主机程序:include <AT89X52.H> define NODE_ADDR 3 \/\/目的节点地址 define COUNT 10 \/\/发送缓冲区buffer大小 typedef unsigned char uchar;uchar buffer[COUNT]; \/\/定义buffer int pt; \/\/设置指针 main()\/\/\/发送程序 { \/\/buffer初始化 pt=0;while(pt<COUNT){ buffe...
C51单片机的简单显示程序(有小数点)C语言程序
include<reg51.h>unsigned char code ledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};\/\/0-9unsigned char time,sec=30,scanled;unsigned char disdat[6]={1,2,3,4,5,6};sbit keys=P1^0;sbit keyc=P1^1;sbit fmq=P3^0;void t1isr() interrupt 3 \/...
C51单片机应用与C语言程序设计目录
第1章深入探讨G51单片机编程环境,特别关注其在机器人智能领域的应用。第2章介绍单片机输出接口的原理与实践,特别讲解如何通过此接口实现伺服电机的精确控制。第3章聚焦C语言函数的使用,以实例解析机器人巡航控制的编程策略。第4章关注单片机输入接口,讲解如何利用其进行机器人触觉导航的设计和实现。第5章...
51单片机低频测量(不倍频)C语言程序
51单片机低频测量(不倍频)C语言程序 voidmain(){init_LCD1602();\/\/调用LCD函数w_cmd(0x01);\/\/清屏delay(100);w_string(0x80+2,word4);EA=1;\/\/总开关闭合ET0=1;\/\/T0中断打开TMOD=0X05;\/\/设置T0计数工作方式1GATE=0,000001... void main(){init_LCD1602();\/\/调用LCD函数w_cmd(0x01);\/\/清屏...
单片机流水灯C语言程序(8个灯,依次点亮每个灯,延时500MS)
单片机流水灯C语言程序的源代码如下:include \/\/51系列单片机定义文件 define uchar unsigned char \/\/定义无符号字符 define uint unsigned int \/\/定义无符号整数 void delay(uint); \/\/声明延时函数 void main(void){ uint i;uchar temp;while(1){ temp=0x01;for(i=0;i<8;i++) \/\/8个流水灯...
C语言中,51单片机怎么将进入外部中断服务程序,
在进行51单片机的外部中断初始化时,我们首先需要开启中断源。对于外部中断0来说,需要执行"EX0 = 1",以开启中断功能。此外,我们还需要设置中断触发方式。若是外部中断,应将IT0值设为1,即设置为边沿触发方式,具体代码为"IT0 = 1"。为了确保中断系统正常工作,我们还需要开启总中断,通过设置"EA ...
请高手具体解释一下以下51单片机C语言程序:
void timer() interrupt 1 using 2\/\/定时器0中断函数,interrupt 1是T0的中断入口 { Flag_Delay5ms=0;\/\/将 延时5ms 标志位 置为 0,表示5ms结束 TH0=-5000\/256;\/\/为T0高8位赋初值,相当于TH0=(65536-5000)\/256;可以推出晶振为12MHz TL0=-5000%256;\/\/为T0低8位赋初值,同上 } \/*延时...
用C语言如何开51单片机的计数器,最好编个实例程序
include <reg51.h> define uchar unsigend uchar define uint unsigned int unsigned char code LED7Code[] = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};\/\/数码管段码 void main(){ uint k;TMOD=0X50;\/\/...
大神,求51单片机做简易计算器的那个c语言程序
uchar key,keyval,c,temp;void Delay1ms(uint i) \/\/1ms延时程序 { uint j;for(;i>0;i--){ for(j=0;j<125;j++){;} } } void write_com(uchar com){ lcddata=com;rs=0;rw = 0;lcden=0;Delay1ms(10);lcden=1;Delay1ms(10);lcden=0;} void write_date(uchar date){ lcd...