智能车制作

标题: 大家,进来,看看!! [打印本页]

作者: kuku    时间: 2009-4-28 23:43
标题: 大家,进来,看看!!
小弟,刚学单片机!!想做一个,跑马灯的程序!!请高手帮帮忙!!
要求:15个LED,第一步,1,5,9,13先亮,
                       第二步,2,6,10,14亮,
                       第三步,3,7,11,15亮,
                      最后,4,8,12亮,
                      一直循环下去!!I/O 口输出!!(9S128DG)
麻烦大家了!!
作者: chenrunshe_007    时间: 2009-4-29 08:15
哪来15个LED?一般都是B口的8个或者两个口级联16个
作者: kuku    时间: 2009-4-29 14:04
我不太明白!!我只是,在PORTB和PORTA上都接上了!!
作者: whut_wj    时间: 2009-4-29 18:39
你理解输出1是高电症,输出0是低电平即可.
作者: sampan    时间: 2009-4-30 13:25
用汇编的话,可以选用查表指令,感觉简单,只要编辑表就行了。
随便贴个c的,也是最简单的赋值。
void Delay(unsigned long n)
{
  
      while(n--);
}

void main(void)
{
  DDRA =0XFF;
  DDRB =0XFF;
  for(;;)
  {
   PORTA =0X70;
   PORTB =0X77;
   Delay(10000);
   PORTA =0XBB;
   PORTB =0XBB;
   Delay(10000);
   PORTA =0XDD;
   PORTB =0XDD;
   Delay(10000);
   PORTA =0XEE;
   PORTB =0XEE;
   Delay(10000);
  }
}
作者: sampan    时间: 2009-4-30 13:37
不好意思啊,又是我,发觉刚刚的程序不够简化,还有错误,对不起,我的机子只有B口有led
程序如下,如果有错,希望通知一下谢谢。
void Delay(unsigned long n)
{
  
      while(n--);
}

void main(void)
{ unsigned char i,j;
  DDRA =0XFF;
  DDRB =0XFF;
  for(;;)
  {
    i=0X88;
    for(j=1;j<4;j++)
    {
      PORTA =~i;
      PORTB =~i;
      i >>=1;
     Delay(10000);
    }
  }
}
作者: kuku    时间: 2009-5-1 08:29
谢谢大家,对我的支持!!我昨天,考虑了一下!!写的这个!可以运行!!
#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12xs128"

   int counter;
  void timeoverflow(void)
{   while(TCNT!=0X0000);
while(TCNT==0X0000);
counter++;
if(counter==4) PORTB=0xf7,PORTA=0x88;
if(counter==3) PORTB=0xbb,PORTA=0x44;
if(counter==2) PORTB=0xdd,PORTA=0x22;
if(counter==1) PORTB=0xee,PORTA=0x11;
}


void main()
{
  
TSCR1=0X80;
TSCR2=0X07;
  counter=0;
DDRA=0XFF;
DDRB=0XFF;
PORTA=0XFF;
PORTB=0XFF;

     EnableInterrupts;
  
  for(;;)
  {
   timeoverflow();  

        if(counter>=4)
      
        {
          counter=0;
        }
  }
}
作者: kuku    时间: 2009-5-1 08:47
谢谢sampan !!
我运行了一下,B口是对的!!但A口输出,异常!!
谢谢,您的解释!!
上面一帖,是我编的!!请批评,指正!!
我的QQ是,274037250,有机会,咱们讨论讨论!!




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2