实验三:MSP430输入输出接口实验(2学时)

发布者:CreativeMind最新更新时间:2019-04-10 来源: eefocus关键字:MSP430  输入输出接口  LED显示 手机看文章 扫描二维码
随时随地手机看文章

1.实验目的


    学会对P口的使用。


2.实验要求


    利用板上的按键,控制LED显示。


3.实验内容


(1)编写键盘扫描程序。


(2)编写LED闪烁(时间间隔1秒,软件延时)显示程序。


(3)编写用每一个键控制两个LED灯发光的程序,按键可以随时切换。


4.参考资料


#include

#include "Config.h"

#include "1602.c"

 

uchar key;

 

//*************************************************************************

// 初始化按键IO口子程序

//*************************************************************************

void KeyPort_init()

{

 

  P1SEL = 0x00;                   //P1普通IO功能

  P1DIR = 0xF0;                   //P10~P13输入模式,外部电路已接上拉电阻

  P6SEL = 0x00;                   //P6口普通IO功能

  P6DIR = 0xFF;                   //P6口输出模式

}

 

//**********************************************************************

// 键盘扫描子程序,采用逐键扫描的方式

//**********************************************************************

 

uchar Key_Scan(void) 

{

  uchar key_check;

  uchar key_checkin;

  key_checkin=KeyPort;          //读取IO口状态,判断是否有键按下

  key_checkin&= 0x0F;          //读取IO口状态,判断是否有键按下

  if(key_checkin!=0x0F)            //IO口值发生变化则表示有键按下

    {

      delay_ms(20);                  //键盘消抖,延时20MS

      key_checkin=KeyPort;

      if(key_checkin!=0x1F)

        {  

          key_check=KeyPort;

          switch (key_check & 0x0F)

            {

              case 0x0E:key=1;break;

              case 0x0D:key=2;break;

              case 0x0B:key=3;break;

              case 0x07:key=4;break;

            }

          

        }

      

   }

  else

   {

     key=0xFF;        

   }

  return key;

 

//***********************************************************************

//     键值显示程序

//***********************************************************************

void LCD_DisplayKey(uchar keynum)

{    

  LCD_write_char(0x0e,1,0x30+keynum);

}

 

//*************************************************************************

// 主程序

//*************************************************************************

 

void main(void)

{     

  WDT_Init();                         //看门狗设置

  Clock_Init();                       //系统时钟设置

  Port_init();                        //系统初始化,设置IO口属性

  delay_ms(100);                      //延时100ms

  LCD_init();                         //液晶参数初始化设置

  LCD_clear();                        //清屏

  LCD_Desk();

  KeyPort_init();                     //按键IO口初始化,设置IO口属性

  delay_ms(100);                      //延时100ms

  while(1)

    {

      Key_Scan();                     //键盘扫描,看是否有按键按下

      if(key!=0xff)                   //如果有按键按下,则显示该按键键值1~4

        {

  {

            switch(key)

              {

        case 1: LED8 = 0xFC;LCD_DisplayKey(1);break;     //给不同的键赋键值,键值1,亮2个LED灯

                case 2: LED8 = 0xF3;LCD_DisplayKey(2);break;     //给不同的键赋键值,键值2,亮2个LED灯

                case 3: LED8 = 0xCF;LCD_DisplayKey(3);break; //给不同的键赋键值,键值3,亮2个LED灯

                case 4: LED8 = 0x3F;LCD_DisplayKey(4);break; //给不同的键赋键值,键值4,亮2个LED灯

              }

 

          }


       }

     else

      {

        //LED=key;              //没有按键的时候显示上次的键值

      }

    }

 

}

关键字:MSP430  输入输出接口  LED显示 引用地址:实验三:MSP430输入输出接口实验(2学时)

上一篇:实验四:MSP430定时器综合试验(2学时)
下一篇:实验二:MSP430简单程序设计

推荐阅读最新更新时间:2024-03-16 16:27

TI 超低功耗MSP430 MCU帮助CenTrak 优化对病人与设备跟踪水平
InTouch 电池供电的全新实时定位系统提高了效率,节省了成本,全面改进病人护理工作 2007 年 11 月 16 日,北京讯 日前,德州仪器 (TI) 宣布,CenTrak 公司(前身为 Remote Play 公司)推出基于TI MSP430 MCU 的 InTouch 实时定位系统 (RTLS),作为一种易于安装的高级系统,该产品能够对医护人员、病人及设备进行跟踪,从而实现了超低功耗控制与创新型远程通信的完美结合。全新 InTouch RTLS 采用 DualTrak 技术,这是一种结合射频与红外线 (IR) 通信的独特技术,能以精确至房间甚至更高的准确度定位人员与设备,从而能够帮助医院与其它医疗机构节省时间与成本,提
[新品]
MSP430串口接收控制LED
/********************************************** *程序描述:单片机的P3.4、P3.5作为串口接收字符,将接受到的字符再发送出去 *并且根据接受到的字符‘1’‘2’‘3’‘4’分别点亮LED1、LED2、LED3、LED4 P2.0- LED1 ,P2.1- LED2, P2.2- LED3 ,P2.3- LED4 *作者 :Zhenhua Liu *时间 :2017.11.02 18:00 ***********************************************/ #include msp430x14x.h void usartIni
[单片机]
LED显示屏维修的检测方法及步骤
   一、LED显示屏维修的检测方法   1、短路检测法,将万用表调到短路检测挡(一般具有报警功能,如导通则发出鸣叫声),检测是否有短路的现象出现,发现短路后应马上解决,短路现象也是最常见的LED显示屏模块故障。有的通过观察IC引脚和排针引脚就能发现。短路检测应在电路断电的情况下操作,避免损坏万用表。这个方法是最常用到的方法,简单、高效。90%的故障都可以通过这个方法检测判断。   2、电阻检测法,将万用表调到电阻档,检测一块正常的电路板的某点的到地电阻值,再检测另一块相同的电路板的同一个点测试与正常的电阻值是否有不同,若不同则就确定了问题的范围。   3、电压检测法,将万用表调到电压档,检测怀疑有问题的电路的某个点的到地电压,
[电源管理]
<font color='red'>LED显示</font>屏维修的检测方法及步骤
嵌入式RTOS在MSP430单片机上的实现
  随着信息社会的发展,信息家电、智能仪表和智能安保系统等产品已经越来越多地出现在人们的生活中。可以预见,为了满足人们对舒适、便捷、安全生活环境的需求,嵌入式信息产品的设计、应用将得到快速发展。   单片机作为嵌入式信息产品的一个重要应用方面,其使用、设计面临着全新的挑战。一方面,人们对嵌入式产品的要求越来越高,稳定可靠、功能丰富、物美价廉的信息产品将成为人们的首选。另一方面,随着微电子工艺水平的发展,单片机处理器的能力不断提高,从最初的8位单片机到16位,进而32位单片机,功能越来越强大,执行速度越来越快,集成度、精确度也越来越高,应用领域进一步拓宽。可以说,单片机芯片的性能已经能够满足现代人们对嵌入式信息产品的更高要求。为
[单片机]
如何选用合适的LED显示
  屏体尺寸设计   在设计屏体大小时,有三个重要的因素:    显示 内容的需要   场地空间条件    显示屏 单元模板尺寸(室内屏)或象素大小(户外屏)   普通 LED显示屏 的分辨率一般最大为768行×1024列。特殊显示屏可超出此限,常用办法是用两块屏来组合而成;另外就是用超高速芯片设计电路,但成本较高。 以下是室内屏的设计参考尺寸:   φ3.0mm的点间距是 4.00 mm,屏体最大尺寸约为: 2.0米(高)×3米   φ3.75mm的点间距是 4.75 mm,屏体最大尺寸约为: 2.5米(高)×4米   φ5.0mm的点间距是 7.62 mm,屏体最大尺寸约为: 3.7米 (高) ×6米   
[电源管理]
关于LED显示
   一、什么是 LED显示屏    LED 就是light emi tting diode,发光二极管的英文缩写,简称LED。它是一种通过控制 半导体 发光二极管的 显示 方式,其大概的样子就是由很多个通常是红色的发光二极管组成,靠灯的亮灭来显示字符。用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的 显示屏 幕。   LED显示屏(LED panel)分为数码显示屏、图文显示屏和视频显示屏,均由LED矩阵块组成。LED数码显示屏的显示器件为7段码数码管,适于制作 时钟 屏、利率屏等,显示数字的电子显示屏。 图文显示屏可与 计算机 同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂
[电源管理]
解析室外LED显示屏开关电源设计理念
  led显示屏的研究采用屏幕为8×8的点阵显示,侧重于动态处理方法,由于显示屏幕的局限性,在此次的研究设计中只能显示英文和数字。一个基本的led屏幕由8行×8列点共64个led组成,显示屏有共阴和共阳两种连接方式。对由8×8点阵构成的led显示屏而言,一般数据端连接微处理器的8位并行数据口,而选通端则逐一使能(选通),选择需要点亮的某一列,通过分时复用方式实现动态显示效果。选通方式一般有两种:独立选通和译码选通。   如果屏幕较小,处理器有足够的I/O口可用,则可以每个I/O口连接一个选通端,如果屏幕较大,或者处理器的I/O口不是非常丰富,则可以通过译码方式来选通。例如当8片8×8点阵的led组成一个8×128点阵的led屏幕时
[电源管理]
MSP430之枚举变量大小
一直都很好奇枚举变量到底是如何让占用存储空间的,网上好多文章都说是占用int字节的大小,但是今天测试了一下,发现不是那么回事。 操作系统:WIN7 64bit IDE:IAR 5.5 实验平台: MP430F4793 先说结论: 实际使用发现枚举变量的大小并不是固定不变的,而是跟随成员的取值范围而变化, 并且枚举变量为2个字节(正好是MSP430字节对齐的大小)时,存储占用反而变小。 下面是编译后的结果: 初始情况: 成员取值范围UINT8足以满足,所以是一个字节; 另外,增加成员并不会改变编译结果 给最后一个成员赋值65535: 此时,成员的取值范至少需要两个字节才能存储,所以可以看到枚举变量的大
[单片机]
<font color='red'>MSP430</font>之枚举变量大小
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved