8位AD转换器转换结果怎么动态显示

举报 回答
8位AD转换器转换结果怎么动态显示
问在线客服
扫码问在线客服

有6个数码管,一号数码管显示模式数,二号数码管显示绳号数,三号数码管显示正负号,剩下三个数码管显示AD转换结果,AD转换结果保存在R0中,模式数和绳号数... 查看全部

  • 回答数

    4

  • 浏览数

    2,964

举报 回答

4个回答 默认排序
  • 默认排序
  • 按时间排序

没找到满意答案?去问秘塔AI搜索
取消 复制问题
已采纳
既然模式数和绳号数都只有一位数码管显示,且不会大于等于10,那么我们需要将所有数值转换成BCD码的格式。在R0中存储AD值转换成BCD码后,分别对应于三个BCD码的数码管位置:百位、十位和个位。使用扫描方式显示时,可以将模式数、绳号数、符号位、百位、十位、个位等按顺序放入连续的内存中。共有六个数码管,则需要进行六次显示操作,并在每次显示后将数据地址加一,同时等待50毫秒。完成六次显示后进入AD采样阶段,再次将其转换为BCD码并排序,最后进行连续的显示。
然而,在这种情况下可能会出现跳动问题。为了减少跳动幅度,在主程序中建议多次采样,并计算其平均值。同时开一个50毫秒的计时器,在子程序中断中进行数值显示操作。中断程序只显示一个数码管的数值,并且在每次显示后将数据地址和数码管位选地址加一、计数器加一。判断计数器是否为6,如果是则清0,并将数据地址和数码管位选地址初始化。中断返回后,主程序需要反复执行采样、平均值计算和数据排序等操作。
关于采样次数的控制可以根据实际需求自行决定。
取消 评论
如果8位A/D转换器的转换电压范围是0~+5V的话,则对应转换后的二进制码0~255。
那么对于0~+5V范围内的某个模拟电压Vin对应的二进制码为:(Vin/5)*255,对于0~+Vref范围内的某个模拟电压Vin对应的二进制码为:(Vin/Vref)*255,对于Vref-~Vref+范围内的某个模拟电压Vin对应的二进制码为:(Vin/(Vref+ - Vref-))*255。
如果是n位A/D转换器,转换电压范围是Vref-~Vref+,对于Vref-~Vref+范围内的某个模拟电压Vin对应的二360问答进制码为:(Vin/(Vref+ - Vref-))*(2^n-1)。
取消 评论
看了楼上的各位回答,本人觉得几乎都没实际价值和借鉴意义。本人曾经也遇到过这样的问题,刚开始也是按照楼上诸位说的办法去解决,但浪费了很多时间依然不奏效。我的解决办法是:先将打不开的ppt文件的扩展名修改,比如是ppt的修改为pptx(反之依然),再用power point打开(记得安装版本间的兼容包),这样问题轻松解决。望对楼主有帮助。
取消 评论
ZOL问答 > 8位AD转换器转换结果怎么动态显示

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?