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;
}
}

测试程序4:双色点阵封装的单色8*8点阵。红色接口是P0,PA0。显示开始时全暗(接口原因,有点微亮),然后每隔1秒点亮一行。如果换成P0,P2接口的单色点阵,没有微亮,但P2口LCD显示要用。因此没有给出这种方式的程序。总之,点阵连接方式不好,只做一个基本测试。
char code ledmcode[]= {0x0,0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80 };
void ledm(void)
{ char i;
DISPWM(0);//关数码管或数码管显示固定
for(i=8;i>0;i--)
{ LEDMR=ledmcode[i];DISPCLK=0;DISPCLK=0;DISPCLK=1;DISPCLK=1;DISPCLK=0;
LEDMR=ledbuf[i-1];LEDMG=ledbuf[i+8-1];
delayNms(1);
LEDMR=0;DISPCLK=0;DISPCLK=1;DISPCLK=0;
}
}
在定时中断中,写入要显示的内容ledbuf。
ledbuf[second%8]=0;
视频地址:http://player.youku.com/player.php/sid/XMzI5NzMzMDM2/v.swf
回复
打赏帖 | |
---|---|
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 | |
分享电子控制安全气囊计算机知识点被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】【OZONE】使用方法总结被打赏20分 | |
【分享开发笔记,赚取电动螺丝刀】【S32K314】芯片启动流程分析被打赏40分 | |
【分享开发笔记,赚取电动螺丝刀】【S32K146】S32DS RTD 驱动环境搭建被打赏12分 | |
【分享开发笔记,赚取电动螺丝刀】【IAR】libc标注库time相关库函数使用被打赏23分 | |
LP‑MSPM0L1306开发版试用结果被打赏10分 |