单片机作品论文 - 图文

更新时间:2024-07-07 00:45:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《单片机原理及应用》

作品名称:姓 名:学 号:学 期:

时间:作品报告

LED流水灯 凌 双 13200103 2014-2015学年第一学期 2015年 11月6日

题目名称:基于MSP430G2231实现的

摘 要

Code Composer Studio是MSP430开发环境,Code Composer Studio 包含一整套用于开发和调试嵌入式应用的工具。它包含适用于每个 TI 器件系列的编译器、源码编辑器、项目构建环境、调试器、描述器、仿真器以及多种其它功能。CCS IDE 提供了单个用户界面,可帮助我们完成应用开发流程的每个步骤。 。因此,是MSP430开发环境是进行MSP430开发必不可少的环节。主要原理是通过430单片机产生信号,控制一定数量的LED产生不同规律的变换,通过不同的程序,产生不同的循环,从而达到不同的变换效果。

一、 引言:

MSP430系列单片机与51系列单片机的比较:

首先,89C51单片机是8位单片机,其指令是采用的被称为“CISC”的复杂指令集,共具有111条指令。而MSP430单片机是16位的单片机,采用了精简指令集(RISC)结构,只有简洁的27条内核指令,大量的指令则是模拟指令;众多的寄存器以及片内数据存储器都可参加多种运算。这些内核指令均为单周期指令,功能强,运行的速度快。

其次,89C51单片机本身的电源电压是5伏,有两种低功耗方式:待机方式和掉电方式。正常情况下消耗的电流为24mA,在待机状态下,其耗电电流仍为3mA;即使在掉电方式下,电源电压可以下降到2V,但是为了保存内部RAM中的数据,还需要提供约500uA的电流。而MSP430系列单片机在低功耗方面的优越之处,则是89C51系列不可比拟的。正因为如此,MSP430系列单片机更适合应用于使用电池供电的仪器、仪表类产品中。

再者,89C51系列单片机由于其内部总线是8位的,其内部功能模块基本上都是8位,虽然经过各种努力其内部功能模块有了显著增加,但是受其结构本身的限制很大,尤其模拟功能部件的增加更显困难。MSP430系列其基本架构是16位的,同时在其内部的数据总线经过转换还存在8位的总线,在加上本身就是混合型的结构,因而对它这样的开放型的架构来说,无论扩展8位的功能模块,还是16位的功能模块,即使扩展像模/数转换或数/模转换这类的功能模块也是很方便的。这也就是为什么MSP430系列产品和其中功能部件迅速增加的原因。

最后,就是在开发工具方面。对于89C51来说,由于它是最早进入中国的单片机,人们对它再熟悉不过了,再加上我国各方人士的努力,创造了不少适合我们使用的开发工具。但是如何实现在线编程还是一个很大问题。对于MSP430系列而言,由于引入了FLASH型程序存储器和JTAG技术,不仅使开发工具变得简便,而且价格也相对低廉,并且还可以实现在线编程。

在运算速度方面,MSP430系列单片机能在8MHz晶体的驱动下,实现125us的指令周期。16位的数据宽度、125us的指令周期以及多功能的硬件乘法器(能实现乘加)相配合,能实现数字信号处理的某些算法(如FFT等)。MSP430系列单片机的中断源较多,并且可以任意嵌套,使用时灵活方便。当系统处于省电的备用状态时,用中断请求将它唤醒只需6us。

其主要特性如下: 1、超低功耗;

2、丰富的片上外围模块; 3、方便高效的开发环境; 4、适应工业级运行环境

二、系统框图

8路流水灯 MSP430 定时器模块 复位系统 流水灯系统框图

设计方案 :

要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在这个设计中,我们不只是单一的做向左运动或向右运动,V而是设计了三个模式,,因此我们在普通的流水灯基础上增加

了模式的选择功能一个数码显示管来显示模式编号。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。 该流水灯实验一共可分为3模块、定时器模块、复位电路模块、LED流水灯模块。 2.1 LED流水灯模块

要实现流水灯功能,我们只要将发光二极管LED1~LED10点亮、熄灭,10ED灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。且每一个LED灯于一个电阻串联。 2.3复位电路模块

这个模块主要进行复位操作。 2.4定时器模块

通过驱动芯片实现单片机I/O口对8个发光二极管的驱动。完成单片机定时器编程。

三、硬件部分:电路板图的设计主要分为两大部分:原理图设计部分和电路板图设计部分

(1)原理图设计

1)原理图设计环境设置

绘制原理图之前要先对设计环境进行设置,以使设计环境适合自己的设计习惯及设计要求。主要包括图纸设计大小、捕捉的栅格、电气自动捕捉栅格等。 2)放置元件 ,载入元件库后,从元件库中选择所需元件,放置在图纸上,并修改元件属性。 3)原理图布线

