MC9S12XEP100驱动TM1638芯片控制10个共阳数码管显示
最近几天研究了一下1638芯片,现在将配置方法共享给大家,我用的是xep100mcu,spi通讯。
1、时钟。
1638时钟频率最大可配置为1M;
极性CPOL = 1 使用低有效时钟,在空闲状态下SCK是高电平。
时钟相位CPHA =1 在偶数边沿进行数据采样。
2、数据传输
1638每次只能接收8位数据,低字节优先,每次数据传输时要拉低片选。
1)设置驱动数码管的地址方式,0x40自动增加(需给一个起始地址,默认00H),0x44固定地址(需每次先输入地址,再数据数据)
2)设置首地址0xC0(对应00H).这里我选的自动地址。
3)数据传输。
1638共阳方式可以驱动10个数码管。其中数码管1-8是地址00H、02H、04H、06H、08H、AH、CH、EH里面的数据控制,9-10数码管由地址01H、03H、05H、07H、09H、BH、DH、FH里面的数据控制。
如果我们要点亮第一个数码管8.,需要给00H、02H、04H、06H、08H、AH、CH、EH地址里面第一位全部写成1.发送给SPI数据应该为 0x1, 0x0,0x1,0x0,0x1,0x0,0x1,0x0,0x1,0x0,0x1,0x0,0x1,0x0,0x1,0x0。
第一次发表,确实不知道怎样才能表达清楚。谢谢大家!细节地方未详细说明。
补充说明:需要首先向1638发送点亮命令,否则数码管点不亮。