首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]想让我的小灯闪起来

会不会是频率太快?
海纳百川  有容乃大
在Full Chip Simulation中正常,时钟有变化
但下载后,就没有变化了,是不是还是硬件的原因呢???
加油
用scope看一下PORTK_BIT3频率是多少?
Carter 
我想请问一下,上面代码中:
#pragma LINK_INFO DERIVATIVE "mc9s12dp256b"
#pragma CODE_SEG NON_BANKED
#pragma TRAP_PROC
#pragma CODE_SEG DEFAULT
都是什么作用,如何用它们,

[求助]想让我的小灯闪起来

用的是MC9S12DP256B,想弄个最简单的小程序,来看看程序是否已经正常下载到片子里了。


让小灯闪烁


程序如下:


#include <hidef.h>      /* common defines and macros */
#include <mc9s12dP256.h>     /* derivative information */
//unsigned int cross,crossTime;
#pragma LINK_INFO DERIVATIVE "mc9s12dp256b"



unsigned char flag=0,time_count=0;


void PORT_Init(void){
 DDRK=0x08;
 ORTK_BIT3=0;  //灯亮
}


void ECT_Init(void)
{
   TSCR2_PR   = 7;  //prescale factor is 8, bus clock/128=8Mhz/8
   TSCR2_TOI  = 1;  //timer overflow interrupt enable
   TCNT = 0x0040;
   TSCR1_TEN  = 1;  //timer enable
  
}


#pragma CODE_SEG NON_BANKED
#pragma TRAP_PROC


 void Int_TimerOverFlow(void){
 
  
   TCNT = 0x0040;
   time_count++;
   if (time_count>50) {time_count=0;flag=~flag;}
   TFLG2_TOF  = 1;  //clear timer overflow flag
}
#pragma CODE_SEG DEFAULT



void main(void) {
  PORT_Init();
 
  ECT_Init();
  EnableInterrupts;
  while(1){
   
  if(flag==0){
    DDRK=0x08;
    PORTK_BIT3=0;//灯亮
  }
  else{
    DDRK=0x08;
    PORTK_BIT3=1;//灯灭
  }
 
  }
 
 
}


下载完之后,小灯一直亮,没有变化,咋回事呢?


PS:中断向量地址也已经在prm中声明了   VECTOR ADDRESS 0XFFDE Int_TimerOverFlow


各位帮忙指点指点吧

在Full Chip Simulation中正常,时钟有变化
但下载后,就没有变化了,是不是还是硬件的原因呢???

[此贴子已经被作者于2006-8-30 9:39:09编辑过]

加油
请参见“Compiler_HC12.pdf”,在CW的安装子目录下。
海纳百川  有容乃大
在Full Chip Simulation中正常,时钟有变化
但下载后,就没有变化了,是不是还是硬件的原因呢???
加油
用示波器看一下输出是否有信号变化。
海纳百川  有容乃大
恩,单纯变化一次I/O口电平(或低或高)的话,下载程序之后用万用表测是正常的,和程序要求一致。
但要求I/O口电平连续变化,或延时一段时间后再变化,就没反应了。
加油
可以把整个project打包贴上来看看,或发到:strongchen_free@yahoo.com.cn。
海纳百川  有容乃大
斑竹老大,已经给您发过去了,劳烦您抽空帮着看看,提点意见,谢谢了
加油
我看过你的project了,应该没有问题。我下载到DP256的EVB板上,程序也可以跑起来,用示波器可以看到PK3上有脉冲输出,频率大概是1.27Hz(EVB的晶振是16M)。你的LED是怎么接的?
海纳百川  有容乃大
真是有劳斑竹了
共阳接法,5V的VCC串470欧的电阻接LED阳极,LED阴极直接接到PTK的第3个引脚上。
加油
可能是你的晶振电路不稳定。仔细检查一下吧。
海纳百川  有容乃大
版主人品太好了
PF
返回列表