hanchong
驱动牛犊
驱动牛犊
  • 注册日期2004-12-03
  • 最后登录2005-07-19
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望5点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1900回复:3

cpld的测试程序

楼主#
更多 发布于:2005-02-28 16:22
我的板子上有cpld和双口ram,为了测试cpld的一些信号是否产生,我写了个测试程序,这个程序是循环访问双口ram,双口ram的基地址为0xD000,程序是在borland c环境下运行,程序如下
#include \"stdio.h\"
#include  <conio.h>
#include <dos.h>
#include <stdlib.h>
#include <mem.h>
void cx429();
unsigned int addr=0xD000,kkkk;

void  cx429()
{
 int j,i;
 for(i=0;i<16;i++)
  { movedata(0xD000,0x2000,0xD000,0x1000,0x1000);

   }
 }
void main()
{
    clrscr();
    while(!kbhit())
    {
cx429();
kkkk++;
if(kkkk==65535)  kkkk=0;
    }
 }
但是但我运行该程序时,我测/mcs16,双口ram上的读写和片选信号均无波形,感觉就没有访问到双口ram,请大家帮我看看我得程序有问题吗?
hanchong
驱动牛犊
驱动牛犊
  • 注册日期2004-12-03
  • 最后登录2005-07-19
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望5点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-03-01 09:00
谁知道啊,快帮帮我啊
自己顶一下
hanchong
驱动牛犊
驱动牛犊
  • 注册日期2004-12-03
  • 最后登录2005-07-19
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望5点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-03-01 16:36
对不起各位,上面的些错了。不是对双口ram访问,而是对硬件端口访问,来测试信号是否有波形
测试程序如下:
#include \"stdio.h\"
#include  <conio.h>
#include <dos.h>
#include <stdlib.h>

void cx429();
unsigned int addr=0x240,kkkk;

void  cx429()
{
 int j,i;
 for(i=0;i<16;i++)
  { outport(addr+i,0xffff);
    j=inport(addr+i);
    outport(addr+i,0x00);
   }
 }  
void main()
{
    clrscr();
    while(!kbhit())
    {
cx429();
kkkk++;
if(kkkk==65535)  kkkk=0;
    }
 }
我是在dos下运行的,但是测试的信号还是没有波形,不知道应该怎么找原因,请各位高手给提供个思路
goldbull
驱动牛犊
驱动牛犊
  • 注册日期2005-03-07
  • 最后登录2005-11-06
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-03-12 15:47
你的CPLD是和CPU接口的吗?
如果是,可以采用软硬件联合仿真验证你的cpld!
到http://goldbull.nease.net下载一个51单片机的仿真引擎,使用KEIL做软件仿真、modelsim做硬件仿真。
游客

返回顶部