找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5990|回复: 3
打印 上一主题 下一主题
收起左侧

按目标板上按键,LED数码管依次显示对应数字,前面代码怎么写

[复制链接]
跳转到指定楼层
楼主
.....
.....
#include "TM1638.h"
#include"msp430f6638.h"

/* Private variables ---------------------------------------------------------*/
uint8_t num[8]; //各个数码管显示的值
uint8_t led_flag[8];
const uint8_t tab[] =
{0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};

void init_port(void){
        P3DIR |= BIT5;
        P3DIR |= BIT4 + BIT2;
        P1DIR |= BIT0;
        P1SEL |= BIT0;
}

int main(void)
{
        unsigned int i = 0;
        unsigned char count;
        WDTCTL = WDTPW+WDTHOLD; //关闭看门狗
        init_port();                  //端口初始化
        init_TM1638();
        while(1)
          {
                   i=Read_key();
                   if(i<16)
                        {
                                 while(Read_key()==i);  //等待按键释放
                                 num[0] = tab[ i];
                                 Write_DATA(0*2,num[3]);//写第i个数码管
                                 Write_DATA(1*2,num[2]);
                                 Write_DATA(2*2,num[1]);
                                 Write_DATA(3*2,num[0]);
                                 Write_DATA(4*2,num[7]);
                                 Write_DATA(5*2,num[6]);
                                 Write_DATA(6*2,num[5]);
                                 Write_DATA(7*2,num[4]);
                                 for(count=7;count>0;count--){
                                         num[count] = num[count-1];
                                 }
                        }
          }
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:320306 发表于 2018-6-19 17:29 | 只看该作者
什么叫前面的代码怎么写,没看明白,你可以交代下背景,什么单片机  实现什么功能!!!
回复

使用道具 举报

板凳
ID:111634 发表于 2018-6-19 21:39 | 只看该作者
本帖最后由 zl2168 于 2018-6-19 21:40 编辑

给你介绍一个正确有效看得懂的案例,自己对照查错吧!
实例75  4×4矩阵式键盘
实例75 4×4矩阵式键盘.rar (44.8 KB, 下载次数: 11)

Proteus仿真一下,确认有效。以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil CProteus》清华大学出版社ISBN 978-7-302-41682-1.书中电路和程序设计有详细说明,程序语句条条有注解
回复

使用道具 举报

地板
ID:354301 发表于 2018-6-21 08:31 | 只看该作者
zsyzdx 发表于 2018-6-19 17:29
什么叫前面的代码怎么写,没看明白,你可以交代下背景,什么单片机  实现什么功能!!!

实现功能:按下目标板上的按键,LED数码管将依次显示对应的数字。LED数码管从左到右显示“0——7”
TM1638是带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。主要应用于冰箱、空调 、家庭影院等产品的高段位显示屏驱动。通过MSP430端口控制TM1638芯片实现读取键盘状态(输入)和控制LED数码管显示(输出)的功能。
在上面这段程序前面有一段主程序,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表