双色点阵心形
来源:互联网 发布:php用files上传照片 编辑:程序博客网 时间:2024/04/30 21:40
- #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
- #include<intrins.h>
- #define DataPort P0
- //unsigned char segout[8]={0,1,2,3,4,5,6,7}; //8列
- unsigned char segout[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //8列
- unsigned char tab[]={0x0c,0x12,0x22,0x44,0x22,0x12,0x0c,0x00
- //0x00,0x6C,0x92,0x82,0x44,0x28,0x10,0x00
- };
- unsigned char dofly_DuanMa[]={0x30,0x30,0x3f,0x3e,0x79,0x6e,0x3f,0x3e};//0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};// 共阴显示段码值0~9
- unsigned char dofly_WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分别对应相应的数码管点亮,即位码
- void Display(unsigned char FirstBit,unsigned char Num);
- unsigned char TempData[8];
- /*------------------------------------------------
- 硬件端口定义
- ------------------------------------------------*/
- sbit LATCH1=P2^6;
- sbit LATCH2=P2^7;
- sbit LATCH = P1^0;
- sbit SRCLK= P1^1;
- sbit SER = P1^2;
- sbit LATCH_B = P2^2;
- sbit SRCLK_B= P2^1;
- sbit SER_B= P2^0;
- /*------------------------------------------------
- uS延时函数,含有输入参数 unsigned char t,无返回值
- unsigned char 是定义无符号字符变量,其值的范围是
- 0~255 这里使用晶振12M,精确延时请使用汇编,大致延时
- 长度如下 T=tx2+5 uS
- ------------------------------------------------*/
- void DelayUs2x(unsigned char t)
- {
- while(--t);
- }
- /*------------------------------------------------
- mS延时函数,含有输入参数 unsigned char t,无返回值
- unsigned char 是定义无符号字符变量,其值的范围是
- 0~255 这里使用晶振12M,精确延时请使用汇编
- ------------------------------------------------*/
- void DelayMs(unsigned char t)
- {
- while(t--)
- {
- //大致延时1mS
- DelayUs2x(245);
- DelayUs2x(245);
- }
- }
- /*------------------------------------------------
- 发送字节程序
- ------------------------------------------------*/
- void SendByte(unsigned char dat)
- {
- unsigned char i;
- for(i=0;i<8;i++)
- {
- SRCLK=0;
- SER=dat&0x80;
- dat<<=1;
- SRCLK=1;
- }
- }
- /*------------------------------------------------
- 发送双字节程序
- 595级联,n个595,就需要发送n字节后锁存
- ------------------------------------------------*/
- void Send2Byte(unsigned char dat1,unsigned char dat2)
- {
- SendByte(dat1);
- SendByte(dat2);
- }
- /*------------------------------------------------
- 595锁存程序
- 595级联发送数据后,锁存有效
- ------------------------------------------------*/
- void Out595(void)
- {
- _nop_();
- LATCH=1;
- LATCH=0;
- }
- /*------------------------------------------------
- 发送位码字节程序
- 使用另外一片单独595
- ------------------------------------------------*/
- void SendSeg(unsigned char dat)
- {
- unsigned char i;
- for(i=0;i<8;i++) //发送字节
- {
- SRCLK_B=0;
- SER_B=dat&0x80;
- dat<<=1;
- SRCLK_B=1;
- }
- LATCH_B=1; //锁存
- _nop_();
- LATCH_B=0;
- }
- void Display(unsigned char FirstBit,unsigned char Num)
- {
- static unsigned char i;
- /*for(i=0;i<Num;i++)
- {*/
- DataPort= 0x00;
- LATCH1=1;
- LATCH1=0;
- DataPort=dofly_WeiMa[i+FirstBit];
- LATCH2=1;
- LATCH2=0;
- DataPort = dofly_DuanMa[i];//TempData[i];
- LATCH1=1;
- LATCH1=0;
- /*DelayUs2x(200);
- }*/
- i++;
- if(i == Num)
- i = 0;
- }
- /*------------------------------------------------
- 主程序
- ------------------------------------------------*/
- void time0_isr(void) interrupt 1
- {
- ET0 = 0;
- TH0 = 0XFC;
- TL0 = 0X18;
- Display(0,8);
- ET0 = 1;
- }
- void main()
- {
- unsigned char i,j;
- TMOD = 0X01;
- TH0 = 0XFC;
- TL0 = 0X18;
- EA = 1;
- ET0 = 1;
- TR0 = 1;
- while(1)
- {
- for(j=0;j<60;j++)
- for(i=0;i<8;i++) //8列显示
- {
- SendSeg(segout[i]);
- Send2Byte(~tab[i],0xff);
- Out595();
- DelayMs(1);
- Send2Byte(0xff,0xff);//delay(10); //防止重影
- Out595();
- }
- //另外一种颜色
- for(j=0;j<60;j++)
- for(i=0;i<8;i++) //8列显示
- {
- SendSeg(segout[7-i]); //反向显示同样图形
- Send2Byte(0xff,~tab[i]);
- Out595();
- DelayMs(1);
- Send2Byte(0xff,0xff);//delay(10); //防止重影
- Out595();
- }
- }
- }
0 0
- 双色点阵心形
- 双色点阵心形显示
- 双色点阵心形显示
- 双色点阵
- 双色点阵
- 双色点阵2
- 双色点阵动态显示
- 双色点阵(爱心)
- 双色点阵显示特定图形
- 单片机双色点阵显示特定图形
- 使用hc595驱动双色点阵
- 点阵
- 双色点阵显示0——F
- 微机接口双色点阵-- 变化的表情动画
- 单片机双色点阵显示1种颜色
- 单片机双色点阵显示1种颜色
- 点阵字库
- LED点阵
- 设计师常用网站
- iOS 开发-制作环形进度条
- HDU - 3085 双向BFS + 技巧处理 [kuangbin带你飞]专题二
- head first python 第二章代码
- 查找html元素
- 双色点阵心形
- Sklearn机器学习:如何绘制全局二维特征-单预测结果的背景图
- .bashrc小技巧
- Leetcode 406. Queue Reconstruction by Height
- Ajax基础学习笔记三—jQuery实现Ajax
- Unity5.x Standard Shader在手机上的实现(三)
- 词向量
- 母函数详解(定义,模板代码,用法)
- Java基本数据类型