阅读:1900回复:3
cpld的测试程序
我的板子上有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,请大家帮我看看我得程序有问题吗? |
|
沙发#
发布于:2005-03-01 09:00
谁知道啊,快帮帮我啊
自己顶一下 |
|
板凳#
发布于: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下运行的,但是测试的信号还是没有波形,不知道应该怎么找原因,请各位高手给提供个思路 |
|
地板#
发布于:2005-03-12 15:47
你的CPLD是和CPU接口的吗?
如果是,可以采用软硬件联合仿真验证你的cpld! 到http://goldbull.nease.net下载一个51单片机的仿真引擎,使用KEIL做软件仿真、modelsim做硬件仿真。 |
|