74HC164dD驱动LED
驱动要点:
1、上升沿写入串行数据:
CLK=0;
DAT=num&0x01;
CLK=1;
2、写入数据的数码管编码(指代码中的 tab[])
串行数据是FIFO先进先出,也就是先写高位,移位放入。
电路如图:
|
共阴数码管74HC164串行驱动(经过测试) |
|
//共阴数码管74HC164串行驱动 #include #define uint unsigned int #define uchar unsigned char sbit DAT=P3^7; //模拟串口数据发送端 sbit CLK=P3^4;//模拟时钟控制端 uchar code tab[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xff,0xf6};//0-9,-,全灭 void sendbyte(uchar byte) { uchar num,c; num=tab[byte]; for(c=0;c<8;c++) { CLK=0; DAT=num&0x01; CLK=1; num>>=1; } } void delay_50ms(unsigned int t) { unsigned int j; for(;t>0;t--) for(j=6245;j>0;j--) {;} } main() { unsigned char h; while(1){ for(h=0;h<10;h++){ delay_50ms(1); sendbyte(h); delay_50ms(4); } h=0; } } |
|
共阳数码管74HC164串行驱动(暂未测试) |
|
#include #define uint unsigned int #define uchar unsigned char sbit DAT=P1^1; //模拟串口数据发送端 sbit CLK=P1^2;//模拟时钟控制端 uchar code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff};//0-9,-,全灭 (共阳字段表) void sendbyte(uchar byte) { uchar num,c; num=tab[byte]; for(c=0;c<8;c++) { CLK=0; DAT=num&0x80; //(0x80即十进制的128, 二进制的10000000 按位发送) CLK=1; num<<=1; } } void delay_50ms(unsigned int t) //50MS演示程序 { unsigned int j; for(;t>0;t--) for(j=6245;j>0;j--) {;} } main() { unsigned char h; while(1){ for(h=0;h<10;h++){ delay_50ms(1); sendbyte(h); delay_50ms(10); } h=0; } } |
74HC164dD驱动LED的更多相关文章
- (笔记)linux设备驱动--LED驱动
linux设备驱动--LED驱动 最近正在学习设备驱动开发,因此打算写一个系列博客,即是对自己学习的一个总结,也是对自己的一个督促,有不对,不足,需要改正的地方还望大家指出,而且希望结识志同道合的朋友 ...
- TMS320VC5509总线驱动LED灯
1. 重新建立的工程,需要添加宏定义才行 CHIP_5509 2. 驱动LED用的是74LVC573锁存器,LE高电平时,Q1=D0,LE低电平时,Q1=之前的状态,下面是数据总线 看下地址总线 看下 ...
- stm32开发笔记(三):stm32系列的GPIO基本功能之输出驱动LED灯、输入按键KEY以及Demo
前言 stm32系列是最常用的单片机之一,不同的版本对应除了引脚.外设.频率.容量等'不同之外,其开发的方法是一样的. 本章讲解使用GPIO引脚功能驱动LED灯和接收Key按钮输入. STM ...
- 灵动微电子ARM Cortex M0 MM32F0010 GPIO 的配置驱动LED灯
灵动微电子ARM Cortex M0 MM32F0010 GPIO的配置 目录: 1.前言 2.学习方法简要说明 3.要点提示 4.注意事项 5.MM32F0010系统时钟的配置 6.MM32F001 ...
- MM32F0020 GPIO驱动LED灯(MM32F0020 GPIO Toggle)
目录: 1.MM32F0020简介 2.MM32F0020系统时钟配置 3.MM32F0020的GPIO外设配置及其初始化 4.使用官网的Systick定时器做延时 5.MM32F0020 GPIO驱 ...
- MM32F0140 GPIO驱动LED灯(MM32F0140 GPIO)
目录: 1.MM32F0140简介 2.MM32F0140系统时钟配置 3.MM32F0140的GPIO外设配置及其初始化 4.使用官网的Systick定时器做延时 5.MM32F0140 GPIO驱 ...
- Linux 驱动——Led驱动2
led_drv.c驱动文件: #include <linux/module.h>#include <linux/kernel.h>#include <linux/init ...
- 【GMT43智能液晶模块】例程一:ARM驱动LED
实验原理: 通过STM32的一个GPIO驱动一个红色LED,GPIO为推挽输出模式,采用灌电流 方式与LED连接,基于STemWin人机界面通过按钮控制GPIO高.低电平输出,从而 控制LED亮灭. ...
- Linux字符设备驱动--Led设备驱动
①驱动源码 #include <linux/module.h> #include <linux/init.h> #include <linux/cdev.h> #i ...
随机推荐
- [Firebase] 3. Firebase Simple Login Form
Using $firebaseSimpleLogin service. Here we use three methods for login, logout, register and getCur ...
- 推荐9款使用CSS3实现的超酷动画效果
大家都知道,在网页制作时使用CSS技术,可以有效地对页面的布局.字体.颜色.背景和其它效果实现更加精确的控制.只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和 ...
- 安全的远程登录(SSH)
Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定:SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层) ...
- js dom获取
let inputs = this.$el.querySelectorAll('input'); let icon = this.$el.querySelector('.el-input__icon' ...
- 查看sqlserver 2008中性能低下的语句
经常使用这个语句来查看性能低下的sql语句: SELECT creation_time N'语句编译时间' ,last_execution_time N'上次执行时间' ,total_physical ...
- 安卓平台下ARM Mali OpenCL编程-GPU信息检测(转)
对于ARM Mali GPU,目前是支持OpenCL1.1,所以我们可以利用OpenCL来加速我们的计算. 一直以来,对于Mali GPU的OpenCL编程,一直没有环境来测试.好不容易弄到一个华为M ...
- 18-spring学习-AOP深入操作
范例:定义一个参数拦截 package com.Spring.aop; import org.springframework.stereotype.Component; @Component publ ...
- 【JS】jQuery中将数组转换成字符串join()和push()使用
1.push()将元素依次添加至数组:2.join()将数组转换成字符串,里面可以带参数分隔符,默认[,] <script type = text/javascript> $(docume ...
- (一)maven之——maven基础及本地仓库的配置
一.初步了解maven Apache Maven是一个软件项目管理的综合工具.基于项目对象模型(POM)的概念,提供了帮助管理构建.文档.报告.依赖.发布等方法,Maven简化和标准化项目建设过程.处 ...
- Linux命令-文件处理命令:touch
touch chengshi.list 在当前目录中创建chengshi.list文件 touch /root/chengshi.list 在root目录下面创建chengshi.list文件 tou ...