yeximei MCU DIY进程帖

DIY MCU板接口头文件
http://163.fm/BULEYI1 ,提取码:93WXGSy4
更正:DS1302模块引脚定义有错。请看原图

测试程序3:数码管显示程序,没有找到合适大小的数码管,先接一下。加入小数点,闪烁,消隐控制功能。在调试程序时,由于LCD模块的影响,数码管的G段常为暗。因此在显示程序中加入LCD模块不选中信号(E=0),显示正常。前5秒显示4567,后显示秒计时。
char code disppointtab[]={0x0,0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80 }; //
void Init(void)
{
func=2;//i流水灯
disphide=0x20;
dispflash=0x40;
disppoint=0x80;
dispbuf[0]=0x0;
dispbuf[1]=0x1;
dispbuf[2]=0x2;
dispbuf[3]=0x3;
dispbuf[4]=0x4;
dispbuf[5]=0x9;
dispbuf[6]=0x6;
dispbuf[7]=0x7;
second=0;
}
void disp(void)
{
char dispcnt,temp;
for (dispcnt=8;dispcnt>0;dispcnt--)
{ LCDE=0;
temp =DISPTAB[dispbuf[dispcnt-1]];
if (disppoint & disppointtab[dispcnt])
temp =temp |DISPDOT; //加入小数点
if (dispflash & disppointtab[dispcnt])
if (tickcnt&0x8) temp =0x00;//加入闪烁
if (disphide & disppointtab[dispcnt])
temp =0x00;//加入消隐
DISPLEDD=temp;
DISPCLK=0;DISPCLK=1;DISPCLK=0;
DISPWM(dispcnt-1);
delayNms(2);DISPLEDD =0x00;DISPCLK=0;DISPCLK=1;DISPCLK=0;
}
}
回复
打赏帖 | |
---|---|
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 | |
【换取手持数字示波器】分享一个KEIL无法识别CMSIS-DAP调试器的解决办法被打赏20分 | |
【换取手持数字示波器】分享一个自制的ArduinoNano扩展板底板被打赏23分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 |