摘要:参照牙缝的博客http://www.cnblogs.com/yuphone/category/276816.html,从SD卡到TFT已经有图片了就是还有一些细节问题,慢慢解决。。。后面还有很多要做的,文件系统,摄像头,GUI。。。先严重感谢一下牙缝,哈哈,有你的博客前面调的很通畅,偷着乐。 说问题,初始化SD卡以后,读 CID 和 CSD 寄存器的信息,然后再读第0扇区512bytes的数据,如下:(我用的是128MB的SD卡) 寄存器信息: 第0扇区: 最后两个字节还是 55 AA 表示MBR的DPT结束了。 但我用 winhex 看的结果是: 问题(1):这是为什么咧?地址不对?应该不.
阅读全文
摘要:在缺氧的博客中看到 debug宏,方便调试程序,但我没看懂... debug.h 文件 #ifndef DEBUG_H_#define DEBUG_H_int myprintf(char *format,...);#define ENABLE_STDOUT_DEBUG //trun on all of debug message using#ifdef ENABLE_STDOUT_DEBUG #define DEBUG(x) {myprintf x;}#else #define DEBUG(x)#endif#endif /* DEBUG_H_ */ debug.c 文件 1 #include.
阅读全文
摘要:在 ,时钟频率clk = 100M 的情况下测得usleep()函数的延时情况。 代码相当的简单,用一管脚输出高低电平,用示波器测得: usleep(1) = 12.5 us; usleep(5) = 16.5 us; usleep(10) = 21.5 us; usleep(20) = 31.5 us; usleep(50) = 61.0 us; usleep(100) = 110.6 us; usleep(200) = 210.0 us; usleep(500) = 507.0 us; usleep(1000) = 1 ms; usleep(5000) = 4.96 ms; usleep.
阅读全文
摘要:在Nios下驱动9320的TFT屏,具体的讲解参见:http://www.cnblogs.com/yuphone/category/276816.html 在 main.c 中只是程序的调用,不会做其他的事。 在 ili932x.c 里包含了一些最重要的函数,比如 ili_WrData(u16 ch), ili_WrCmd(u16 ch), ili_WrReg(u16 address,u16 data)...这些都是程序的基石。 1 //Write Data 2 void ili_WrData(u16 ch) 3 { 4 ili_RS = 1; //data 5 ili_nCS = 0; 6.
阅读全文
摘要:了解定时器的内核后,用它的sys_clk_timer功能是很简单的。 在SOPC 中,选定时器内核 选以后的设置 设定周期为 1ms ,定时器的名字可以任意命名,这个为 sys_clk_timer,为和 Nios IDE 里面的一样。 在Nios IDE里面还需要设置一下, OK,下面就是C代码的事了,缺氧的博客http://www.cnblogs.com/yuphone/archive/2010/04/18/1714554.html有例子。里面的调用库函数写,我还不是很。。。
阅读全文
摘要:定时器是一个非常重要的外围设备。它可以作为系统的周期性时钟源(Tick); 也可以作为一个计时器,测定事件发生的时间;还可以对外输出周期性脉冲或作为一条监管系统正常运行的"看门狗"(Watchdog) 。 定时器是挂载在 Avanlon 总线上的32位定时器,它提供以下特性: 两种计数模式:单次减 1和连续减 1计数模式(软件设置,见控制寄存器CONT位); 定时器达到 0 时产生中断请求(IRQ); 可选择设定为看门狗定时器,当为看门狗时,定时器计算达到 0 时复位系统; 可选择输出周期性脉冲,在定时器计算达到 0 时输出脉冲; 可由软件启动、停止和复位定时器
阅读全文
摘要:对于一个不熟悉的东西,出问题了,哪怕是一个简单的问题也要折腾半天,但我知道只要折腾一段时间就会好的。。。 问题(1): 出现这个问题的原因很多。 在网上查阅了几种解决办法: (1): 软件版本的问题,现在的软件应该不存在这个问题。 (2): 芯片设置问题,unused pin 设置为 输入三态。 (3): 芯片设置问题,复用引脚的设置。 都没解决问题,最后在《NIOS II 那些事儿》里面的常见问题解答里面找到了答案,是NIOS 软核的复位(RESET)出了问题。原来写代码时复位总是这样写,低电平复位。 在例化NIOS核的时候也就想当然这样了,结果就出现了以上了错误,软核的复位不要这个取反的.
阅读全文
摘要:2010年的最后一天,写篇博客以为记。 看亚峰的博客,我也玩起了数码相框,原来使用Nios II IDE地,但他用的是Nios II SBTE,我也就跟着尝下鲜,觉得他们区别还是有点大的。首先我建个工程都没搞成器。。。 指定一个工作空间: 新建工程: 指定APP工程路径: 指定BSP工程路径: 如果你把工作空间,APP工程路径和BSP工程路径指定在一个地方,那一定会出错。。。 在网上找了一下解决的办法,大概说的意思就是,工程路径不能工作空间workspace在一个地方。也不知道这是为什么,期待高手解答。。。 有时也会有其他的错误,
阅读全文
摘要:按照黑金的《NIOS 那些事儿》做到中断实验,编译时显示寄存器配置成功了,开始下到板子上灯是灭的,一阵狂按。。。还是不亮,在while(1)里面把LED-DATA 的赋值颠倒一下,再下载板子上亮的,又是一阵狂按。。。还是不灭,怎么?没进入中断?往后看有将怎么调试的,OK,调试看看,在 void ISR_button(void *context,unsigned long id)处设置断点,全速,按一下,好程序停在那里了,在全速,OK,灭了。反复几次。。。发现灯是一亮一灭的,看来不加按键消抖危害巨大啊。虽然有现象,但这个程序我没看懂,主要是 NIOS 处理中断的过程都没有理清楚。 NIOS
阅读全文