现在我们知道了,不同的数据实际上是占用的单元格不同,8个单元格就是char,16个坑就是int,32坑就是long. 在实际应用中,可能有很多char,比如char1,char2,char3...,也很多int1,int2,int3...,也有很多long1,long2,long3等等。这么多的变量,我们能不能归个类。比如把单元格长度相同的放在一起,比如char1,char2,char3等,这样就产生了数组的概念。那么如何把这些相同长度的单元格变量放在一起呢,也就是说如何定义一个数组呢?

一维数组的定义方式如下:

类型说明符 数组名 [常量表达式]

类型说明符: 表示你想把什么长度单元格的变量放在一起,比如是char,int还是long

数组名: 给你定义的数组取个名字,数组标识符

常量表达式: 表示你定义的数组中装有多少个元素,也就是数组长度

比如char a[4]; 说明字符型数组a,有4个元素

既然定义了数组,那么如何访问数组中的元素呢?比如我要访问数组a的第二个元素,

a[0] 表示数组的第一个元素

a[1]就表示数组的第二个元素

依次类推。

现在我们举个例子如何在单片机编程中使用数组,

例4-2-1 如何在单片机编程中使用数组

定义一个数组,将数组中各元素的值给P1端口实现流水灯的功能

#include "reg52.h"

typedef unsigned char uchar;

typedef unsigned char chararray[8];//定义一个新的数组类型,它有8个元素,数据类型为unsigned char

void delayUs (unsigned char t);

void delayMs(unsigned char t);

void main(void)

{

chararray a ={0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf ,0xbf ,0x7f};

while(1)

{

uchar i;

P1=a[0];

for (i=0;i<8;i++)

{

P1=a[i];

delayMs(100);

}

for (i=7;i>0;i--)

{

P1=a[i];

delayMs(100);

}

}

}

void delayUs (uchar t)

{

while(--t);

}

void delayMs(uchar t)

{

while(--t)

{

delayUs(245);

delayUs(245);

}

}

C语言从51单片机led数组,51单片机之C语言-4.2数组相关推荐

  1. 流水灯c语言程序tm,51单片机LED流水灯课程设计任务书+论文

    郑州工程技术学院课程设计 设计题目:LED流水灯设计 学    院:机电与车辆工程学院 专    业:16电气自动化技术专业班 级普招二班 姓    名:王*&刘* 指导教师:李* 日    ...

  2. 51单片机C语言程序100例分析(1)IO+C语言+头文件

    51单片机C语言程序100例分析(1)IO+C语言+头文件 \\\插播一条:文章末尾有惊喜哟~///  P1=0xfe;//P1=11111110B,即P1.0输出低电平} 分析:通过这短短的几行代码 ...

  3. 实物1操作:stc8a单片机和普通51/52单片机的异同以及下载步骤(点亮一盏LED为例)

    1.stc8a系列单片机,比普通的51/52单片机运行速度快: stc8a单片机是1T单片机,普通的51/52单片机,比如stc89c82RC等单片机是12T单片机. 1T和12T单片机是什么意思呢? ...

  4. 数码管动态显示c语言,《手把手教你学51单片机-C语言》之六 中断与数码管动态显示...

    中断是单片机系统重点中的重点,因为有了中断,单片机就具备了快速协调多模块工作的能力,可以完成复杂的任务.本章将首先带领大家学习一些必要的C语言基础知识,然后讲解数码管动态显示的原理,并最终借助于中断系 ...

  5. c语言爱心灯制作步骤,基于51单片机设计的心形花样灯(PCB+Proteus仿真+源程序+设计报告)...

    设计了一个基于51单片机的心形花样灯电路,该电路可以实现32个LED灯循环闪亮.依次熄灭.对角闪亮.对角熄灭.间隔闪亮.间隔熄灭等多种功能,可以显示42种不同形式的变化效果.该电路主要由单片机芯片ST ...

  6. 51单片机LED点阵屏逐帧显示和流动显示图像

    上一篇逐帧显示用的是定时和中断控制,碰到了一些麻烦,我觉得也是一种不错的办法,因为Delay的时间更短,而且如果不那么介意亮度的情况甚至可以不用Delay()函数,这里采用将要显示的图像按顺序存储在数 ...

  7. c语言从入门到精通 当当,51单片机C语言编程从入门到精通

    本书立足于单片机的各类型应用技术,采用大量实例和程序逐行解说的方式,详细介绍51单片机和C语言编程开发与应用技术. 内容特点: 1 立足于单片机工程应用:由浅入深,结合丰富的开发实例,介绍51单片机C ...

  8. 51单片机-LED模块-来回流水灯

    51单片机-LED模块-来回流水灯 1. 视频 哔哩哔哩视频地址: https://www.bilibili.com/video/av89552821 51单片机-LED模块-来回流水灯 2. 文件 ...

  9. 51单片机LED模拟交通灯

    51单片机LED模拟交通灯 文章目录 51单片机LED模拟交通灯 实验环境 仿真图 代码解析 效果演示 实验环境 实验软件: Keil5 + Proteus7 实验元件: AT89C51 * 1, L ...

最新文章

  1. 如何将UI5应用部署到Fiori On-Premise和On-Cloud的Launchpad上去
  2. 一招修复内存不能read_read文件一个字节实际会发生多大的磁盘IO?
  3. pcm 采样率转换_PCM编码与Waveform音频文件(.wav)格式详解
  4. html把实线变成虚线,Html5 Canvas 绘制虚线和实线的切换方法
  5. 关于 matlab 的 s 函数的 DirFeedthrough
  6. 冒泡排序法应用排身高
  7. Max OS X下关于JDK的那些事
  8. 探探发布春节短片《慢慢来》 两代人隔空对话催婚问题
  9. 程序员,过了 40 岁,连 107 岁的 IBM 都不要我们了!
  10. 公平锁非公平锁的实际使用_面经手册 · 第16篇《码农会锁,ReentrantLock之公平锁讲解和实现》...
  11. Win10 配置 Python 环境变量
  12. “kuangbin带你飞”专题计划——专题一:简单搜索
  13. 高仿京东分类效果(Scroll+Fragment)
  14. 软件开发过程与项目管理(16.项目结束)
  15. 大数据面试题以及答案整理(面试必备)
  16. pinyin4j-2.5.0.jar 工具类
  17. NDIM 磁力下载器 MAC多版本设置UA
  18. linux dos2unix 批量,linux下dos2unix
  19. 如何处理Vegas素材中的杂音
  20. 电脑绣花打版软件评比 《下》

热门文章

  1. 【每日一算法】行星碰撞
  2. Python设计模式-中介者模式
  3. 美多商城之用户中心(收货地址1)
  4. python元组用法详解(定义、下表查找、index()、count()、len())
  5. 台式计算机,笔记本电脑如何查看自己的电池损耗情况!
  6. 梯度提升树算法原理小结
  7. 七大Github机器学习热门项目
  8. Python中6种基本数据类型
  9. 收集一些好的技术文档
  10. linux驱动开发要知道的那些知识(三)------container_of,定时器 及系统调用