久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1917|回復: 8
打印 上一主題 下一主題
收起左側

超聲波模塊,我持續給trig口高電平,用萬用表去測echo口總為低電平是怎么...

[復制鏈接]
跳轉到指定樓層
樓主
ID:1022410 發表于 2022-4-28 15:23 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
求答,我用的是普中的板子
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:752974 發表于 2022-4-28 16:41 | 只看該作者
如果echo口輸出是脈沖的話,應該用示波器查看。
回復

使用道具 舉報

板凳
ID:161164 發表于 2022-4-28 18:54 | 只看該作者
因為Echo的高電平時間是微秒級別的
萬用表反應不過來
應該用邏輯分析議或示波器
回復

使用道具 舉報

地板
ID:1022951 發表于 2022-4-30 16:01 | 只看該作者
用示波器查看。
回復

使用道具 舉報

5#
ID:1022410 發表于 2022-5-2 09:50 | 只看該作者

哦哦,那請問一下,在串口發送數據時只有插拔送電才會出現數據,怎么回事啊,就是接vcc那條杜邦線只有碰一下超聲波的vcc端才會發送數據這是怎么回事啊?杜邦線直接插到超聲波vcc就不會發送數據了,trig高低脈沖轉換放到while里面和外面都沒用
回復

使用道具 舉報

6#
ID:161164 發表于 2022-5-2 14:40 | 只看該作者
歲晚 發表于 2022-5-2 09:50
哦哦,那請問一下,在串口發送數據時只有插拔送電才會出現數據,怎么回事啊,就是接vcc那條杜邦線只有碰 ...

哦哦,那請問一下,在串口發送數據時只有插拔送電才會出現數據,怎么回事啊,
出現什么數據?

就是接vcc那條杜邦線只有碰一下超聲波的vcc端才會發送數據這是怎么回事啊?
發送什么數據?

杜邦線直接插到超聲波vcc就不會發送數據了,
發送什么數據?

trig高低脈沖轉換放到while里面和外面都沒用
貼代碼

回復

使用道具 舉報

7#
ID:1022410 發表于 2022-5-2 20:43 | 只看該作者
lkc8210 發表于 2022-5-2 14:40
哦哦,那請問一下,在串口發送數據時只有插拔送電才會出現數據,怎么回事啊,
出現什么數據?

出現的是捕獲的高電平時間


回復

使用道具 舉報

8#
ID:1022410 發表于 2022-5-2 20:58 | 只看該作者
lkc8210 發表于 2022-5-2 14:40
哦哦,那請問一下,在串口發送數據時只有插拔送電才會出現數據,怎么回事啊,
出現什么數據?

出現的是捕獲高電平的時間


        while(1)
        {

                  GPIO_ResetBits(GPIOB,GPIO_Pin_5);
                        delay_us(30);
                        GPIO_ResetBits(GPIOB,GPIO_Pin_5);
               
                if(TIM_ICUserValueStructure.Capture_FinishFlag == 1)
                {
                        // 計算高電平時間的計數器的值
                        time = TIM_ICUserValueStructure.Capture_Period * (0xffff+1) +
                               (TIM_ICUserValueStructure.Capture_CcrValue+1);
                       
                        // 打印高電平脈寬時間
                        printf ( "\r\n測得高電平脈寬時間:%d.%d s\r\n",time/TIM_PscCLK,time%TIM_PscCLK );
                       
                        TIM_ICUserValueStructure.Capture_FinishFlag = 0;                       
                }       






void TIM4_IRQHandler(void)
{
        // 當要被捕獲的信號的周期大于定時器的最長定時時,定時器就會溢出,產生更新中斷
        // 這個時候我們需要把這個最長的定時周期加到捕獲信號的時間里面去
        if ( TIM_GetITStatus ( GENERAL_TIM, TIM_IT_Update) != RESET )               
        {       
                TIM_ICUserValueStructure.Capture_Period ++;               
                TIM_ClearITPendingBit ( GENERAL_TIM, TIM_FLAG_Update );                
        }

        // 上升沿捕獲中斷
        if ( TIM_GetITStatus (GENERAL_TIM, GENERAL_TIM_IT_CCx ) != RESET)
        {
                // 第一次捕獲
                if ( TIM_ICUserValueStructure.Capture_StartFlag == 0 )
                {
                        // 計數器清0
                        TIM_SetCounter ( GENERAL_TIM, 0 );
                        // 自動重裝載寄存器更新標志清0
                        TIM_ICUserValueStructure.Capture_Period = 0;
      // 存捕獲比較寄存器的值的變量的值清0                       
                        TIM_ICUserValueStructure.Capture_CcrValue = 0;

                        // 當第一次捕獲到上升沿之后,就把捕獲邊沿配置為下降沿
                        TIM_OC1PolarityConfig(GENERAL_TIM, TIM_ICPolarity_Falling);
      // 開始捕獲標準置1                       
                        TIM_ICUserValueStructure.Capture_StartFlag = 1;                       
                }
                // 下降沿捕獲中斷
                else // 第二次捕獲
                {
                        // 獲取捕獲比較寄存器的值,這個值就是捕獲到的高電平的時間的值
                        TIM_ICUserValueStructure.Capture_CcrValue =
                         TIM_GetCapture1 (GENERAL_TIM);

                        // 當第二次捕獲到下降沿之后,就把捕獲邊沿配置為上升沿,好開啟新的一輪捕獲
                        TIM_OC1PolarityConfig(GENERAL_TIM, TIM_ICPolarity_Rising);
      // 開始捕獲標志清0               
                        TIM_ICUserValueStructure.Capture_StartFlag = 0;
      // 捕獲完成標志置1                       
                        TIM_ICUserValueStructure.Capture_FinishFlag = 1;               
                }

                TIM_ClearITPendingBit (GENERAL_TIM,GENERAL_TIM_IT_CCx);            
        }               
}




回復

使用道具 舉報

9#
ID:1022410 發表于 2022-5-2 21:00 | 只看該作者
lkc8210 發表于 2022-5-2 14:40
哦哦,那請問一下,在串口發送數據時只有插拔送電才會出現數據,怎么回事啊,
出現什么數據?

現在主要我想弄清楚為什么那個串口不能連續接收到數據,只能碰一下接收一個,trig高低電平轉換放while里面外面都一樣
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91免费在线播放 | av片免费 | 在线免费观看视频你懂的 | 日本三级网 | 成人欧美一区二区三区在线播放 | 国产欧美精品一区 | 91精品国产综合久久福利软件 | 婷婷久久久久 | 国产一区二区在线免费观看 | 亚洲不卡在线视频 | 日韩精品在线观看网站 | 欧美精品一区二区三区四区五区 | 欧美日韩国产三级 | 日本成人中文字幕 | 福利网址| 精品视频在线观看 | 亚洲av一级毛片 | 日韩久久久久 | 欧美激情久久久 | 国产精品欧美一区二区三区不卡 | 日韩免费高清视频 | 国产三区视频在线观看 | 欧美男人亚洲天堂 | 国产精品国产三级国产aⅴ中文 | 福利片在线观看 | 亚洲淫视频 | 国产日韩精品久久 | 欧美在线a | 国产精品国产精品国产专区不片 | 91精品国产91久久久久久最新 | 啪一啪在线视频 | 黄色片在线看 | 欧美 日韩 亚洲91麻豆精品 | 久久久久国产精品 | 中文字幕蜜臀 | 亚洲成人二区 | 久综合 | 日日综合 | 国产欧美一级二级三级在线视频 | 成人性生交a做片 | 在线播放日韩 |