智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1172|回复: 1
打印 上一主题 下一主题

请各位学长帮忙看看哪里错了

[复制链接]

7

主题

148

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5654
QQ
威望
2351
贡献
1473
兑换币
1454
注册时间
2012-9-15
在线时间
915 小时
跳转到指定楼层
1#
发表于 2013-3-3 20:43:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */
//#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"
unsigned char Data1[8]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
void SetBusCLK_64M(void)
{   
    CLKSEL=0X00;                                //disengage PLL to system
    PLLCTL_PLLON=1;                        //turn on PLL
    SYNR =0xc0 | 0x07;                        
    REFDV=0x80 | 0x01;
    POSTDIV=0x00;       //pllclock=2*osc*(1+SYNR)/(1+REFDV)=128MHz;
    _asm(nop);          //BUS CLOCK=64M
    _asm(nop);
    while(!(CRGFLG_LOCK==1));          //when pll is steady ,then use it;
    CLKSEL_PLLSEL =1;                        //engage PLL to system;
}
void PIT_init(void)//定时中断初始化函数 5MS定时中断设置
{
    PITCFLMT_PITE=0; //定时中断通道0关
    PITCE_PCE0=1;//定时器通道0使能
    PITMTLD0=64-1;//8位定时器初值设定,64分频,在64MHzBusClock下,为1MHz。即1us
    PITLD0=1000-1;//16位定时器初值设定。PITTIME*0.125uS  即1ms中断一次
    PITINTE_PINTE0=1;//定时器中断通道0中断使能
    PITCFLMT_PITE=1;//定时器通道0使能
}
//void delay(int);

void main(void) {
unsigned char i;

i=0;  
SetBusCLK_64M();
PIT_init();

while(1) {

            DDRB=0xff;
            PORTB=Data1[i];
           }

}


void interrupt 66 PIT0(void){
int num,num2;
num++;
  if(num>1999){
  num=0;
  num2++;
  i++;
  if(num2>7){
  num2=0;
  PORTB=0xff;
  i=0;
  }
  }
}

7

主题

245

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2777
威望
1405
贡献
792
兑换币
756
注册时间
2012-7-9
在线时间
290 小时
2#
发表于 2013-3-4 15:59:51 | 只看该作者
至少你要说明一下出现什么问题了吧
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-20 13:55 , Processed in 0.044336 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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