本帖最后由 jinglixixi 于 2023-9-28 08:10 编辑
前面尽管对点阵模块进行驱动测试,它在不进行级联的情况下,但使用一个功能模块其显示能力还是会受到较大地限制。为此,这里是在其基础上将它换为一个串行数码管,其核心则仍是MAX7219。 串行数码管与开发板的连接关系扔为: DIN---PA3 CLK--- PA4 CS --- PA5 由于是驱动串行数码管,因此其初始化函数同点阵模块是有所不同的,其具体内容如下: - void Init_MAX7219(void)
- {
- Write_Max7219(0x09, 0xff);
- Write_Max7219(0x0a, 0x02);
- Write_Max7219(0x0b, 0x07);
- Write_Max7219(0x0c, 0x01);
- Write_Max7219(0x0f, 0x00);
- }
要进行显示测试,其主程序为: - int32_t main(void)
- {
- GPIO_InitTypeDef GPIO_InitStruct = {0};
- RCC_HSI_Enable(RCC_HSIOSC_DIV6);
- __RCC_GPIOC_CLK_ENABLE();
- MAX7219_gpio();
- Init_MAX7219();
- Write_Max7219(1,1);
- Write_Max7219(2,2);
- Write_Max7219(3,3);
- Write_Max7219(4,4);
- Write_Max7219(5,5);
- Write_Max7219(6,6);
- Write_Max7219(7,7);
- Write_Max7219(8,8);
- while(1);
- }
经程序的编译与下载,其测试效果如下图所示。
显示效果
有了串行数码管的显示功能,后面就可以提供它来显示测试数据了,相较于点阵模块会更实用。
|