找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2593|回复: 3
收起左侧

清翔单片机8x8点阵哪里有资源?不知道引脚如何连接的

[复制链接]
ID:396560 发表于 2018-9-14 12:21 | 显示全部楼层 |阅读模式
如题,网上也搜了很多,但都不能很好实现,而且不止引脚如何接的,所以也不知道咋改。
哪位仁兄资源,请给个链接。谢谢了,好人一生平安。

回复

使用道具 举报

ID:375092 发表于 2018-9-14 13:49 | 显示全部楼层

#include <STC15F2K60S2.H>
         
void Delay_ms(unsigned int ms);

void main()
{
        unsigned char i=0,j=0;
        HC595_Init();
        while(1)
        {
                HC595_SendWord((~0x70),0x55);          //dat1低电平点亮(竖),dat2高电平点亮(横)
                Delay_ms(100);
        }
} void HC595_SendWord(unsigned char dat1,unsigned char dat2)
{
        unsigned char i=0;
        unsigned int temp=0;
        temp=dat1;
        temp=temp<<8|dat2;
        for(i=0;i<16;i++)
        {
                HC595_CLK=0;
                if((temp&0x8000)==0x8000)
                {
                        HC595_DI=1;
                }
                else
                {
                        HC595_DI=0;
                }
                HC595_CLK=1;
                temp<<=1;
        }
        HC595_LE=1;
        _nop_();
        _nop_();
        HC595_LE=0;
}
void HC595_Init()
{
         //等待HC595上电稳定
        Delay_ms(10);                               
       
        //初始化P41,P42,P45口为准双向口
        P4M1 &=~( (1<<1) | (1<<2));  
        P4M0 &=~( (1<<1) | (1<<2));
       
        //初始化P37口为准双向口
        P3M1 &=~(1<<7);  
        P3M0 &=~(1<<7);

        HC595_CLK=0;
        HC595_DI=0;
        HC595_LE=1;
        HC595_SendWord(0xff,0x00);
}
void Delay_ms(unsigned int ms)
{
        unsigned int i;
        while( (ms--) != 0)
        {
                for(i = 0; i < 600; i++);
        }            
}
这是我自己写的,其实就是驱动两个hc595芯片,你自己先看看这个程序吧,最好还是自己消化了会自己编写和改成自己想要的,还有就是我这个程序只能显示固定的,我还没有写能够跳变画面的那种,剩下的你自己写吧,

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:155507 发表于 2018-9-14 21:01 | 显示全部楼层
采用2片74HC595驱动,只需接单片机3路IO口,不会浪费IO使用率,根据点阵管动态扫描原理进行显示
兼容LCD1602液晶显示屏接口,直接插在开发板上就可以使用。

  1. /*
  2. 8×8点阵屏循环显示 “电”“子”“1”“2”“3”。
  3. */
  4. #include <reg52.h>
  5. #include <intrins.h> //循环右移头文件
  6. sbit DIO = P3^4;  //串行数据口
  7. sbit S_CLK = P3^5;//移位寄存器时钟
  8. sbit R_CLK = P3^6;//输出锁存器时钟
  9. /*点阵字形码*/
  10. unsigned char code tabel[5][8]={
  11. 0xE0,0xEE,0x01,0x6D,0x01,0x6D,0x01,0xEF,//点
  12. 0xE7,0xF7,0xF7,0xF7,0x80,0xF7,0xFB,0xC3,//子
  13. 0x81,0xE7,0xE7,0xE7,0xE7,0xE7,0xC7,0xE7,//1
  14. 0x81,0x81,0xCF,0xE7,0xF3,0xB9,0x81,0xC3,//2
  15. 0xC3,0xB9,0xF9,0xFB,0xE7,0xFB,0xB9,0xC3,//3
  16. };
  17. /*595发送一字节*/
  18. void Send_Byte(unsigned char dat)
  19. {
  20.         unsigned char i; //循环次数变量
  21.         S_CLK = 0;//拉低移位寄存器时钟
  22.         R_CLK = 0;//拉低输出锁存器时钟
  23.         for(i=0; i<8; i++) //循环8次
  24.         {
  25.                 if(dat & 0x01)//发送1
  26.                         DIO = 1;
  27.                         else          //发送0
  28.                         DIO = 0;
  29.                 dat >>= 1;//数据右移
  30.                 S_CLK = 1;//拉高移位寄存器时钟,数据移位
  31.                 S_CLK = 0;//拉低移位寄存器时钟
  32.         }       
  33. }
  34. void main()
  35. {
  36.         unsigned char j, k, ROW;//j发送8列和8行字形码,k字符数量,ROW行值
  37.         unsigned int z;        //动态扫描延时变量
  38.         while(1)
  39.         {
  40.                 for(k=0; k<5; k++)//k 需要显示的字符数量
  41.                 {
  42.                         for(z=0; z<500; z++)//z刷新次数
  43.                         {
  44.                                 ROW = 0x80;//行选初值
  45.                                 for(j=0; j<8; j++) //循环8次发送行和列值
  46.                                 {
  47.                                         Send_Byte(tabel[k][j]);//发送列选值
  48.                                         Send_Byte(ROW);        //发送行选值
  49.                                         R_CLK = 1; //拉高输出锁存器,把移位寄存器中数据输出
  50.                                         R_CLK = 0; //拉低输出锁存器
  51.                                         ROW = _cror_(ROW, 1);//右移,选择下一行       
  52.                                 }
  53.                         }
  54.                 }
  55.         }
  56. }

复制代码

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:135253 发表于 2018-9-15 10:45 | 显示全部楼层
是万用表量一下不就知道了?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表