资源简介
相当不错的点阵程序,有详细的注释...适合点阵的进阶学习模版
代码片段和文件信息
/*
很漂亮的8*8点阵程序支持多种扩展显示流动图案动态滚动显示直接IO口控制
QQ:642175216
By 孤城浪子
*/
#include
#define uchar unsigned char
#define uint unsigned int
sbit we=P3^7;
void delaytime(uint j) //带参数的延时函数有多个作用合理输入形参的数值.可以达到延时消除抖动,亮度调节等
{
uint xy;
for(x=1;x<=2;x++)
for(y=1;y<=j;y++);
}
void main()
{
uint ijklm;
uchar code stringP0[]={0x040X020X020X040X080X100X200X400X200X100X080X040X020X02}; //P0口显示行的定义
uchar code stringP2[]={0xF70XEF0XDF0XBF0XBF0XDF0XEF0XF70XFB0XFD0XFE0XFE0XFD0XFB}; //P2口显示列的定义
we=1; //关闭数码管显示
while(1)
{
for(m=0;m<=1;m++) //此处的for语句定义两种显示方式顺时针和逆时针请看嵌入的if语句当然可以用Switch语句控制多种显示方式咯看你喜欢啥
{
l=30; //此l的定义可以再一定程度上稳定显示速度配合下边34行的l自减可以均匀化速度.但是要完全均衡的话.需要稍复杂的算法这里不多加了
for(j=0;j<=13;j++) //此循环用来控制显示哪几个点的那行因为有14个点所有需十四次循环
{
for(k=0;k<=l;k++) //此循环用来控制主循环显示的速度修改K的循环条件即可注意:要使速度均匀化,循环条件需再嵌套,如递减函数递归调用
{
for(i=0;i<=j;i++) //此循环用来逐点扫描...如我要显示一个完整的心型则需
评论
共有 条评论