当前位置: 首页 > article >正文

单片机-串转并-74HC595芯片

需求:实现LED点阵一行一行的点亮 (从下向上)

#include "reg52.h"
typedef unsigned int u16;
typedef unsigned char u8;
void delay_10us(u16 ten_us){
    while(ten_us--);
}
//595芯片
sbit srclk=P3^6;
sbit rclk=P3^5;
sbit ser=P3^4;
//定义点阵P0口
#define LEDDZ_COL_PORT P0
//定义横向点阵控制口-向595芯片传数据
u8 hc595_buf[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
void hc595_write_data(u8 dat){
    u8 i=0;
    for(i=0;i<8;i++){
        //595芯片要求从高位开始传数据  例如:1000 1000
        ser=dat>>7;
        dat<<=1;//左移等,修改原数据,将次高位移到最高位
        srclk=0;
        delay_10us(1);
        srclk=1;
        delay_10us(1);
    }
    //并行输出  数据寄存器 需要上升沿
    rclk=0;
    delay_10us(1);
    rclk=1;
}

void main(){
    u8 i=0;
    LEDDZ_COL_PORT=0x00;//列值全部为低电平,默认不亮
    while(1){
        for(i=0;i<8;i++){
            hc595_write_data(hc595_buf[i]);
            delay_10us(50000);
        }
    }
}


http://www.kler.cn/a/468202.html

相关文章:

  • kafka使用以及基于zookeeper集群搭建集群环境
  • Visual studio code编写简单记事本exe笔记
  • web系统漏洞攻击靶场
  • SpringMVC(四)响应
  • C语言:枚举类型
  • 【C++】构造函数与析构函数
  • Git 新手无忧:常用命令与错误解决攻略
  • C++ 设计模式:解析器模式(Interpreter Pattern)
  • 基于STM32环境温湿度监测系统设计(附项目代码zip)
  • 以往博客的复习补充——part1
  • vim 的基础使用
  • 基于服务器部署的综合视频安防系统的智慧快消开源了。
  • Unity Canvas中显示粒子特效
  • 【网络协议】开放式最短路径优先协议OSPF详解(四)
  • 【踩坑指南2.0 2025最新】Scala中如何在命令行传入参数以运行主函数
  • 在Mac电脑上搭建Gradle
  • 太速科技-135-4路250Msps 16bit AD采集PCIe卡
  • 利用JAVA爬虫获取item_search_img-按图搜索1688商品(拍立淘)接口
  • <论文>聊聊初代LLaMA
  • Unity3D仿星露谷物语开发13之角色感知道具
  • 【项目开发】C#环境配置及VScode运行C#教程(学生管理系统)
  • 使用qiankun搭建微前端应用及踩坑
  • 高频 SQL 50 题(基础版)_1068. 产品销售分析 I
  • NLP-transformer学习:(8)trainer 使用方法
  • 抖音评论地区分布可视化期末项目
  • 【微服务】【Sentinel】认识Sentinel