文档章节

单片机与C语言学习连载六

泥巴耳朵hh
 泥巴耳朵hh
发布于 2016/02/16 20:51
字数 231
阅读 2
收藏 0
点赞 1
评论 0

#include <reg51.h>
#include "user.h"
#define DUAN P0
#define WEI P2
#define KEY P3
uint8 code DuanMa[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,0x00};
uint8 code WeiMa[] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uint8 data DispBuf[] = {16,16,16,16,16,16,16,16};
void DelayMs(uint16 mstime)
{
 uint8 i;
 while(mstime--)
  for(i=115;i>0;i--)
   ;
}
void Display(uint8 *buf,uint8 num)
{
 uint8 i;
 for(i=0;i<num;i++)
 {
  DUAN = 0;
  DUAN = DuanMa[*(buf+i)];
  WEI = WeiMa[i];
  DelayMs(1);
 } 
}
void main(void)
{
 while(1)
 {
  if(KEY != 0xff)
  {
   switch(KEY)
   {
    case 0xfe:
     if(DispBuf[0] == 16)
      DispBuf[0] = 1;
     else
      DispBuf[0] = 16;
     break;
    case 0xfd:
     if(DispBuf[1] == 16)
      DispBuf[1] = 2;
     else
      DispBuf[1] = 16;
     break;
    case 0xfb:
     if(DispBuf[2] == 16)
      DispBuf[2] = 3;
     else
      DispBuf[2] = 16;
     break;
    case 0xf7:
     if(DispBuf[3] == 16)
      DispBuf[3] = 4;
     else
      DispBuf[3] = 16;
     break;
    case 0xef:
     if(DispBuf[4] == 16)
      DispBuf[4] = 5;
     else
      DispBuf[4] = 16;
     break;
    case 0xdf:
     if(DispBuf[5] == 16)
      DispBuf[5] = 6;
     else
      DispBuf[5] = 16;
     break;
    case 0xbf:
     if(DispBuf[6] == 16)
      DispBuf[6] = 7;
     else
      DispBuf[6] = 16;
     break;
    case 0x7f:
     if(DispBuf[7] == 16)
      DispBuf[7] = 8;
     else
      DispBuf[7] = 16;
     break;
    default:break;
   }
  }
  Display(DispBuf,8);
 }
}

© 著作权归作者所有

共有 人打赏支持
泥巴耳朵hh
粉丝 0
博文 6
码字总数 840
作品 0
贵阳
【连载,完结】物联网全栈教程-从云端到设备---简单介绍单片机代码,裸机上云!

物联网全栈教程-从云端到设备(完结 十四) 一 设备端的开发是一个非常简单的工作。零妖今天就简单讲解一下物联网弹幕器这个设备的源代码,给大家提供一个裸机上云的思路。连载文章更新到这里...

零妖 ⋅ 05/19 ⋅ 0

【连载】物联网全栈教程-从云端到设备(十三)---安装单片机编译环境

物联网全栈教程-从云端到设备(十三) 一 很多朋友一听说要搞硬件总觉得还要重新学习很多电路基础知识,零妖告诉你这是个错误的想法。如果在十年前你这么想那么我是非常支持你的,但是在物联...

零妖 ⋅ 05/19 ⋅ 0

从硬件开始实践物联网-物联网弹幕器的灵感!

物联网全栈教程-从云端到设备(二) 一 我不信你没有看过爱奇艺或者优酷这些视频,看到这篇帖子的人,99.99%都看过。那么视频上发送弹幕你一定也知道了,玩没玩过我不知道但是你一定见过。有...

零妖 ⋅ 06/03 ⋅ 0

单片机C语言编程学习简介与第一个C语言程序

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界 ⋅ 05/26 ⋅ 0

物联网全栈教程-从云端到设备(二)

一 我不信你没有看过爱奇艺或者优酷这些视频,看到这篇帖子的人,99.99%都看过。那么视频上发送弹幕你一定也知道了,玩没玩过我不知道但是你一定见过。有些朋友在看直播的时候更是喜欢评论个...

jixin_lee ⋅ 05/09 ⋅ 0

单片机对modem要进行哪些初始化操作?

一般单片机的MODEM通讯必须要有两个背景知识,一个是AT命令集,另一个是通用非同步接收发送器(UART)。  AT命令集 ★咨询电话:闫工:13223096035 Q,Q:939504694 详细地址:郑州中心地址:...

yhhedu ⋅ 2013/04/24 ⋅ 0

【连载】物联网全栈教程-从云端到设备(一) 故事背景

一 2016年的时候,我还在学校里面准备着毕业论文,当时做的课题是预测一个挖掘机上面的一个继电器的寿命。我们的想法是检测其吸合的次数,然后根据吸合的次数来预计其寿命,这个想法很简单。...

零妖 ⋅ 06/01 ⋅ 0

单片机学习,如何从菜鸟到高手?!

深圳|广州|郑州单片机、pcb培训!信盈达帮你改变!改变你的现状!成就你的梦想! 深圳信盈达一家集产品开发、单片机、pcb、电子、嵌入式培训于一身的公司。凭多年的产品开发经验和心得,将其...

educn114 ⋅ 2014/06/06 ⋅ 0

嵌入式简介

声明:本文资料来源于《ARM裸机全集---朱有鹏老师》 1、什么是嵌入式 传统定义(狭义嵌入式):嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可...

为更好铭天 ⋅ 2017/04/12 ⋅ 0

FPGA学习及设计中的注意事项

FPGA学习及设计中的注意事项 1.基础问题   FPGA的基础就是数字电路和HDL语言,想学好FPGA的人,建议床头都有一本数字电路的书,不管是哪个版本的,这个是基础,多了解也有助于形成硬件设计...

yhhedu ⋅ 2014/04/17 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

对于程序员的招聘问题,作为软件人的一些吐槽和建议

作为软件人,找工作有时候似乎挺苦逼的。 说真的,让我去掉前面这句中“似乎”二字吧。就是苦逼!很多人都曾抱怨处在招聘的一方很糟糕——我们没有任何可靠的方式来甄别会写代码并且写得好的...

老道士 ⋅ 12分钟前 ⋅ 0

HDFS原理学习

一、概述 1、 Hadoop整合了众多的文件系统,首先提供了一个高层的文件系统抽象org.apache.hadoop.fs.FileSystem。然后有各个文件系统的实现类。 2、Hadoop是JAVA编写的,不同文件系统之间的交...

cjxcloud ⋅ 16分钟前 ⋅ 0

Linux下MySQL表名不区分大小写的设置方法(抄袭别人的)

Linux下MySQL表名不区分大小写的设置方法 MySQL表名不区分大小写的设置方法 在用centox安装mysql后,把项目的数据库移植了过去,发现一些表的数据查不到,排查了一下问题,最后发现是表名的大...

随风而浮沉 ⋅ 21分钟前 ⋅ 0

ubuntu下安装宋体simsun

sudo cp simsun.ttc /usr/share/fonts cd /usr/share/fonts sudo chmod 644 simsun.ttc 更新字体缓存: 代码: sudo mkfontscale 代码: sudo mkfontdir 代码: sudo fc-cache -fsv 安装chrome扩......

wangxuwei ⋅ 23分钟前 ⋅ 0

利用 ssh 传输文件

Linux 下一般可以用 scp 命令通过 ssh 传送文件: #把服务器上的 /home/user/a.txt 发送到本机的 /var/www/local_dir 目录下scp username@servername:/home/user/a.txt /var/www/local_dir...

大灰狼时间 ⋅ 33分钟前 ⋅ 0

web3j教程:android和java程序员如何使用web3j开发区块链以太坊

如何使用web3j为Java应用或Android App增加以太坊区块链支持,本教程内容即涉及以太坊中的核心概念,例如账户管理包括账户的创建、钱包创建、交易转账,交易与状态、智能合约开发与交互、过滤...

智能合约 ⋅ 55分钟前 ⋅ 0

web3j开发java或android以太坊智能合约快速入门

web3j简介 web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 可以通过它进行以太坊区块链...

笔阁 ⋅ 57分钟前 ⋅ 0

一起读书《深入浅出nodejs》-异步I/O

异步I/O “异步”这个名词其实很早就诞生了,但它大规模流行却是在Web 2.0浪潮中,它伴随着AJAX的第一个A(Asynchronous)席卷了Web。 为什么要异步I/O 关于异步I/O为何在Node里如此重要,这与...

小草先森 ⋅ 今天 ⋅ 0

JVM各种问题

1、如果启动什么都不设,会怎样? 先来看一个命令 [root@localhost bin]# java -XX:+PrintCommandLineFlags -version -XX:InitialHeapSize=29899008 -XX:MaxHeapSize=478384128 -XX:+PrintCo......

算法之名 ⋅ 今天 ⋅ 0

SAS笔记-宏2

宏是一种文本,一般来说其编译是在程序执行之前。 宏变量的创建 %let语句 %let macro_variables = text; %let是常见的宏变量建立方式,其编译就在执行前。如下例中,想要宏变量test等于数据集...

tonorth123 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部