CT107D digitalTube.c

2019-05-09来源: eefocus关键字:CT107D  digitalTube  c

#include "stc15f2k60s2.h"

#include "stdint.h"

 

code uint8_t tab[] = {    //  0    1    2    3    4    5    6    7    8    9 null

    0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xFF

};

pdata uint8_t dspBuf[8] = {

    10, 10, 10, 10, 10, 10, 10, 10

};  //显示缓冲区

 

void digitalTubeScan() {

    static uint8_t index = 0;

 

    P2 = (P2 & 0x1F) | 0xE0;    //使能具体值

    P0 = 0xFF;                    //消隐

    P2 &= 0x1F;                    //锁存

 

    P2 = (P2 & 0x1F) | 0xC0;    //使能位选

    P0 = (1 << index);            //数码管选择是1有效

    P2 &= 0x1F;

 

    P2 = (P2 & 0x1F) | 0xE0;    //使能具体值

    P0 = tab[dspBuf[index]];    //

    P2 &= 0x1F;

 

    index = (index + 1) & 0x07;

}



关键字:CT107D  digitalTube  c 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic461219.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:DS18B20温度传感器示例
下一篇:单片机学习记录——矩阵键盘

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

CT107D蓝桥杯单片机编程LED(1)
今天呢,是LED的使用首先我们要学会看这一块原理图,找到LED的位置,收索led就可以了我们可以看到这8个led是一个Y4C控制的P0所有口为8位数据口的锁存器,我们再找到Y4C然后又找到Y4最终我们找到一个138芯片,分别是P2^5     P2^6    P2^7控制Y0-Y7这个芯片的原理很简单,就是用3个口是控制8个口的输出不知道的同学肯定觉得很奇怪,那么好好看下面的解释你就懂了输入是3个口                      输出是8个口  &nbs
发表于 2019-09-26
CT107D蓝桥杯单片机编程LED(1)
CT107D蓝桥杯蜂鸣器和继电器(2)
今天我给大家讲一下这块板子的蜂鸣器和继电器1,——蜂鸣器先找图,蜂鸣器叫做buzz然后看到是N BUZZ口控制,继续找找到这里我们可以知道蜂鸣器是用U9这个锁存器控制的Q7为0蜂鸣器工作,那么我们继续找U9的控制口Y5C看到这个是不是很熟悉呢,没错和LED很想是吧,好我们继续找Y5好了,没错又是这个138芯片,和LED的一样。原理我这里就不再啰嗦了,我直接上代码了P2=(P2&0x1f)|0xa0;        这个就是打开Y5口P0=0x40打开蜂鸣器P0&=0xb0关闭蜂鸣器P2&=0x1f关闭Y5口       2 ——继
发表于 2019-09-26
CT107D蓝桥杯蜂鸣器和继电器(2)
CT107D蓝桥杯串口实例(3)
今天我给大家讲一下这个板子的串口通信。这里我们就不需要看板子了,只要会用51芯片的串口就可以了。直接上代码了。#include "reg52.h"str AUXR=0x8e;    51特殊寄存器具体不深究void init_uart(){SCON=0x50;  允许接受串行口中断方式1 即8位异步通讯AUXR=0x40; 1TTMOD|=0x20;  定时器模式3自动重装TH1=256 -(11059200 / 9600 / 32); 波特率9600ES=1; 允许串口中断  TR1=1; 定时器1EA=1; 总中断}void main(){unsig
发表于 2019-09-26
CT107D蓝桥杯动态数码管实例(4)
今天我给大家讲一下CT107D蓝桥杯数码管的显示。数码管的具体原理我就不多说了,因为说多了怕你们晕了,多说无益,想了解原理的可以自己BD一下,我们之间找电路吧:这个可以看到,我们直接控制Y7C口,向P0口送数据我们控制Y6C口选择使用哪个数码管,一个是8个我们找到Y6C和Y7C就好了这个很熟悉了吧,好了,上使用方法P2=(P2&0x1f)|0xc0;        打开Y6P0=0x01; 选第一个      P2&=0x1f;  关Y6P2=(P2&0x1f)|0xe0;     
发表于 2019-09-26
CT107D蓝桥杯动态数码管实例(4)
CT107D蓝桥杯独立键盘运用(5)
今天我给大家讲一下键盘的运用,我们先看电路图上面的引脚下面我们先看看独立键盘怎么样用吧独立键盘是S4 S5 S6 S7          J5口要接到BTN好了,我们直接看代码//独立键盘 sbit S7  = P3^0;sbit S6  = P3^1;sbit S5  = P3^2;sbit S4  = P3^3; //独立键盘检查 unsigned char dkey_scan() {  if(S7==0)return 7;if(S6==0)return 6;if(S5==0)re
发表于 2019-09-26
CT107D蓝桥杯独立键盘运用(5)
CT107D蓝桥杯超声波模块(6)
今天我给大家讲一下超声波模块怎么用。我们同样是先看电路图找到相关引脚我们看到有2个电路分别控制JS1和JS2,就是接收和发射模块JS1由N B1控制JS2由N A1控制然后这2个口由JUMP6跳线组控制,所以要把跳线帽接到13,24所以我们只要控制P1^0 P1^1我们需要显示出测量距离,所以要用到串口或者数码管,我们这里用数码管显示吧数码管代码前面有,我就不多打了超声波的原理就是发射一个超声波出去,如果接受模块接受到还回信号,就会输出高电平,高电平的时间就是超声波走的时间#include "reg52.h"#include "intrins.h"#define somenop{_nop_()
发表于 2019-09-26
CT107D蓝桥杯超声波模块(6)
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved