OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4955|回复: 3

ICC_AVR按键实验中DDRB不用设置也可以用PINB寄存器吗 ?

[复制链接]

17

主题

168

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
260
金钱
260
注册时间
2014-4-12
在线时间
0 小时
发表于 2014-9-16 20:38:31 | 显示全部楼层 |阅读模式
5金钱
程序如下,用的是ICC编译器。
#include<iom16v.h>                        
#define uchar unsigned char        
#define uint unsigned int

//按K5 继电器吸合
//按K6 继电器断开
/*********************************************************/
//#define JDQ_0 PORTD&=~(1<<D7)
//#define JDQ_1 PORTD|=(1<<D7)
/*********************************************************/
void Delay(unsigned int ii)        //1MS
{
unsigned int jj;
for(;ii>0;ii--)
for(jj=0;jj<1140;jj++)
{;}
}
void main(void)
{
         ORTA=0xff; 
         DDRA=0xff; 
         ORTB=0xff;
        // DDRB=(0<<B4)|(0<<B5);    不用这句也可以正常运行。。。。那么,DDRB还有什么用呢
        // DDRB=0xff;
        // PORTD=0xff;
        // DDRD=0xff;
  
   while(1)
  {  
      if((PINB&0x10)==0) 
       {
                  Delay(10);
               if((PINB&0x10)==0)
                   {
                        ORTA=0x00;//P0口LED亮
            }
       }

     if ((PINB&0x20)==0)
      {
         Delay(10);
         if ((PINB&0x20)==0)
               {
                  ORTA=0xff; //P0口LED灯灭
           } 
      } 
   }
}

规格严格,功夫到家
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

17

主题

168

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
260
金钱
260
注册时间
2014-4-12
在线时间
0 小时
 楼主| 发表于 2014-9-16 20:49:13 | 显示全部楼层
手册上写了很清楚,不论如何配置DDxn,都可以通过读取PINxn寄存器来获得引脚电平。
规格严格,功夫到家
回复

使用道具 举报

17

主题

168

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
260
金钱
260
注册时间
2014-4-12
在线时间
0 小时
 楼主| 发表于 2014-9-16 20:49:32 | 显示全部楼层
以前没看到。。。。。。
规格严格,功夫到家
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-9-17 00:13:09 | 显示全部楼层
帮顶.....
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-1 12:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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