430单片机实验报告.docxVIP

  • 154
  • 0
  • 约1.17万字
  • 约 20页
  • 2017-05-21 发布于浙江
  • 举报
430单片机实验报告

430单片机实验报告 题 目 430单片机实验报告 学院(部) 信息工程学院 专 业 指导教师 学号姓名 同组成员 二〇一六年五月 实验一 LED流水灯实验 实验名称 LED流水灯实验 实验目的 1.掌握IAR 开发环境的使用方法; 2.练习IO端口寄存器的设置;练习时钟部分的配置 实验要求 1、制作相应的外围电路。要求用单片机的P1口连接8个发光二级管,当相应的IO口输出为高电平时发光二极管发光。 配置时钟部分。启用单片机内部自带的DCO为系统主时钟,并设置MCLK的频率为1.048MHz;选用SMCLK为定时器的时钟,其频率SMCLK=MCLK;在此基础上利用定时器每1s产生一次中断。 流水灯部分。配置IO口相关寄存器;开启定时器中断,在中断程序内实现8个发光二极管的循环顺序点亮,即流水灯功能。 实验步骤与内容 1、建立工程 2、编写程序,编译、运行 3、把程序下载到单片机中 4、程序代码: #include msp430g2452.h int i=0; void main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT //P1SEL |= 0x06; // P1.1 - P1.2 option select P1DIR |= BIT0+BIT6; // P1.0 - P1.2 outputs P1SEL|= 0x00; P1OUT= BIT0; CCR0=20000; CCTL0 = CCIE; // CCR0 toggle, interrupt enabled TACTL = TASSEL_2 + MC0 +TACLR; // SMCLK, Contmode, int enabled _BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt } // Timer A0 interrupt service routine #pragma vector=TIMER0_A0_VECTOR __interrupt void Timer_A0 (void) { // CCR0 += 65533; //CCR0 += 65533; // Add Offset to CCR0 i=i+1; if(i==50) { P1OUT^=BIT0; P1OUT^=BIT6; i=0; } } 实验设备 计算机、 IAR-FET集成开发环境、MSP430G2553 单片机 问题分析 改变延时常数,使两个发光二极管闪亮频率改变; 修改程序,使发光二极管流水闪烁。 实验二 4X4矩阵键盘和数码管显示实验 实验名称 4X4矩阵键盘和数码管显示实验 实验目的 掌握复杂C 430程序的调试方法,熟练IAR 开发环境的使用方法; 实验要求 1、制作相应的外围电路。要求用单片机的P1口连接4X4矩阵键盘,P2口驱动一个共阴极的LED八段数码管。 2、编写键盘扫描程序和显示程序。要求用IO口的中断方式来实现对按键的检测,利用数码管显示键值。 实验步骤与内容 1、建立工程 2、编写程序,编译、运行 3、把程序下载到单片机中 4、程序代码: #includemsp430g2553.h unsigned char key_val; //存放键值; void ctrlkey(unsigned char sw);//控制键盘开关,sw=0关,sw=1开 void init_keyboard(void) { P1DIR=0X0f; //p1.4-p1.7设置为输出状态, P1OUT=0x00; //设置p1.0-p1.3输出全部为0 P1IES=0Xf0; //p1.4-p1.7下降沿触发中断; P1IE=0Xf0;

文档评论(0)

1亿VIP精品文档

相关文档