NIOS实现LED走马灯闪烁
2010-07-28 19:46
337 查看
新建一个工程,打开sopc builder,添加组件如图所示
其中program和data分别是40KB的ROM(read only)和4KB的RAM(onchip memory)
(——不知道片上存储器容量到底有多大,资料上说2c35RAM总量/位是483,840合60,480B即不到60KB?)
分别作为CPU的reset入口地址和exception入口地址。
Generate以后在Quartus里分配指定的管脚,即连到指定的外设上
打开nios ide 编写代码如下所示:
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include <unistd.h>
/*
void delay(void)
{
unsigned int i;
i=2000000;
while(i>0)
{
i--;
}
}
*/
int alt_main(void)
{
unsigned char led_data;
unsigned int led_code;
while(1)
{
for(led_data=0;led_data<18;led_data++)
{
led_code=0x01<<led_data;
IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE,led_code);
// delay();
usleep(1000000);
}
}
return 0;
}
或者采用寄存器的方法,首先建立一个文件夹,命名为inc
在文件夹里新建一个sopc.h头文件,具体见下面的博文。
其中program和data分别是40KB的ROM(read only)和4KB的RAM(onchip memory)
(——不知道片上存储器容量到底有多大,资料上说2c35RAM总量/位是483,840合60,480B即不到60KB?)
分别作为CPU的reset入口地址和exception入口地址。
Generate以后在Quartus里分配指定的管脚,即连到指定的外设上
打开nios ide 编写代码如下所示:
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include <unistd.h>
/*
void delay(void)
{
unsigned int i;
i=2000000;
while(i>0)
{
i--;
}
}
*/
int alt_main(void)
{
unsigned char led_data;
unsigned int led_code;
while(1)
{
for(led_data=0;led_data<18;led_data++)
{
led_code=0x01<<led_data;
IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE,led_code);
// delay();
usleep(1000000);
}
}
return 0;
}
或者采用寄存器的方法,首先建立一个文件夹,命名为inc
在文件夹里新建一个sopc.h头文件,具体见下面的博文。
相关文章推荐
- 利用51单片机实现LED闪烁
- android中TextView的文字实现动态效果,走马灯效果,闪烁效果
- 一: AVR 单片机实现 LED 灯闪烁.
- STM32F030, 使用嘀嗒定时器Systick实现LED闪烁
- STM32通用定时器实现LED灯闪烁
- 软件实现PWM信号,LED闪烁
- 1-1 实验1 LED不停地实现闪烁(一亮一灭)
- 用定时器实现led闪烁(间隔1s)
- 定时器查询法和定时器中断法实现LED闪烁
- 用uno实现简单的单led灯闪烁
- FPGA 降频实现led的闪烁,LED不闪烁
- 一步步点亮LED5_汇编编写延时函数并实现LED闪烁效果
- ZigBee实现基础组网成功返回LED 字符 P1_1绿闪烁
- 如何在平台上实现LED灯的效果?如信号灯,来短信/来电时LED动画闪烁
- 51单片机定时器实现LED闪烁
- imx6q工作队列实现led闪烁
- 树莓派使用WiringPi实现LED灯闪烁
- RK3066 实现LED闪烁的代码分析
- 第二节:delay()延时实现LED灯的闪烁。
- STM32F030, 使用嘀嗒定时器Systick实现LED闪烁