单片机 之 基于原板的 数码管动态显示

题目要求:

数码管动态显示:已采集的数据存放在数据缓冲器内data[0]-data[3],每个数据为一个字节的长度(0-255),对应外部物理量为0-100度,要求利用动态显示对data的多个数据进行动态循环显示,精度为2位小数。

编码工具:keil

代码暂时不开源!

/**/

#include<reg51.h>                              //头文件

另一种解决办法:(未使用中断和定时器机制,而是直接采用循环来延时),

功能是循环输出256个数,如果想要按要求存到 数据缓冲器,只需要声明一个数组,只存4个数即可

#include<reg51.h>/****延时函数*******************************/

void delayms(uint t)
{

}
时间: 2024-10-27 19:43:15

单片机 之 基于原板的 数码管动态显示的相关文章

基于OpenGL的三维曲面动态显示实现

在使用Visual C++的MFC AppWizard建立应用程序框架后,生成了多个类,与OpenGL编程相关的类是视图类,主要的显示任务都在其中完成. 1.基于OpenGL绘图的基本设置 1.1 设置必要的编译链接环境 OpenGL的图形编程接口包括的主要函数和库函数被封装在动态链接库中,因此在项目中要添加 OpenGL32.dll.glu32.dll和glaux.dll三个库.同时在应用程序的视类头文件中加入OpenGL头文件说明: #include"gl\gl.h" #inclu

单片机第4课:共阴极数码管动态显示之定时器

上面是电路图,J16和J15相连,J6的321对应P2^0--P2^2,这样连有利于节省单片机的资源.其中P1^0和LE相连,段选(决定数码管显示什么东东),位选(哪一个数码管亮)由138译码器决定.我们先写程序吧: #include<reg51.h> #define uint unsigned int #define uchar unsigned char //加上code表示将这个存放在ROM当中,否则存放在RAM当中 //RAM存储空间很小,51的只有128Byte uchar code

51单片机实现数码管动态显示

-------------------------------------------- 设计要求: 在8位8端的数码管上动态显示76543210,快速显示时人眼看到的效果为同时亮起 -------------------------------------------- 实现目标: -------------------------------------------- 数码管编码计算: -------------------------------------------- 实现代码: 1

数码管动态显示(51单片机)续上篇

#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned charuchar temp,aa,numwe,numdu;sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71

单片机入门-矩阵键盘控制数码管显示

任务简述:通过按下4X4矩阵键盘实现数码管对应显示数字 实现方式:通过行列分接法,可以节省使用单片机的I/O口,扫描矩阵键盘是否有按下,判断P2端口得到的值. protues 硬件系统 单片机晶振复位电路: 锁存器.上拉电阻: 4x4矩阵键盘: 代码实现: void key44scan(void)//键盘扫描函数 { uint t; P2=0xfe; t=P2; t=t&0xf0; if(t!=0xf0) { delay(); t=P2; switch(t) { case 0xee:keynum

单片机编程:让led数码管显示数字0到9

led数码管在单片机系统中应用非常普遍,是由发光二极管构成的.数码管由7个发光二极管组成的一个"日"字形,如果需要显示小数点,那么就再加上一个点,就是8段数码管. 数码管显示亮度高,相应速度快,分共阴极和共阳极两种形式,常用的有单个的和4联的,还有两联的和专门用来显示时间的. /*************************************************** *程序功能:点亮一个led数码管,让它显示数字从0到9 * *日期:2015.5.11 * *******

利用定时器0模式1中断消除4位数码管动态显示闪烁问题的项目工程

1 /******************************************************************************** 2 定时器定时1ms,数码管以秒钟计时,加上定时器0中断可消除数码管刷新时的闪烁问题, 3 闪烁问题是由while语句中分离数字时计算造成的,因为每次1s时间到,在数码管刷新前 4 都要进行计算,耽误了时间,导致闪烁,加了中断以后则是先刷新数码管再分离数字. 5 **********************************

FPGA六位共阳极数码管动态显示

1 `timescale 1ns/1ps 2 module adc_dis( 3 clk , 4 rst_n , 5 sm_seg , 6 sm_bit 7 ); 8 9 input clk;//50HZ 10 input rst_n; 11 output[7:0] sm_seg;//段选 12 output[5:0] sm_bit;//位选 13 14 reg [7:0] sm_seg; 15 reg [5:0] sm_bit; 16 reg [31:0] count; 17 reg [31:

数码管动态显示——74HC04

1.电路设计: p0实现段选,p2实现位选,74hc04是反相器,有反向和放大的双重作用. 2.程序设计: #include<reg52.h> code unsigned char seven_seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff}; sbit P2_0 = P2^0; sbit P2_1 = P2^1; sbit P2_2 = P2^2; sbit P2_3 = P2^3; sbit P2_4 =