2026/2/21 10:58:40
网站建设
项目流程
建立淘宝客网站,中装建设集团有限公司,宜昌网络推广公司,平面设计有几个软件目录
动态数码管模块化编程如下#xff1a;
✅main.c
✅NiXie.c
✅NiXie.h
✅Delay.c
✅Delay.h ✅ 传统编程#xff1a;所有代码#xff08;主函数、功能函数、变量定义#xff09;全部堆砌在 main.c 一个文件中#xff0c;代码量一多就杂乱无章#xff0c;可读性…目录动态数码管模块化编程如下✅main.c✅NiXie.c✅NiXie.h✅Delay.c✅Delay.h✅ 传统编程所有代码主函数、功能函数、变量定义全部堆砌在 main.c 一个文件中代码量一多就杂乱无章可读性、维护性极差✅ 模块化编程功能拆分、分文件存放 —— 把 LED、按键、延时、串口等不同功能的代码分别放到独立的 .c 文件中通过 .h 头文件做声明在 main.c 中只需 #include xxx.h 引入即可调用完美解决了传统编程的痛点动态数码管模块化编程如下✅main.c#include REGX52.H #include NiXie.h void main() { while(1) { NiXie(1,1); NiXie(2,2); NiXie(3,3); NiXie(4,4); NiXie(5,5); NiXie(6,6); } }✅NiXie.c#include REGX52.H #include Delay.h unsigned char NiXieTable[]{0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; void NiXie(unsigned char Location,unsigned char Number) { switch(Location) { case 1:P2_41;P2_31;P2_21;break; case 2:P2_41;P2_31;P2_20;break; case 3:P2_41;P2_30;P2_21;break; case 4:P2_41;P2_30;P2_20;break; case 5:P2_40;P2_31;P2_21;break; case 6:P2_40;P2_31;P2_20;break; case 7:P2_40;P2_30;P2_21;break; case 8:P2_40;P2_30;P2_20;break; } P0NiXieTable[Number]; Delay(1); P0 0x00; }✅NiXie.h#ifndef _NIXIE_H_ #define _NIXIE_H_ void NiXie(unsigned char Location,unsigned char Number); #endif✅Delay.cvoid Delay(unsigned int xms) //12MHz { unsigned char i, j; while(xms) { i 2; j 239; do { while (--j); } while (--i); xms--; } }✅Delay.h#ifndef _DELAY_H_ #define _DELAY_H_ void Delay(unsigned int xms); #endif