標(biāo)題:
STM32超聲波測距源程序(12864實(shí)時顯示距離)
[打印本頁]
作者:
daningmeng
時間:
2018-7-24 11:19
標(biāo)題:
STM32超聲波測距源程序(12864實(shí)時顯示距離)
該文件采用12864實(shí)時顯示超聲波測距的距離,超聲波的最大顯示距離為4米,精度可根據(jù)實(shí)際調(diào)節(jié)
單片機(jī)源程序如下:
/***********************************************/
//實(shí)驗(yàn)名稱:超聲波傳感器實(shí)驗(yàn)
//接線說明:超聲波模塊的J2口接核心板的P3接口。
//實(shí)驗(yàn)現(xiàn)象:液晶上顯示當(dāng)前距離。
/***********************************************/
#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "led.h"
#include "12864.h"
#include "timer.h"
#include "exti.h"
#define CSB_TX PAout(8) // PA8 發(fā)送超聲波引腳
#define BEEN PAout(10)
// 變量
u32 status=0; // 計(jì)數(shù)值
char s2[10],s1[10]; // LCD顯示緩存數(shù)組
u32 real_time; // 讀回值
float dis; // 距離計(jì)算值
u8 distance[7] = {0};
void tran(void); // 左發(fā)生超聲波函數(shù)
void DisplayDis(float value);
void Display(u8 Pos);
int main(void)
{
Stm32_Clock_Init(9); // 系統(tǒng)時鐘設(shè)置
delay_init(72); // 延時初始化
uart_init(72,9600); // 串口初始化
Timerx_Init(10,71); // 1Mhz的計(jì)數(shù)頻率,計(jì)數(shù)到10為10us
Init_12864(); // 液晶初始化
EXTIX_Init(); // 外部中斷初始化
while(1)
{
tran();
if(dis<10 && dis!=0)
BEEN=1;
else
BEEN=0;
if(dis>80)
dis=0;
DisplayDis( dis * 10 );
dis=0; //無物體
LED0=!LED0; //指示燈閃爍
delay_ms(300);
}
}
// 左發(fā)生超聲波函數(shù)
void tran(void)
{
u8 i;
TIM3->CR1|=0x01; // 使能定時器3
TIM3->SR&=~(1<<0); // 清除中斷標(biāo)志位
status = 0; // 定時器清零
for(i=0;i<8;i++) // 發(fā)送信號
{
CSB_TX = 1;
delay_us(12);
CSB_TX = 0;
delay_us(12);
}
delay_ms(10);
}
//
void DisplayDis(float value)
{
u32 val = (u32)value;
distance[0] = (val / 100) + 48;
distance[1] = (val % 100) /10 + 48;
distance[2] = '.';
distance[3] = val % 10 + 48;
distance[4] = ' ';
distance[5] = 'c';
distance[6] = 'm';
Display(0x9C);
}
//****************************************
//顯示子程序
//****************************************
void Display(u8 Pos)
{
u8 i;
write_12864com(Pos);
for(i=7;i>0;i--)
{
write_12864data(distance[7-i]);
delay_us(10);
}
}
復(fù)制代碼
所有資料51hei提供下載:
超聲波 12864顯示.rar
(327.07 KB, 下載次數(shù): 154)
2018-7-24 11:18 上傳
點(diǎn)擊文件名下載附件
超聲波測距
下載積分: 黑幣 -5
作者:
xiaomaer
時間:
2019-10-29 09:07
怎么下載下來是空文件呢
作者:
xiaomaer
時間:
2019-10-30 17:15
定義接口時(1<<4)代表什么呢?
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1