资源简介
基于msp430的超声波测距的程序,大家可以参考。
代码片段和文件信息
#include
#include“1602.h“
#define uchar unsigned char
#define uint unsigned int
#define CPU_F ((double)8000000)
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))
extern unsigned char table[];
extern unsigned char table2[];
extern unsigned char table1[4];
uint num;
void delay( int n)
{
unsigned int ij;
for(i=0;i for(j=0;j<530;j++);
}
void IO_1602_init()
{
P4DIR&=0X00;
P4DIR|=0XFF; //P4设置为输出
P5DIR&=0X00; //P5.6 RW 为0 写
P5DIR|=0XFF; //P5初始状态设置为输出低电平
P5OUT&=0X00;
//P3DIR|=0XFF; //P3输出
//P1DIR|=0Xf0; // 1111 0000 P1.0~P1.3作为键盘输入检测
//P1SEL|= 0xf0; // 1111 0000 P14~P1.7作为复用IO口
}
void write_com(unsigned char com) //命令
{
P5OUT&=0xDF; //选择写命令 P5.5=0 & 1101 1111 RS=0
delay(10);
P5OUT|=0x80; //使能信号 P5.7=1 |1000 0000 EC=1
P4OUT=com; //P4口为数据口
delay(10);
P5OUT&=0x00; //关闭使能信号
}
void write_data(int date) //数据
{
P5OUT|=0x20; //选择写数据 P5.5=1 |0010 0000 RS=1
delay(10);
P5OUT|=0x80; //使能信号 P5.7=1 |1000 0000 EC=1
P4OUT=date;
delay(10);
P5OUT&=0x00; //关闭使能
}
void init()
{
write_com(0x38); //00111000 设置16*2显示,5*7点阵 8为数据接口
write_com(0x0c); //00001100 设置开显示,不显示光标
write_com(0x06); // 00000110 写一个字符后地址指针加 1
write_com(0x01); //00000001 显示清0,数据指针清零 /* */
}
void yj1602() //液晶控制
{
init();
delay(50);
write_com(0x80); //1000 0000+0100 0000
for(num=0;num<14;num++)
{
write_data(table[num]);
delay_ms(10);
}
write_com(0x80+0x40+7); //1000 0000+0100 0000
for(num=14;num<16;num++)
{
write_data(table[num]);
delay_ms(10);
} }
void num_show(uchar sint string)
{
int abcd; //mn
a=string/1000; //AD的千位
b=string/100-10*a; //AD的百
c=string%100/10; //AD的十位
d=string%10; // AD的个位
table1[3]=table2[d];
table1[2]=table2[c];
table1[1]=table2[b];
table1[0]=table2[a];
write_com(0x80+0x40+s);
for(num=0;num<4;num++)
{
write_data(table1[num]);
delay_ms(30);
}
}
void show_xiaoshu(float n)
{ int a1a2a3a4;
float m;
a1=(int)(n); //a1为整数部分 13
m=n-a1; //m为小数部分 0.678
a2=a1%10; //a2为个位 3
a1=a1/10; //a1为十位 1
a3=(int)(m*10); //a2为小数点后第1位 6
a4=(int)((m*100)-10*a3); //a3为小数点后第一位 6
delay_ms(10);
write_com(0x80+0x40+2);
write_data(table2[a1]);
delay_ms(10);
write_com(0x80+0x40+3);
write_data(table2[a2]);
delay_ms(10);
write_com(0x80+0x40+5);
write_data(table2[a3]);
delay_
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-07-26 16:38 我的超声波测距程序\
文件 3259 2012-07-20 18:24 我的超声波测距程序\1602.c
文件 303 2012-07-20 18:24 我的超声波测距程序\1602.h
文件 599 2012-07-20 18:24 我的超声波测距程序\csb.c
文件 357 2012-07-20 18:24 我的超声波测距程序\csb.h
文件 4584 2012-07-26 16:38 我的超声波测距程序\csbcj.dep
文件 47892 2012-07-21 20:08 我的超声波测距程序\csbcj.ewp
文件 159 2012-07-20 18:24 我的超声波测距程序\csbcj.eww
目录 0 2012-07-20 18:24 我的超声波测距程序\Debug\
目录 0 2012-07-20 18:24 我的超声波测距程序\Debug\Exe\
文件 41253 2012-07-21 20:08 我的超声波测距程序\Debug\Exe\csbcj.ad4
文件 23369 2012-07-20 18:24 我的超声波测距程序\Debug\Exe\csbcj.d43
文件 21393 2012-07-20 18:24 我的超声波测距程序\Debug\Exe\csbcj.txt
目录 0 2012-07-20 18:24 我的超声波测距程序\Debug\List\
目录 0 2012-07-26 16:38 我的超声波测距程序\Debug\Obj\
文件 514 2012-07-26 16:38 我的超声波测距程序\Debug\Obj\1602.pbi
文件 26105 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\1602.r43
文件 512 2012-07-26 16:38 我的超声波测距程序\Debug\Obj\csb.pbi
文件 5473 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\csb.r43
文件 308 2012-07-26 16:38 我的超声波测距程序\Debug\Obj\csbcj.pbd
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW1071.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW1082.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW10DF.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW11CD.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW12D1.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW13C8.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW1581.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW15D3.r43
文件 867 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW1637.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW17A4.r43
文件 852 2012-07-20 18:24 我的超声波测距程序\Debug\Obj\EW17CC.r43
............此处省略265个文件信息
- 上一篇:DDos工具 trinoo.tar
- 下一篇:一份网站开发标准合同
相关资源
- stm32 超声波测距程序
- 红外测距程序可以试下
- TDC-GP2在时差法激光测距中对应用
- stm32f4温度补偿超声波测距
- CX20106超声波测距
- 基于STC89C52RC的超声波测距系统设计
- TDC-GP2激光测距应用
- 基于单片机的超声波测距毕业设计论
- 蓝桥杯第十四个程序超声波测距.rar
- 测距雷达距离模糊的两种快速算法
- 电缆故障测距仿真
- LCD12864串行显示DS18B20温度和超声波测
- 多频连续波二次相差法测距
- VL53L0X测试历程
- CTD107蓝桥杯555方波计数器&&超声波测距
- qt_opencv_zbar20181218二维码测距和识别检
- 雷达测量精度和分辨力
- GY530-VL53L0X ARDUINO激光测距代码
- 超声波测距模块的Verilog代码
- STM32超声波测距程序
- STM32F103驱动三个超声波模块,串口屏
- CC2530+HCSR04超声波测距
- STM32_vl53l0x 激光 测距
- SICK—LMS400激光传感器测距程序
- 单片机激光相位测距仪原理图
- 超声波测距资料 超声波测距资料
- 超声波 测距 模块 原理图 PCB
- 51单片机多个超声波测距
- 基于HC-SR04超声波测距LCD12864显示源码
- MSP430G2*单片机利用HC-SR04测距
评论
共有 条评论