欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
請教 stm32控制激光測距儀模塊 串口通訊部分相關問題
[打印本頁]
作者:
Foyn__
時間:
2017-2-14 20:50
標題:
請教 stm32控制激光測距儀模塊 串口通訊部分相關問題
本人新手一只,剛接觸
單片機
一個多月,目前在做一個項目是做激光測距儀,于是在淘寶上淘到一激光測距模塊。
模塊的
波特率9600bps, 8位數據位,1位起始位,一位停止位,無奇偶校驗,買時自帶ttl轉USB串口
1.
我拿到模塊開始用電腦測試,用串口調試助手直接發送上電代碼,在發送單次測量即可返回測距距離的代碼(以后只發送單次測量代碼即可開始測量無需發送上電)
2.
隨后我將供電線,地線,rxd和txd分別接入單片機
開發板
上,確定供電無問題,將讀寫線直接接到單片機的數據讀寫串口,并燒入以下程序(第一部只是為了測試模塊在單片機控制下正常工作,所以沒有編寫寫入程序),但無法使模塊工作。
3.
已知程序中所編寫十六進制的數據能正常發送給上位機的串口調試助手。
以下程序為我使用串口發送激光模塊單次測距的命令的相關代碼:
(
參數為出廠設置時,讀取數據的命令:
單次測量:80 06 02 78
)
Usart.c中我定義了一個如下的簡單的發送數據函數:
void send_data_yhr(void)
{
USART_ClearFlag(USART2,USART_FLAG_TC);
USART_SendData(USART2, 0x80);
while( USART_GetFlagStatus(USART2,USART_FLAG_TC) == RESET);
delay_ms(200);
USART_SendData(USART2, 0x06);
while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);
delay_ms(200);
USART_SendData(USART2, 0x02);
while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);
delay_ms(200);
USART_SendData(USART2, 0x78);
while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);
delay_ms(200);
}
在Main.c中我對此函數進行了調用:
#include "main.h"
int main(void)
{
USART2_Configuration();
while(1)
{
send_data_yhr();
delay_ms(200);
}
}
在Delay.c里:
void delay_ms(unsigned int t)
{
int i;
for( i=0;i<t;i++)
{
int a=10300;
while(a--);
}
}
作者:
WINGTECH
時間:
2017-2-14 20:50
可以,
1, 每個模塊必須要有地址, 作為從機即可; 如果無法設置地址,則看下面
2, 自己用CD4052模擬開關, 將單片機的串口,通過該開關,動態切換.
作者:
冰糖雪梨
時間:
2017-3-29 20:16
樓主 弄懂了嗎 求指教啊
作者:
imxuheng
時間:
2017-3-29 21:14
能否說一下激光測距儀的型號?
作者:
zhf123456
時間:
2017-3-30 10:42
有可能是激光模塊的問題
作者:
liverpool
時間:
2017-6-11 17:21
請問一個單片機開發板能不能同時讀取三到四個激光測距儀的數據
作者:
yangning
時間:
2018-5-17 22:19
能否說一下激光測距儀的型號?
作者:
jerning
時間:
2018-5-17 23:37
同樣求指教
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1