单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 585|回复: 9
打印 上一主题 下一主题
收起左侧

avr 单片机独立按键控制一个led

[复制链接]
跳转到指定楼层
楼主
l似水流年 发表于 2018-1-28 16:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
50黑币
新手学习,如何用独立按键控制一个led灯,按下时候灯亮,下面我写的,求解失败原因及方法,谢谢


#include<iom16v.h>
#include<macros.h>
#define unit unsigned int
#define uchar unsigned char

void show()
{
DDRA|=0X84;
PORTA|=BIT(2);
PORTA&=~BIT(7);


DDRB=0XFF;
PORTB=0XFE;
}
void main()
{
uchar key;
DDRD|=0X0F;
PORTD|=0X0F;

DDRD&=0XF0;

key=PIND;
key=key&0x0f;

if(key==0x0E)
  {show();}
}



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

沙发
hange_v 发表于 2018-1-28 21:53 | 只看该作者
用while(1)试试,你是刚学单片机吗?
回复

使用道具 举报

板凳
yishuihan1 发表于 2018-1-28 22:05 | 只看该作者
新手过来学习学习
回复

使用道具 举报

地板
 楼主| l似水流年 发表于 2018-1-29 11:02 | 只看该作者
hange_v 发表于 2018-1-28 21:53
用while(1)试试,你是刚学单片机吗?

怎么加?试了不行
回复

使用道具 举报

5#
hztaiao 发表于 2018-1-29 15:01 | 只看该作者
引脚怎么定义的?
回复

使用道具 举报

6#
gst 发表于 2018-1-31 22:42 来自手机 | 只看该作者
在if前边写个while  不停监测 按键的状态  你这个  还没等你按 程序可能都结束了  加个循环
回复

使用道具 举报

7#
iandrogan 发表于 2018-2-1 11:00 | 只看该作者
if(key==0x0E)
  {show();}

改成
while(1)
{
    if(key==0x0E)
       {show();}
}
回复

使用道具 举报

8#
tlhuang168 发表于 2018-2-1 22:04 | 只看该作者
过来学习学习
回复

使用道具 举报

9#
buyy51dan 发表于 2018-2-1 23:19 | 只看该作者
刚刚学 看着代码头疼
回复

使用道具 举报

10#
青桑叶 发表于 2018-2-2 14:58 | 只看该作者
if条件总为假吧?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛单片机.

Powered by 单片机教程网

快速回复 返回顶部 返回列表