我在 xilinx 中有这个功能,用于将输出提供给七段。
int result;
XIo_Out32(XPAR_SSG_DECODER_0_BASEADDR, result);
该函数获取 int 结果并将输出作为十六进制值放入七段。所以基本上,如果我给结果 = 11; 我会在七段中看到 A。要查看 sseg 上的十进制值,一种方法是更改其背后的 verilog 代码并更改 sseg 的整个概念。另一种方法是编写一个将十进制值更改为十六进制值的函数。我一直在为此寻找一个好的代码块,但似乎它们中的每一个都使用循环逐位打印值。我需要整个价值作为一个块。不幸的是,我不能使用 C++ 库,所以我有原始的 C 代码。是否有任何已知的转换算法?