资源简介
使用MSP430G2553单片机控制HC-SR04超声波模块,将测得的距离在Nokia-5110显示屏上显示出来。完整的CCS编译器下的工程文件,已经测试过,可以使用
代码片段和文件信息
//IAR Assembler for MSP430
// 5.30.1 (5.30.1.50284)
//
// BY: Elitezhe
// Southeast University
// School of Instrument and Engineering
// Launchpad + HCSR04超声模块 测距离
// 连接图:
// ACLK = n/a MCLK = SMCLK = 1MHZ
//
// MSP430F5438
// -----------------
// /|\| XIN|-
// | | |
// --|RST XOUT|-
// | |
// |P1.4 P2.5|-->LCD_RST
// | P2.4|-->LCD_CE
// | P2.3|-->LCD_DC
// | P2.2|-->LCD_DIN
// | P2.1|-->LCD_CLK
// | |
// | P1.4|-->Trig
// | P1.2|-->Echo
// | |
// | |
#include “msp430g2553.h“
#include “5110/nokia_5110.h“
#include “stdio.h“
#define TRIG BIT4
#define ECHO BIT2 //P1.1 DIR.0=0 + SEL.1=1 + SEL2.1=0 --> TA0.CCI0A
#define USOUND_DIR P1DIR
#define USONUD_OUT P1OUT
#define USOUND_IE P1IE
#define USOUND_IES P1IES
#define USOUND_SEL P1SEL
unsigned int capV = 0;
float distance;
void BCSplus_init(void);
char str[100];
int main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
BCSplus_init();
LCD_init();
LCD_clear();
LCD_write_english_string(00“USONIC DIS MEASURE“);
//sprintf(str “%x“ 255);
LCD_write_english_string(01“EliteZhe“);
LCD_write_english_string(02“-----------------“);
LCD_write_english_string(03“TIME:“);
LCD_write_english_string(04“DIST:“);
USONUD_OUT |= TRIG;
USOUND_DIR |= TRIG;
//USOUND_IES |= ECHO;
USOUND_SEL |= ECHO ; //CCI0A
while(1)
{
TA0CTL |= MC_2 + TASSEL_2 + TACLR; //计数 SMCLK 清计数
TA0CCTL1 |= CM_1 + CAP + SCS + CCIE + CCIS_0;//上升沿捕获 捕获模式 同步模式 使能中断 CCI0A
USONUD_OUT |= TRIG;
// _NOP();_NOP();_NOP();_NOP();_NOP();
// _NOP();_NOP();_NOP();_NOP();_NOP();
// _NOP();_NOP();_NOP();_NOP();_NOP();
__delay_cycles(200);
USONUD_OUT &= ~TRIG;
//_BIS_SR(LPM4_bits + GIE); // Enter LPM4 w/interrupt
while((TA0CCTL1 & CCIFG) ==0); //等待上升沿
TA0CTL &= ~MC_3; //清除MC_的两位否则 CM_1 | CM_2 = CM_3
TA0CTL |= MC_2 + TACLR; //连续计数 清除TA的计数值
TA0CCTL1 &= ~CCIFG; //清中断标志
TA0CCTL1 |= CM_2; //下降沿捕捉
while((TA0CCTL1 & CCIFG) ==0); //等待下降沿
capV = TA0CCR1; //得到计数器的值
distance = 1.12826e-3 * capV ;//计算距离
sprintf(str“%4x“capV);
LCD_write_english_string(303str);
sprintf(str“%.3f“distance);
LCD_write_english_string(304str);
TA0CCTL1 &= ~CCIFG; //清中断标志
unsigned int xy;
for(x=5000;x>0;x--)
for(y=500;y>0;y--);
}
return 0;
}
/****************************************
* ======== BCSplus_init ========
* Initialize MSP430 Basic Clock System
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-15 16:13 2553_超声测距\
文件 4292 2012-08-07 14:28 2553_超声测距\2553.dep
文件 20124 2012-08-04 09:39 2553_超声测距\2553.ewd
文件 50800 2012-08-04 09:43 2553_超声测距\2553.ewp
文件 158 2012-08-04 09:39 2553_超声测距\2553.eww
目录 0 2018-05-15 16:13 2553_超声测距\5110\
文件 480 2012-08-04 10:03 2553_超声测距\5110\demo.c
文件 18013 2012-08-04 10:01 2553_超声测距\5110\nokia_5110.c
文件 1107 2012-08-07 08:43 2553_超声测距\5110\nokia_5110.h
目录 0 2018-05-15 16:13 2553_超声测距\Debug\
目录 0 2018-05-15 16:13 2553_超声测距\Debug\Exe\
文件 37892 2012-08-07 14:19 2553_超声测距\Debug\Exe\2553.d43
目录 0 2012-08-04 09:38 2553_超声测距\Debug\List\
目录 0 2018-05-15 16:13 2553_超声测距\Debug\Obj\
文件 231 2012-08-07 14:18 2553_超声测距\Debug\Obj\2553.pbd
文件 4112 2012-08-07 09:46 2553_超声测距\Debug\Obj\demo.r43
文件 16445 2012-08-07 14:19 2553_超声测距\Debug\Obj\main.r43
文件 29971 2012-08-07 09:46 2553_超声测距\Debug\Obj\nokia_5110.r43
文件 4421 2012-08-07 15:06 2553_超声测距\main.c
文件 0 2012-08-07 14:19 2553_超声测距\path.txt
目录 0 2018-05-15 16:13 2553_超声测距\settings\
文件 1068 2012-08-07 14:26 2553_超声测距\settings\2553.cspy.bat
文件 5030 2012-08-07 14:28 2553_超声测距\settings\2553.dbgdt
文件 1313 2012-08-07 14:28 2553_超声测距\settings\2553.dni
文件 3571 2012-08-07 14:28 2553_超声测距\settings\2553.wsdt
- 上一篇:MSP430G2553使用IIC协议控制OLED显示屏
- 下一篇:稳定匹配算法实验
相关资源
- HC-SR04超声波测距模块及原理图
- 基于STC89C52的超声波测距防撞系统设计
- HC-SR04 超声波测距C51程序,精度2MM
- STC15/STC15F2K60S2/STC15W4K32S4系列读取超声
- 51单片机超声波测距数码管显示
- 51单片机超声波测距1602LCD显示
- 51单片机超声波测距HC-SR04程序
- 基于MSP430超声波测距系统的设计与开
- 单片机类超声波测距仪的设计
- stm32多路超声波模块测距多路定时器输
- 基于stm32的超声波测距
- 基于STM32F103ZET6的HCSR04的超声波测距并
- HC-SR04超声波测距模块+OLED12864显示
- 基于STM32和HC-SR04超声波测距模块范例
- 超声波测距的proteus
- STM32实现超声波测距
- 51单片机超声波测距及proteus仿真
- 基于MC9S12XS128的超声波测距代码
- 51单片机实现12864显示 超声波测距
- STM32超声波测距、OLED显示、蜂鸣器短
- 超声波测距上位机及其源码
- 基于AT89S52单片机超声波测距仪的设计
- 基于51单片机的超声波测距程序LCD16
- 基于msp430F149超声波测距离
- 基于MSP430F149的超声波测距测试程序(
- 超声波测距论文
- stm8的超声波测距源程序
- msp430f5529超声波测距 lcd显示
- 基于ZigBee的超声波测距
- 基于STM32F103C8T6核心板的超声波测距程
评论
共有 条评论