区别与上两个驱动的方法,用bitRead()读取位数,代码简洁一点。

//设置阴极接口
int d1 = 1;
int d2 = 2;
int d3 = 3;
int d4 = 4;
int d5 = 5;
int d6 = 6;
int d7 = 7;
//设置阳极接口
int a = 8;
int b = 9;
int c = 10;
int d = 11;
int e = 12;
int f = 13;
int g = A0;
int h = A1;const unsigned char Yang[] = { a, b, c, d, e, f, g, h };
const unsigned char YangCode[]={0x03,    // 0 = 缺水0x0C,    // 1 = 低水位0x70,    // 2 = 定时关机0x3F,    // 3 = 00x06,    // 4 = 10x5B,    // 5 = 20x4F,    // 6 = 30x66,    // 7 = 40x6D,    // 8 = 50x7D,    // 9 = 60x07,    // 10 = 70x7F,    // 11 = 80x6F,    // 12 = 90x80,    // 13 = 摄氏度符号、睡眠符号
};byte gyin[7] = { d1, d2, d3, d4, d5, d6, d7 };
byte gong_yin[5][7] = { { 1,1,1,1,1,1,0 },  // 0 = 缺水、低水位、定时关机{ 0,1,1,1,1,1,1 },  // 1 = 温度十位、摄氏度符号{ 1,0,1,1,1,1,1 },  // 2 = 温度个位、睡眠符号{ 0,0,1,1,1,1,1 },  // 3 = 温度个和十位{ 1,1,0,0,0,0,1 },  // 4 = 时钟个、十位和两点}; void setup()
{pinMode(A0, OUTPUT);pinMode(A1, OUTPUT);for(int i=1; i<14;i++){pinMode(i,OUTPUT);}
}void loop()
{GongYin(3);GongYin(4);for (int a=3;a<13;a++){digitalWrite(h, HIGH);//显示时钟的冒号delay(300);YangShow(a);delay(300);}
}void GongYin(int y)
{for (int i = 0; i < 7; i++) {digitalWrite(gyin[i], gong_yin[y][i]);}
}void YangShow(char data)
{char i;char j;char hc;if(0<=data<14){hc = YangCode[data];for(i=0;i<8;i++){j = bitRead(hc,i);digitalWrite(Yang[i], j);}}
}

Arduino 数码管LED驱动 读位法 16进制相关推荐

  1. Python实现生成100个MAC地址并写入文件中,MAC地址前6位(16进制)为01-AF-3B

    题目要求: 生成100个MAC地址并写入文件中,MAC地址前6位(16进制)为01-AF-3B 01-AF-3B 01-AF-3B-xx 01-AF-3B-xx-xx 01-AF-3B-xx-xx-x ...

  2. 将最大位1000位的16进制转化位8进制(蓝桥杯)

    用c++实现将最大位1000位的16进制转化成8进制(## 蓝桥杯) 题目 先将16进制转化成二进制在将其转化成八进制 代码如下(示例): ```cpp #include <bits/stdc+ ...

  3. python:将32位的16进制数据以二进制/hex/binary的形式写入到文件

    ★★★ 个人博客导读首页-点击此处 ★★★ 如0x1234,写入到文件应该是hex:[00 00 12 34] import sys import os import structdef tran_h ...

  4. 根据日期和随机数生成32位的16进制随机数

    package test.demo;import java.util.ArrayList; import java.util.Date; import java.util.List;public cl ...

  5. 编一个程序完成从键盘上输入一个4位的16进制数,并以八进制形式显示出来。

    思路: 无论输入的是0123--abcdef,还是0123--ABCDEF都可以被解析为16进制字符 DATAS SEGMENTcrlf db 0dh,0ah,24h DATAS ENDSSTACKS ...

  6. python3 16位字符串16进制字符串转整形问题

    碰到的这段字符串为一个ip地址,想要转换为整形 ,用int直接转失败 str="240E098099000000" python2中有long类型 python3中没有long类型 ...

  7. 利用10位AD转换器 及 LED 数码管,实现由AD转换器采集温度,并用数码管显示。温度超出一定范围,LED 指示灯闪烁报警。(主要分析进制16进制转换10进制,并用数码管显示问题)

    ** 题目: ** 利用原有的电路 AD 及 LED 数码管显示等例子,进行整合.实现由 AD转换器采集温度(用可调电阻模拟),温度在数码管上显示.当温度超出一定范围,用 LED 指示灯进行闪烁报警. ...

  8. 生成32位,16进制的UUID

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. 8位16进制频率计设计实验--VHDL

    一.实验目的 (1)学习并掌握Quartus II的使用方法 (2)学习简单时序电路的设计和硬件测试. (3)学习使用VHDL 语言方法进行逻辑设计输入 (4)学习设计8位16进制频率计,学习较复杂的 ...

最新文章

  1. 计算机教授技术追踪劫匪,打脸 911警察
  2. java 线性计算_计算线性指数Tensorflow
  3. yunyang tensorflow-yolov3 启动evaluate.py报错:Could not create cudnn handle: CUDNN_STATUS_ALLOC_FAILED原因
  4. java开源库web3j的以太坊过滤器(filter)和智能合约事件(event)教程
  5. Android 运行时异常 Binary XML file line # : Error inflating class
  6. cmd进入控制Mysql出现乱码的问题
  7. python读取xml文件
  8. MS-SQL中取年-月
  9. 如何成为一名网络工程师
  10. c语言社交网络,【C++】设计并实现一种简单的社交网络模型图
  11. Gradle下载手动安装
  12. 常见问题之Golang——verifying github.com/go-playground/assert/v2@v2.0.1/go.mod: checksum mismatch错误...
  13. 雨听 | 英语学习笔记(三)~作文范文:90后的网络生活
  14. 学fpga(先自顶而下设计,再自下而上集成)
  15. 美国最常见英文名字排行榜(500名)
  16. Hilbert 曲线
  17. 第八部份:Bless安装
  18. Oracle 计算两日期间隔月数
  19. facsum (线性筛 积性函数)
  20. vs2015上安装小番茄插件

热门文章

  1. ls -l 每一列的含义
  2. Vue+SpringBoot打造学生综合素质评价系统
  3. 【抽象代数】伽罗瓦理论简介
  4. 架构设计:系统存储(20)——图片服务器:需求和技术选型(2)
  5. 安卓开发板烧写程序与安装软件的区别_在开发板上安装Android
  6. 狄立克雷函数傅立叶变换0点_你真的理解傅立叶变换吗?
  7. 学习笔记TF061:分布式TensorFlow,分布式原理、最佳实践
  8. [网络安全学习篇58]:PHP代码注入
  9. 根服务器能当蜘蛛种子网站吗,网站被对方镜像有什么危害,该怎么处理?_蜘蛛技巧_超级蜘蛛池...
  10. 今日话题:朝鲜做了个山寨Facebook 立马就被黑