利用工具栏中的工具连接各元件的引脚,主要的连接方法包括导线和总线。 对绘制好的原理图进行电气规则检查,对原理图进行编译、查找并修正错误。 根据需要生成各种不同的报表,其中有网络表、元件报表等。 (2)电路板图设计 1)定义电路板

定义电路板主要包括电路板设计环境的设置和电路板边框的定义。只有 先定义了电路板才能放置元件封装和铜膜线等主要设计对象,否则无法进行后续工作。 2)调入网络表

由绘制好的原理图载入网络表文件,即将在原理图中的各元件及元件之间的关系载入到电路板图中,为后续工作做准备。 3)元件布局、布线

将载入的元件封装根据所需在电路板范围内排列好位置。对电路板进行布局和布线设计规则的设置,然后进行布线。最后再利用DRC(设计规则检查)检查整个电路板。

四、软件部分:

使用AD10进行原理图以及pcb图的制作。 流程图:

打开altium designer 创建新工程 创建元器件库 创建pcb库

原理图 Pcb图 导入PCB,板。布线,完成 流水灯原理图

五、调试结果及总结:

如果程序编写的正确,能够正确这行,就不用调试了,往往是发生错误,才用到调试程序的,程序的调试可以分为两种:模拟单片机执行指令的软件模拟调试,还有一种是硬件调试,需要配合计算机软件,需要将编好的程序配合计算机软件传输到仿真器中。

CCS软件,调试的过程通过反复的调试才能解决源程序中存在的其他错误,调试过程还包括全速执行和单步执行。 根据原理图的设计部分,运用CCS软件编写程序进行调试,其程序调试的结果如下图所示:

通过这次的作品考试,我们对单片机的了解更加深入,并且对实验中用到的元件作用、性能、工作方式等都有了更好的认识。更重要的是,我们在实验中收获到的做实验的好的习惯,例如,实验要2个人相互合作,配合默契,要充分发挥团队的力量,其次是,实验要求我们在做之前要把相关的知识彻底弄懂。还有就是,做实验时要认真仔细,程序上要考虑周到。这些不仅对实验有用,对我们在其他方面培养好的习惯也很有帮助。

附录:

PCB图:

关键代码:

#include

unsigned char zhangj[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff}; unsigned char jian[]={0x0e,0x0d,0x0b,0x07}; unsigned char ling[]={0x07,0x0b,0x0d,0x0e};

unsigned char shuang[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; void main() {

WDTCTL = WDTPW + WDTHOLD; P1DIR=0xff;

P2DIR=0xff; while(1) {

int i,s;

for(i=0;i<8;i++) {P2OUT=0xff;

_delay_cycles(100); }

for(i=0;i<8;i++)

{

P1OUT=zhu[i];

_delay_cycles(500000);

}

for(i=0;i<1;i++) {P1OUT=0xff;

_delay_cycles(100); } for(s=0;s<4;s++)

{P2OUT=xie[s];

_delay_cycles(500000); }

for(i=0;i<1;i++) {P1OUT=0x00; P2OUT=0x01;

_delay_cycles(500000); } for(i=0;i<8;i++)

{P2OUT=0xff;

_delay_cycles(100); }

for(s=0;s<4;s++)

{P2OUT=ying[s];

_delay_cycles(500000); }

for(i=0;i<8;i++)

{

P1OUT=lun[i];

_delay_cycles(5000); } for(i=0;i<1;i++)

{P1OUT=0x00; P2OUT=0x00;

_delay_cycles(5000); } for(i=0;i<1;i++)

{P1OUT=0xff; P2OUT=0xff;

_delay_cycles(5000); } for(i=0;i<1;i++)

{P1OUT=0x00; P2OUT=0x00;

_delay_cycles(5000); } for(i=0;i<1;i++)

{P1OUT=0xff; P2OUT=0xff;

_delay_cycles(5000); } for(i=0;i<1;i++)

{P1OUT=0x00; P2OUT=0x00;

_delay_cycles(5000); } for(i=0;i<1;i++)

{P1OUT=0xff; P2OUT=0xff;

_delay_cycles(5000); }}}

元器件:

实验所需元件清单: 品名 数值 数量 1k 10 电阻 10 LED灯 绿色,红色 1 MSP430开发板 LaaunchPad 30 杜邦线 1 单层铜板 5V 1 直流稳压电源 参考文献:

《MSP430系列超低功耗单片机原理与系统设计》 沈建华,杨艳琴编著 清华大学出版社 2008年

本文来源:https://www.bwwdw.com/article/2am.html

Top