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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1841|回復: 0
收起左側

CC2530超聲波測距程序

[復制鏈接]
ID:557970 發表于 2019-12-15 13:53 | 顯示全部樓層 |閱讀模式
/**************************************/
/*描述:超聲波HC-SR04實驗
**************************************/
//如果使用彩屏,請定義此宏
#define OLED_1331
#include <ioCC2530.h>
#ifdef OLED_1331
#include "LCD1331.h"
#else
#include "LCD.h"
#define uint unsigned int
#define uchar unsigned char
#endif
//定義控制LED燈的端口
#define LED1   P1_0         //定義LED1為P10口控制
#define LED2   P1_1         //定義LED2為P11口控制
#define LED3   P1_4         //定義LED3為P14口控制
#define Trig P0_4 //產生脈沖引腳
#define Echo P0_5 //回波引腳

uchar TxBuff[15]={0};
void UartTX_Send_String(uchar *Data,int len);
void PrintfDistance();
//函數聲明
void Delayms(uint);  //延時函數
void InitLed(void);  //初始化P1口
void KeyInit();                 //按鍵初始化
uchar KeyValue=0;
uchar outcomeH,outcomeL;   //記錄產生中斷時定時器1的計數值
uchar succeed_flag=0;  //測量成功標志  1:成功
/****************************
//延時函數
*****************************/
void Delayms(uint xms)   //i=xms 即延時i毫秒
{
    uint i,j;
    for(i=xms;i>0;i--)
        for(j=587;j>0;j--);
}
void MicroWait( int timeout )
{
  while (timeout--)
  {
    asm("NOP");
    asm("NOP");
    asm("NOP");
  }
}
void delay_20us(void) //20 us延時
{
   MicroWait(20);
}
/****************************
LED初始化程序
*****************************/
void InitLed(void)
{
    P1DIR = 0x13;           //P10 P11 P14為輸出
    LED1 = 1;       //LED1燈熄滅     
    LED2 = 1;       //LED2燈熄滅     
    LED3 = 1;       //LED3燈熄滅     
}
/****************************
KEY初始化程序--外部中斷方式
*****************************/
void InitKey()
{
    P0IEN |= 0X2;  //P01設置為中斷方式
    PICTL |= 0X2; // 下降沿觸發   
    IEN1 |= 0X20;   // 允許P0口中斷;
    P0IFG = 0x00;   // 初始化中斷標志位
    EA = 1;
}
void initClkTo32M()
{
    CLKCONCMD &= ~0x40;                          //設置系統時鐘源為32MHZ晶振
    while(CLKCONSTA & 0x40);                     //等待晶振穩定
    CLKCONCMD &= ~0x47;                          //設置系統主時鐘頻率為32MHZ
   
    //定時器使用32M時鐘
    CLKCONCMD &= ~0x3F;
      
}
/****************************
      中斷處理函數
*****************************/
#pragma vector = P0INT_VECTOR    //格式:#pragma vector = 中斷向量,緊接著是中斷處理程序
  __interrupt void P0_ISR(void)
{
    //P0_5產生中斷
    if((P0IFG&0x20)==0x20)
    {
        IEN1 &=~0X20;   // 關閉P0口中斷

        outcomeL =T1CNTL;    //取出定時器的值
        outcomeH =T1CNTH;    //取出定時器的值
        succeed_flag=1;   //置成功測量的標志  
        LED2=!LED2;
        LED1=1;
        
     //    UartTX_Send_String("P0_ISR\r\n", 7);
         PrintfDistance();
    }
    P0IFG = 0;             //清中斷標志
    P0IF = 0;             //清中斷標志
    LED3=!LED3;
}

部分代碼;

28.超聲波測距資料(HC-SR04).rar

647.6 KB, 下載次數: 37, 下載積分: 黑幣 -5

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: h肉视频 | 国产小u女发育末成年 | 国产精品久久久久久 | 性在线| 日韩成人免费在线视频 | 国产精品一区二区三区四区五区 | 亚洲精品美女视频 | 成人免费在线网 | 久久精品国产99国产精品 | 美女黄视频网站 | 久久亚洲国产精品日日av夜夜 | 在线观看视频中文字幕 | 欧美二区在线 | 亚洲精品自在在线观看 | 中文字幕人成乱码在线观看 | 亚洲成人免费视频在线观看 | 一区二区成人 | 久久久精品一区 | www免费视频 | 最新国产视频 | 精品日韩在线 | 亚欧精品 | 成人免费视频观看视频 | 国产999精品久久久久久绿帽 | 亚洲国产精品久久久 | 久草视频在线看 | 中文字幕 视频一区 | 成人在线国产 | 久久久九九九九 | 成人av一区 | 久久免费视频在线 | 久久久久久成人 | 亚洲精品一区在线观看 | 久久成人人人人精品欧 | 国产精品18hdxxxⅹ在线 | 999久久久久久久久6666 | 日韩国产免费观看 | 成人在线视频看看 | 免费一级黄色录像 | 中文字幕在线观看一区 | 欧美13videosex性极品 |