智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2484|回复: 18
打印 上一主题 下一主题

为什么我这个简单小程序的功能不能实现啊? 急死我了!!求指导!!!

  [复制链接]

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
威望
105
贡献
39
兑换币
50
注册时间
2013-7-22
在线时间
62 小时
跳转到指定楼层
1#
发表于 2013-7-24 20:00:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions  */  
void PLL_Init(void)
{                     //锁相环时钟=2*16*(2+1)/(1+1)=48MHz
  REFDV=1;           //总线时钟=48/2=24MHz
  SYNR=2;
  while(!(CRGFLG&0x08));
  CLKSEL=0x80;
}


void main(void) {
  /* put your own code here */

    PLL_Init( );
    DDRB=0X00;//PB为输入端口
    PORTB=0X00;
    DDRA=0XFF;  //PA为输出端口
    PORTA=0X00;
    while(1)

    {
      switch(PORTB)
     {
       case 0X01ORTA=0Xf0;//PB0输入高电平则PA高4位输出高电平
       case 0X02:PORTA=0X0f;//PB1输入高电平则PA低4位输出高电平  
       default:PORTA=0X00;//其他情况PA全为低电平
       break;

     }
    }

}


25

主题

1474

帖子

0

精华

常驻嘉宾

freefly

Rank: 8Rank: 8

积分
5459

优秀会员奖章活跃会员奖章论坛元老奖章在线王奖章

QQ
威望
2762
贡献
1277
兑换币
1323
注册时间
2013-4-28
在线时间
710 小时
2#
发表于 2013-7-24 20:07:59 | 只看该作者
PORTB=0X00;是不是有问题啊,,,,自己研究一下、、、
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
威望
105
贡献
39
兑换币
50
注册时间
2013-7-22
在线时间
62 小时
3#
 楼主| 发表于 2013-7-24 20:23:39 | 只看该作者
loveme06 发表于 2013-7-24 20:07
PORTB=0X00;是不是有问题啊,,,,自己研究一下、、、

#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions  */  
void PLL_Init(void)
{                     //锁相环时钟=2*16*(2+1)/(1+1)=48MHz
  REFDV=1;           //总线时钟=48/2=24MHz
  SYNR=2;
  while(!(CRGFLG&0x08));
  CLKSEL=0x80;
}


void main(void) {
  /* put your own code here */

    PLL_Init( );
    DDRB=0X00; //PB为输入端口

    DDRA=0XFF;  //PA为输出端口
    PORTA=0X00;
    while(1)

    {
      switch(PORTB)
     {
       case 0XFEORTA=0Xf0;//PB0输入低电平则PA高4位输出高电平
       case 0XFD:PORTA=0X0f;//PB1输入低电平则PA低4位输出高电平  
       default:PORTA=0X00;//其他情况PA全为低电平
       break;

     }
    }

}
刚刚那个是我错了  改成这个我觉得应该可以控制了啊   但是还是不行啊!!!  


回复 支持 反对

使用道具 举报

11

主题

390

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1698
QQ
威望
835
贡献
433
兑换币
324
注册时间
2011-8-20
在线时间
215 小时
4#
发表于 2013-7-24 20:31:12 | 只看该作者
好久没写程序了 你试着让PORTB赋给一个变量 让变量放在SITCH里判断试试吧
回复 支持 反对

使用道具 举报

25

主题

1474

帖子

0

精华

常驻嘉宾

freefly

Rank: 8Rank: 8

积分
5459

优秀会员奖章活跃会员奖章论坛元老奖章在线王奖章

QQ
威望
2762
贡献
1277
兑换币
1323
注册时间
2013-4-28
在线时间
710 小时
5#
发表于 2013-7-24 20:36:19 | 只看该作者
只想更懂 发表于 2013-7-24 20:23
#include       /* common defines and macros */
#include "derivative.h"      /* derivative-specif ...

在线调试的时候,给变一下PORTB  的值看看,,我都现在驱动不能用了,没法发图,,
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
威望
105
贡献
39
兑换币
50
注册时间
2013-7-22
在线时间
62 小时
6#
 楼主| 发表于 2013-7-24 21:46:47 | 只看该作者
loveme06 发表于 2013-7-24 20:36
在线调试的时候,给变一下PORTB  的值看看,,我都现在驱动不能用了,没法发图,,

变了   结果不按照程序来。。。  苦逼了{:soso_e109:}
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
威望
105
贡献
39
兑换币
50
注册时间
2013-7-22
在线时间
62 小时
7#
 楼主| 发表于 2013-7-24 21:47:42 | 只看该作者
理工小别 发表于 2013-7-24 20:31
好久没写程序了 你试着让PORTB赋给一个变量 让变量放在SITCH里判断试试吧

还是不行啊   
回复 支持 反对

使用道具 举报

12

主题

185

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3413
威望
1741
贡献
998
兑换币
782
注册时间
2011-11-22
在线时间
337 小时
8#
发表于 2013-7-24 22:30:54 | 只看该作者
还是我来个标准答案吧,
在while(1)的前面加上一句,PUCR=0XFF;
保证解决问题,别忘了回来感谢我
回复 支持 反对

使用道具 举报

42

主题

1054

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3034

优秀会员奖章活跃会员奖章

QQ
威望
1650
贡献
780
兑换币
625
注册时间
2012-7-6
在线时间
302 小时
9#
发表于 2013-7-25 05:28:18 | 只看该作者
同意楼上的 输入模式的时候可以选择是否上拉,就是说B口什么都不接的时候读回PORTB的值是高还是低
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
威望
105
贡献
39
兑换币
50
注册时间
2013-7-22
在线时间
62 小时
10#
 楼主| 发表于 2013-7-25 09:35:58 | 只看该作者
夜之音 发表于 2013-7-24 22:30
还是我来个标准答案吧,
在while(1)的前面加上一句,PUCR=0XFF;
保证解决问题,别忘了回来感谢我

好激动  终于解决了  怎么谢呢   你要是女的我就以身相许吧  如果是男的。。。。来青岛请你喝正宗青岛啤酒
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-6 13:28 , Processed in 0.065676 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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