智能车制作

标题: 飞思卡尔XS128的AD接口能否作为普通的I/O口, [打印本页]

作者: wx_uvKR33fF    时间: 2015-9-5 19:38
标题: 飞思卡尔XS128的AD接口能否作为普通的I/O口,
飞思卡尔XS128的AD接口能否作为普通的I/O口,用做阴极数码管的段选,我程序中,数码管没有读书?求解程序:
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

#define CONT4 PTP_PTP5
#define CONT4_dir DDRP_DDRP5
#define DATA PT1AD0
#define DATA_dir DDR1AD0

#define LEDCPU PORTK_PK3
#define LEDCPU_dir DDRK_DDRK3

byte shuma[20]={0x3f,0x06,0x5b,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,       //0~9对应的段码
                0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x60,0x78,0x00};      //0~9后加小数点对应的段码

unsigned int i;

/*************************************************************/
/*                      初始化端口                           */
/*************************************************************/
void INIT_port(void)
{
  CONT4_dir = 1;
  CONT4 = 1;

  DDR1AD0=0XFF; //定义为输出
  ATD0DIEN=0xffff; //ATD Digital Input Enable
  RDR1AD0 = 0x00;
}

/*************************************************************/
/*                        延时函数                           */
/*************************************************************/
void delay(void)
{
unsigned int i,j;
for(j=0;j<10;j++)
for(i=0;i<60000;i++);
}

/*************************************************************/
/*                         主函数                            */
/*************************************************************/
void main(void) {
  DisableInterrupts;
  //INIT_PLL();
  INIT_port();
  LEDCPU_dir=1;
  LEDCPU=0;
  EnableInterrupts;

  for(;;)
  {
    for(i=0;i<10;i++)
    {
        DATA = shuma;       //循环显示数字
        delay();
    }
  
  }
}
请问问题出现在哪?





作者: 支点305    时间: 2015-9-5 21:24
AD口是可以作为普通IO使用的。
DATA = shuma 赋值数组名是什么意思
作者: 冬瓜弗斯    时间: 2015-9-6 00:05
当然可以啊
作者: YMH_smartcar    时间: 2015-9-6 08:39
可以啊,不过好像只能作为输入不能输出
作者: wx_uvKR33fF    时间: 2015-9-6 08:43
支点305 发表于 2015-9-5 21:24
AD口是可以作为普通IO使用的。
DATA = shuma 赋值数组名是什么意思

shuma是一个数组,即要求显示的数字,DATA是段选,DATA=shuma这一个是让数码管显示指定的数字,但是我这个程序好像有问题,不能位选,同时也不能正常显示数字,请问是怎么回事?对AD口的定义对吗?当AD口作为普通I/O口,需要其他命令限定吗?
作者: wx_uvKR33fF    时间: 2015-9-6 08:45
YMH_smartcar 发表于 2015-9-6 08:39
可以啊,不过好像只能作为输入不能输出

XS128的AD口是可以是可以作为普通I/O口的。可以输出的。。但要对其操作说明

作者: wx_uvKR33fF    时间: 2015-9-6 08:46
冬瓜弗斯 发表于 2015-9-6 00:05
当然可以啊

对于我这个程序具体怎么操作?可以告诉我吗?谢谢





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