代码



常驻
目录视图摘要视图订阅管理博客写新文章
CSDN日报20170223——《作为开发者,你都听产品经理的,做的累不累?》      程序员1月书讯     【招募】Python学习班招生啦
 数码管显示电位器AD值
2017-02-16 19:39 6人阅读 评论(0) 收藏 编辑 删除
版权声明:本文为博主原创文章,未经博主允许不得转载。

#include"reg51.h"
#include"XPT2046.h"

//--定义使用的IO--//
#define GPIO_DIG P0

sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;

//--定义全局变量--//
unsigned char code DIG_CODE[17]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码

uchar DisplayData[8];       //用来存放要显示的8位数的值
void DigDisplay(void);
void main(void)
{
    uint temp,count;
    while(1)
    {
      if(count==50)
      {
        count=0; 
        temp = Read_AD_Data(0x94);      //初始化AD,读取AIN0(001)通道的值
      }
      count++;

      DisplayData[0]=DIG_CODE[0];
      DisplayData[1]=DIG_CODE[0];
      DisplayData[2]=DIG_CODE[0];
      DisplayData[3]=DIG_CODE[0];

      DisplayData[4]=DIG_CODE[temp%10000/1000];
      DisplayData[5]=DIG_CODE[temp%1000/100];
      DisplayData[6]=DIG_CODE[temp%100/10];
      DisplayData[7]=DIG_CODE[temp%10/1];

      DigDisplay();
    }
}
void DigDisplay(void)
{
    unsigned char i;
    unsigned int j;
    for(i=0;i<8;i++)
    {
        switch(i)    //位选,选择点亮的数码管,
        {
            case(0):
                LSA=0;LSB=0;LSC=0; break;//显示第0位
            case(1):
                LSA=1;LSB=0;LSC=0; break;//显示第1位
            case(2):
                LSA=0;LSB=1;LSC=0; break;//显示第2位
            case(3):
                LSA=1;LSB=1;LSC=0; break;//显示第3位
            case(4):
                LSA=0;LSB=0;LSC=1; break;//显示第4位
            case(5):
                LSA=1;LSB=0;LSC=1; break;//显示第5位
            case(6):
                LSA=0;LSB=1;LSC=1; break;//显示第6位
            case(7):
                LSA=1;LSB=1;LSC=1; break;//显示第7位    
        }
        GPIO_DIG=DisplayData[i];//发送段码
        j=50;                        //扫描间隔时间设定
        while(j--); 
        GPIO_DIG=0x00;//消隐
    }
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
7600


上一篇数码管显示时钟
下一篇DA输出模拟


猜你在找
Python编程基础视频教程(第二季)Python编程基础视频教程(第六季)零基础学Java系列从入门到精通Swift视频教程JavaScript for Qt Quick(QML)
proteus仿真之8位数码管动态扫描显示试验数码管显示不正常的调试方法与步骤总结数码管显示模板STM32下SPI模式通过MAX7219驱动8位数码管显示模块Arduino + 四位LED数码管显示当前环境温度


关闭

查看评论

  暂无评论

发表评论
用 户 名:
a_studycx
评论内容:
插入代码

提交  
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
全部主题 Hadoop AWS 移动游戏 Java Android iOS Swift 智能硬件 Docker OpenStack VPN Spark ERP IE10 Eclipse CRM JavaScript 数据库 Ubuntu NFC WAP jQuery BI HTML5 Spring Apache .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap
个人资料
 访问我的空间 
一只会笑的小猪
 2
访问:5119次
积分:1135
等级: 
排名:千里之外
原创:105篇转载:20篇译文:0篇评论:4条
文章搜索

搜索
文章分类
编程语言(51)
文章存档
201702月(18)
201701月(17)
201612月(23)
201611月(28)
201610月(38)
展开
阅读排行
找出7个默森尼数,法国数学家默森尼曾提出下列公式:Mp=2^p-1。当p是素数,Mp也是素数时,称Mp为默森尼数, 例如,p=5,Mp=2^5-1=31,531都是素数,因此31是默森尼数;而Mp(259)
编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字(257)
字符串数组的冒泡排序,从小到大(214)
从一个字符数组中读出相应的整数、实数(195)
DVHOP定位算法(173)
对N行N列二维数组的每一行排序,偶数行(0当作偶数)由小到大排序,奇数行由大到小排序(154)
题目:有n个人围成一圈,顺序排号,从第一个开始报数(从13报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位. 提示:用数组完成(145)
#pragma的用法(133)
enum枚举类型(132)
合并两个字符集合为一个新集合,每个字符串在新集合中仅出现一次,函数返回新集合中字符串。 如: s1集合{“while”,”for”,”switch”,”if”,”continue”(115)
评论排行
找出7个默森尼数,法国数学家默森尼曾提出下列公式:Mp=2^p-1。当p是素数,Mp也是素数时,称Mp为默森尼数, 例如,p=5,Mp=2^5-1=31,531都是素数,因此31是默森尼数;而Mp(3)
费诺编码(1)
#pragma的用法(0)
memcpystrcpy的区别(0)
enum枚举类型(0)
malloc函数(0)
static函数(0)
强制类型转换(0)
有关飞行器(0)
数组指针与指针数组(0)
推荐文章
* 【Unity Shader编程】之十六 基于MatCap实现适于移动平台的“次时代”车漆Shader
* CSDN日报20170222——《未来最重要的三个能力》
* C#开发人员应该知道的13件事情
* Android逆向之旅---带你爆破一款应用的签名验证问题
* 找到能立刻开始的下一步行动
最新评论
费诺编码
weixin_37243454: 你好,我看了你写的程序,有些地方不是很懂,求大神指点,给画程序流程图呗
找出7个默森尼数,法国数学家默森尼曾提出下列公式:Mp=2^p-1。当p是素数,Mp也是素数时,称Mp为默森尼数, 例如,p=5,Mp=2^5-1=31,531都是素数,因此31是默森尼数;而Mp
一只会笑的小猪: 加上math库
找出7个默森尼数,法国数学家默森尼曾提出下列公式:Mp=2^p-1。当p是素数,Mp也是素数时,称Mp为默森尼数, 例如,p=5,Mp=2^5-1=31,531都是素数,因此31是默森尼数;而Mp
???? ??: gcc编译之后有问题
找出7个默森尼数,法国数学家默森尼曾提出下列公式:Mp=2^p-1。当p是素数,Mp也是素数时,称Mp为默森尼数, 例如,p=5,Mp=2^5-1=31,531都是素数,因此31是默森尼数;而Mp
???? ??:

公司简介|招贤纳士|广告服务|联系方式|版权声明|法律顾问|问题报告|合作伙伴|论坛反馈
网站客服杂志客服微博客服webmaster@csdn.net400-600-2320|北京创新乐知信息技术有限公司 版权所有|江苏知之为计算机有限公司|江苏乐知网络技术有限公司
京 ICP 证 09002463 号|Copyright © 1999-2016, CSDN.NET, All Rights Reserved GongshangLogo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值