推荐阅读最新更新时间:2024-03-16 14:23
51单片机-数码管显示函数
1.代码选择 有时我们需要6个数码管显示我们想要看到的数字,比如计算结果呈现在数码管上,然而当要显示的数为“520”时又不想前面的3个数码管亮(也就是高位为0不显示),我们把这部分功能代码封装为带参数的函数,传入的参数就是要显示的数值。参数定义的是unsigned long类型,也就是支持0~4294967296的数值(2的32次方等于4294967296)。 示例1: void ShowNumber(u32 num) { LedBuff =LedChar ; LedBuff =LedChar ; LedBuff =LedChar ; LedBuff =LedChar ; LedBuff =LedChar ;
[单片机]
51单片机实现数码管动态显示60~0
硬件电路原理图 元件清单 C语言程序 #include reg51.h unsigned char table ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //数码管字符码 void show(unsigned char n); void delay(unsigned int k); void main() { unsigned char i; int j; while(1) { for(i=60;j=60,i 0;i--) while(j--) show(i); } } void show(unsigned char n) { P0=table ; P1
[单片机]
基于51单片机的电压表-数码管显示
一.硬件方案 本设计基于STC89C52单片机的一种电压测量电路,该电路采用ADC0832A/D转换芯片,实现数字电压表的硬件电路与软件设计。该系统的数字电压表电路简单, 可以测量0~9V的电压值,并在四位LED数码管上显示电压值。如图: 二.设计功能 (1)ADC0832模数转换,0-9V电压测量; (2)4位数码管显示测量电压值; (3)10K可调电阻模拟电压测试; (4)当提供电源电源为精准的5V电源时,精度为正负0.02V; 三.设计原理图 (1)原理图主要采用AD软件进行设计,如图: (2)Protues仿真图如下: 四.软件设计 (1)程序流程图 (2)主程序源码 /**************
[单片机]
拉幕式数码管显示技术原理与分析
1.实验任务 用AT89S51单片机的P0.0/AD0-P0.7/AD7端口接数码管的a-h端,8位数码管的S1-S8通过74LS138译码器的Y0-Y7来控制选通每个数码管的位选端。AT89S51单片机的P1.0-P1.2控制74LS138的A,B,C端子。在8位数码管上从右向左循环显示“12345678”。能够比较平滑地看到拉幕的效果。 2.电路原理图 图4.21.1 3.系统板上硬件连线 (1).把“单片机系统”区域中的P0.0/AD0-P0.7/AD7用8芯排线连接到“动态数码显示”区域中的a-h端口上; (2).把“三八译码模块”区域中的Y0-Y7用8芯排线连接到“动态数码显示”区域中的S1-S8端口上; (3).
[单片机]
PIC单片机驱动LED数码管显示程序
;*****该程序用于驱动led数码管显示,在8个LED数码管上依次显示数字1、2、3、4、5、6、7、8******* ;****http://www.51hei.com 单片机学习网经典程序已测试,led数码管共阴和共阳不同请修改码值转换表部分 LIST P=18F458 INCLUDE "P18F458.INC" ;所用的寄存器 XIANR EQU 0X20 ORG 0X00 GOTO MAIN ORG 0X30 ;****************以下为码值转换表******************** CONVERT ADDWF PCL,1 RETLW 0XC0 ;0,显示段码与具体的硬件连接有关 RETLW 0XF9
[单片机]
PIC单片机开发板:数码管动态扫描程序,显示静态效果
//------------------------------------------------------------------------------------------------------------------------- /*这是自已写的:数码管动态扫描,显示静态效果 心得,显示看起来像乱码,实际上是位置不对(要选送段选,再打开位选)的缘故。 改为delay(300);则流水速度加快 */ #include pic.h #define uchar unsigned char #define uint unsigned int __CONFIG(0x3B31);// void delay(uchar x)
[单片机]
8只数码管滚动显示1~8
程序功能,从左到依次显示0,1,2,3,4,5,6,7 八个数字 程序源代码如下: /* 8只数码管同时显示不同字符 */ #include reg51.h typedef unsigned char uint8; typedef unsigned int uint16; code uint8 LED_CODE = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8}; void delay(uint16 x) { uint16 i,j; for(i = x; i 0; i --) for(j = 114; j 0; j --); } void main() { uint8
[单片机]
AT89C51+DS1302+DS18B20六位数码管显示时钟程序
#include #define uchar unsigned char #define uint unsigned int #include DS1302.h #include DS18B20.h #define sec 0x80 #define min 0x82 #define hou 0x84 #define read 0x01 unsigned char hour,minute,second,id=0,timecount,re_disp=0,p,n0,n1; bit flag; #define leddata P0 //定义数码管的段选 sbit ssw=P2^7; //小时十位 sbit sw=P2^6; //小时个
[单片机]