NIOS ii 里遇到的关于C问题

今天调试的时候遇到两个问题:一个是用户想要显示包含正负的数值时,第一位只用来显示负号;另一个是需要将收到的二维矩阵转换成热力图。

都是C语言的问题,就不班门弄斧了。第一个直接百度“sprintf函数的使用”。其实只要在%f的“%”后直接加一个空格,问题解决。

这里把搜到的相关内容也一并贴出来:

sprintf格式的规格如下所示。[]中的部分是可选的。

%[指定参数][标识符][宽度][.精度]指示符

若想输出‘%‘本身时, 请使用‘%%‘处理。

1. 处理字符方向。负号时表示从后向前处理。

2. 填空字元。 0 的话表示空格填 0;空格是内定值,表示空格就放着。

3. 字符总宽度。为最小宽度。

4. 精确度。指在小数点后的浮点数位数。

另一个是要把二维矩阵转换成热力图的方式进行显示。刚开始是用if else结构实现的。后来想了想,这样的实现方式实在是低效,用NIOS跑得累死它。所以换了个思路,想到用映射表的方式去实现效率最高。于是建立一个大小为256的256色数组,提前将颜色信息写入。二维矩阵的数据通过本身的值作为地址去取256色数组的值再赋值给自己。这样通过一遍轮询就能完成二维矩阵的变换。剩下的时间NIOS就能专心处理显示的事情了。

时间: 2024-10-13 08:44:58

NIOS ii 里遇到的关于C问题的相关文章

NIOS II 例程之Hello CS

1 新建工程 在quartus ii 中新建一个工程(hello.Prj) 2 Qsys硬件系统搭建 在quartus ii中开启Qsys: 打开Qsys界面发现System Contents下已经有了一个clk_0,如下图所示.为搭建一个最小系统还必须添加一些必要组件,比如NIOS II 处理器.JTAG.onchip_ram.systemID等. 添加JTAG: 添加NIOS II 处理器 添加onchip_ram 添加pio 添加system ID 在system contents 的co

nios ii boot过程

目录 1       概述....................................................................... 1 2       几种常见的boot方式......................................................... 1 2.1.................................................................................

NIOS II常用函数整理-感谢slam原创

IO操作函数函数原型:IORD(BASE, REGNUM) 输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量函数说明:从基地址为BASE的设备中读取寄存器中偏移量为REGNUM的单元里面的值.寄存器的值在地址总线的范围之内.返回值: - 函数原型:IOWR(BASE, REGNUM, DATA)输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量,DATA为要写入的数据函数说明:往偏移量为REGNUM寄存器中写入数据.寄存器的值在地址总线的范围之内.返回值: - 函数

使用华邦的SPI FLASH作为EPCS时固化NIOS II软件报错及解决方案

Altera器件有EPCS系列配置器件,其实,这些配置器件就是我们平时通用的SPIFlash,据AlteraFAE描述:"EPCS器件也是选用某家公司的SPIFlash,只是中间经过Altera公司的严格测试,所以稳定性及耐用性都超过通用的SPIFlash".就本人看来,半导体的稳定性问题绝大部分都是由本身设计缺陷造成的,而成熟的制造工艺不会造成产品的不稳定:并且,现在Altera的器件在读入配置数据发生错误时,可以重新读取SPIFlash里面的数据,所以在工艺的稳定性以及设计的可靠性

Nios II(一)

Using cable "USB-Blaster [USB-0]", device 1, instance 0x00 Pausing target processor: not responding.Resetting and trying again: FAILEDLeaving target processor paused 网上总结三点原因致使这个问题的发生: 1.复位键的管脚没有对应好,导致报错: 2.给sdram的clk,与cpu的clk没有滞后-75的相位: 3.如果用锁相

uCOS 在 NIOS II 上的移植

工具:Quartus II 器件:EP4CE15F17C8 1.File->New Project Wizard: 2.点击两个Next,进入Family&Device Settings,选择器件 3.Finish,建立工程完毕,点击Tools->SOPC Builder,输入名字后,OK 4.修改clk_0为100MHz 5.component library中搜索nios,双击Nios II Processer 6.Finish 7.搜索epcs,双击epcs Serial...F

在做nios ii uart232 实验时出现undefined reference to `fclose'等错误。

程序如下 #include<stdio.h> #include<string.h> #include "system.h" int main () { char* msg = "Detected the character 't'.\n"; FILE* fp; char prompt = 0; printf("Please Enter some characters: \n"); fp = fopen ("/de

Nios II 系统从EPCS器件中启动的设置过程

先Reset Vector EPCS Exception Vector Ram工程Program memory ,Read-only data memory...均为RAM.Hardware Image选择 EPCS编译.编译:先把POF文件下载到EPCS中.放到最底层后通过FLASH PROGRAMER 将工程和.SOF文件下载到EPCS中复位启动即可. Nios II 系统从EPCS器件中启动的设置过程,布布扣,bubuko.com

第一个NIOS II工程using Qsys-------Let Qsys Say Hello

1.新建工程 2.添加原理图文件 注:似乎Nios II工程都需要涉及到原理图编程. 3.进入Qsys进行内核设计 注:启动Qsys后,系统已经为内核默认添加了一个组件clk_0. 4.设置时钟名字和频率 注:开发板上的时钟输入为50MHz. 5.添加Nios II核   注:选择Nios II Core 为:Nios II/f,其他选项卡均保持默认设置. 6.进行时钟连接操作   7.添加On-Chip-Memory(RAM)核   注:同时,需要设定片上内存大小,在此,我们设定为40960,