当前位置:   article > 正文

XADC实例-基于XADC的FPGA内部温度采集显示_xadc读取fpga温度

xadc读取fpga温度

温度值是在00h的这个寄存器中寄存。我们只需要通过例化的XADC接口读取到00寄存器所存的数据即可获取温度信息。

个十百千位分别占据4bit位宽。 

  1. %创建coe文件
  2. mem file =fopen('rom initial file.coe','wt');
  3. %输出65536个计算值,结果放大100倍
  4. PARA NUM=65536;
  5. %mif文件的文件头信息
  6. fprintf(mem file,'memory_initialization_radix=16;\n');
  7. fprintf(mem file,'memory_initialization_vector=');
  8. %mem数据内容
  9. for i=0:1:(PARA NUM-1)
  10. a=(i/65536)*503.975-273.15;%温度换算
  11. %溢出处理
  12. if(a<0)%负数取0
  13. a=0;
  14. end
  15. if(a>=100)
  16. a = 99;%大于100度取99
  17. end
  18. %放大100倍
  19. a= a*J00;
  20. %取整数
  21. a = fix(a);
  22. %以BCD码形式存储16位数据
  23. a= (fix(a/1000))*4096+(fix(a/100)-(fix(a/1000))*10)*256+(fix(a/10)-(fix(a/100))*10)
  24. fprintf(mem file,'04x'a);
  25. if(i<(PARA NUM-1))
  26. fprintf(mem_file,',\n');
  27. else
  28. fprintf(mem_file,';')
  29. fclose(mem file);

假设一个数是5555

5*4096+(55-50)*256+(555-55*10)

ROM IP核配置:

xadc_capture模块代码如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/899041
推荐阅读
相关标签
  

闽ICP备14008679号