导航:首页 > 操作系统 > 单片机led不闪

单片机led不闪

发布时间:2023-11-14 14:44:49

1. 为什么单片机实验中编程成功了但LED灯却不亮

编程通过只是说明你的程序没有语法错误,至于你的功能是什么,能不能实现,编译器是管不了的。编译器所保证的就是正确的解释你的代码,把你的代码解释成单片机使用的机器码,然后生成烧写文件,至于你想要的功能却达不到,那肯定是你的问题。
首先检查硬件,驱动方式有没有问题,电流够不够大,延时合不合理?如果硬件不确定的的话,试一试用软件仿真,你是直接驱动IO口,功能还是很简单的,keil的软件仿真能够隔开你的硬件,程序单步执行,看端口输出能不能达到设计要求,如果能,还是硬件的问题;不能,那就找程序的错误。

2. 单片机Led灯不亮

看你的板子,P1^0引脚上并没有LED灯,那8个LED灯应该在P0口上吧,把程序的定义改一下。

sbitD1=P0^0;

另外写主程序,要加一行while(1); 见下图,两个画红圈处的改法。

最后补充一点,普中的实验板,用的是STC单片机,去STC官网下载正宗的烧录软件:STC-ISP。别用普中的烧录软件,不可靠,经常不能正常烧录程序。

3. 51单片机LED点阵屏有灯不亮怎么办

可进入调试模式,在执行22句后,检查595数据,看看其输出是不是 0xaa,在执行23句后,检查P0口数据,看看是不是 0x7f;

4. 单片机led为啥一直亮着而不是闪烁

改一下程序就可以了。
#include<reg51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uint a,b,c;
uchar led=0xfe;
void main()
{
a=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
P1=led;
while(1)
{
if(a==20)
{
led=~led;
led|=0xfe;
P1=led;
a=0;
}
}
}
void timer() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
a++;
}

阅读全文

与单片机led不闪相关的资料

热点内容
二次编译错误 浏览:961
单路可编程触摸芯片 浏览:180
我的世界172服务器小游戏地址大全 浏览:294
在人寿app上怎么报销 浏览:924
linux启动sh脚本 浏览:975
江苏云手机服务器托管云空间 浏览:24
大众app下单怎么退款 浏览:642
通报文件为什么要加密 浏览:293
抗干扰单片机 浏览:840
编译完pac后怎么编译ota 浏览:624
java入门教程pdf 浏览:73
我的世界java版怎么找服务器 浏览:691
dna可以用模拟编译吗 浏览:110
文件夹怎么按后两位数排序 浏览:55
冻结app了怎么办 浏览:711
css取消编译后自动下载 浏览:472
做Ug编程需要有加工中心基础吗 浏览:684
android英语词典 浏览:9
耳机有一边连不上怎么办安卓 浏览:158
安卓怎么玩正版孤胆车神 浏览:890