数码之家

 找回密码
 立即注册
搜索
查看: 1593|回复: 7

[ARM] 数码管显示问题乱码显示

[复制链接]
发表于 2023-10-26 13:41:30 | 显示全部楼层 |阅读模式
数码管显示问题
为什么十位正常显示,个位乱码了呢


  1. void zxm_Init(void)                            //字形码函数
  2. {
  3.             SMG_Configuration();                                //数码管初始化
  4.             disp[1] = table[i/10];                //数码管显示十位数字的字形码
  5.             disp[0] = table[i%10];                //数码管显示个位数字的字形码
  6.             temp = (disp[1]<<8)|(disp[0]<<0);    //十位数的字形码左移8位,然后与个位数的字形码合并
  7.             GPIO_Write(GPIOB,temp);
  8.             Delay_ms(300);
  9. }
复制代码

  1. temp = (disp[1]<<8)|(disp[0]&0x0ff);
复制代码
这一块这样写的,为什么个位会是乱码呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
 楼主| 发表于 2023-10-27 10:55:40 | 显示全部楼层
慕名而来 发表于 2023-10-26 19:57
低位乱码建议查看一下低位数码管引脚与单片机引脚的连接关系是否与字模码相对应。 ...

对应的我十位个位换个引脚,十位的数字在个位的引脚上也能正常显示数字,把个位换到十位的引脚上,个位在十位的引脚上,也不能正常显示,我单显示个位也是报错的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-27 11:03:34 | 显示全部楼层
bg4rff 发表于 2023-10-26 21:03
uint16_t tableL[] = {0x003f,0x0006,0x005b,0x004f,0x0066,0x006d,0x007d,0x0007,0x007f,0x006f};
uint16_ ...

还是乱码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-27 11:04:40 | 显示全部楼层
bg4rff 发表于 2023-10-26 21:03
uint16_t tableL[] = {0x003f,0x0006,0x005b,0x004f,0x0066,0x006d,0x007d,0x0007,0x007f,0x006f};
uint16_ ...

并且控制不了红绿灯的亮灭,一下子全亮了,不知道为什么
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-5 10:56 , Processed in 0.093601 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表