亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 7290.c

?? 單片機輸出PWM波形電機驅動 mc338865
?? C
?? 第 1 頁 / 共 2 頁
字號:
/********************************************************************
//注意:
//1假設時鐘頻率為8MHz,指令周期為1/8us
  
********************************************************************/

#include  <msp430x16x.h>
#include "7290.h"
//#include"timedelay1.h"

/*狀態標志,全局變量*/

static uchar ack;	         		 //應答標志位,字符型



/*******************************************************************
                     延時函數
功能:延時>5us

********************************************************************/
void Delay5_I2C(void)
{
		uchar i;
		for(i=0;i< 25;i++);		//for(i=0;i< 25;i++);
}

/*******************************************************************
功能:延時>2us
********************************************************************/
void Delay2_I2C(void)
{
		uchar i;
		for(i=0;i< 10;i++);		//for(i=0;i< 10;i++);
}

/*************************************************************************

*************************************************************************/
void delayMS(unsigned char i)
{
	unsigned char j,k;
	for(k=0;k<i;k++)
		for(j=0;j<60;j++);
}



/******************************************************************
                     起動總線函數
函數原型: void  Start_I2c();
功能:啟動I2C總線,即發送I2C起始條件.

********************************************************************/
void Start_I2c(void)
{

  SDA_OUT;		//端口方向設置
  SCL_OUT;

  SDA_HIGH;         	//發送起始條件的數據信號
  Delay2_I2C();
  SCL_HIGH;
  Delay5_I2C();     	//起始條件建立時間大于4.7us,延時
  SDA_LOW;          	//發送起始信號
  Delay5_I2C();
  SCL_LOW;             	//鉗住I2C總線,準備發送或接收數據
  Delay2_I2C();
}

/*******************************************************************
                      結束總線函數
函數原型: void  Stop_I2c();
功能:       結束I2C總線,即發送I2C結束條件.

********************************************************************/
void Stop_I2c(void)
{	
	SDA_OUT;	//端口方向設置
  SCL_OUT;
SCL_LOW;   /***     ***/
Delay2_I2C();
  SDA_LOW;          	//發送結束條件的數據信號
  Delay2_I2C();        	//發送結束條件的時鐘信號
  SCL_HIGH;         	//結束條件建立時間大于4μs
  Delay5_I2C();
  SDA_HIGH;    	        //發送I2C總線結束信號
  Delay5_I2C();
}

/*******************************************************************
                 字節數據傳送函數
函數原型: void  SendByte_I2c(uchar c);
功能:  將數據c發送出去,可以是地址,也可以是數據,發完后等待應答,并對
       此狀態位進行操作.(不應答或非應答都使ack=0 假)
     ack=1 表示發送數據正常;
     ack=0 表示被控器無應答或損壞。
********************************************************************/

void  SendByte_I2c(uchar c)
{
 uchar BitCnt;
 SDA_OUT;				//端口方向設置
 SCL_OUT;

 for(BitCnt=0;BitCnt<8;BitCnt++)   	//要傳送的數據長度為8位
    {
     if((c<<BitCnt)&0x80) SDA_HIGH;    	//判斷發送位
       else  SDA_LOW;
     Delay2_I2C();
     SCL_HIGH;                  	//置時鐘線為高,通知被控器開始接收數據位
     Delay5_I2C();
     SCL_LOW;
    }

    Delay2_I2C();
    SDA_HIGH;                 		//8位發送完后釋放數據線,準備接收應答位
    Delay2_I2C();
    SCL_HIGH;
    SDA_IN;				//改變SDA方向為輸入
    Delay2_I2C();


    if(RSDA)	ack=0;
       else ack=1;         		//判斷是否接收到應答信號
    SCL_LOW;
    Delay2_I2C();
}






/*******************************************************************
                 字節數據傳送函數
函數原型: uchar  RcvByte_I2c();
功能:  用來接收從器件傳來的數據,并判斷總線錯誤(不發應答信號),
     發完后請用應答函數。
********************************************************************/	
uchar  RcvByte_I2c(void)
{
  uchar retc;
  uchar BitCnt;

  retc=0;
  SDA_OUT;				//端口方向設置
  SCL_OUT;
	
  SDA_HIGH;                      	//釋放數據線,等待輸入
  SDA_IN;				//引腳輸入
  for(BitCnt=0;BitCnt<8;BitCnt++)
      {
        Delay2_I2C();
        SCL_LOW;              	//置時鐘線為低,準備接收數據位
        Delay5_I2C(); 		//>4.7us延時等待發送方的數據就緒
        SCL_HIGH;             	//置時鐘線為高使數據線上數據有效
        Delay5_I2C();
        retc=retc<<1;
        if(RSDA) retc=retc+1;   //讀數據位,接收的數據位放入retc中
        Delay2_I2C();
      }
  SCL_LOW;
  Delay2_I2C();
  return(retc);
}




/********************************************************************
                     應答子函數
原型:  void Ack_I2c(uchar a);

功能:主控器進行應答信號,(可以是應答或非應答信號)
********************************************************************/
void Ack_I2c(uchar a)
{
  SDA_OUT;				//端口方向設置
 	SCL_OUT;
 	
  if(a==0)	SDA_LOW;     		//在此發出應答或非應答信號
  else SDA_HIGH;
  Delay5_I2C();
  SCL_HIGH;
  Delay5_I2C();
  SCL_LOW;                		//清時鐘線,鉗住I2C總線以便繼續接收
  Delay2_I2C();
}






/*******************************************************************
                    向無子地址器件發送字節數據函數
函數原型: uchar  ISendByte_I2c(uchar sla,ucahr c);
功能:     從啟動總線到發送地址,數據,結束總線的全過程,從器件地址sla.
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結束總線。
********************************************************************/
uchar ISendByte_I2c(uchar sla,uchar c)
{
   Start_I2c();               	//啟動總線
   SendByte_I2c(sla);            	//發送器件地址
     if(ack==0)return(0);
   SendByte_I2c(c);               	//發送數據
     if(ack==0)return(0);
  Stop_I2c();                 	//結束總線
  return(1);
}








/*******************************************************************
                    向無子地址器件讀字節數據函數
函數原型:uchar  IRcvByte_I2c(uchar sla,uchar *c);
功能:     從啟動總線到發送地址,讀數據,結束總線的全過程,從器件地
          址sla,返回值在c.
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結束總線。
********************************************************************/
uchar IRcvByte_I2c(uchar sla,uchar *c)
{	
   Start_I2c();			/*啟動總線*/
   SendByte_I2c(sla+1);           	/*發送器件地址*/
     if(ack==0)return(0);
   *c=RcvByte_I2c();               	/*讀取數據*/
     Ack_I2c(1);               	/*發送非就答位*/
  Stop_I2c();                  	/*結束總線*/
  return(1);
}









/*********************************************************************************************************
** 函數名稱: 	ZLG7290_SendData
** 功能描述: 	發送數據
** 輸 入:SubAdd :	輸入數據
**       DATA 	:	輸入值
**
** 輸 出: 0 : Fail
**        1 :  OK
** 全局變量:	無
** 調用模塊: 	delayMS
********************************************************************************************************/

unsigned char ZLG7290_SendData(unsigned char SubAdd,unsigned char Data)
{
	if(SubAdd>0x17)
		return 0;


	ISendStr(zlg7290,SubAdd,&Data,1);


	delayMS(10);
	return 1;
}
/*********************************************************************************************************
** 函數名稱: 	ZLG7290_SendCmd
** 功能描述: 	發送命令(對子地址7、8)
** 輸 入:DATA1  :	命令1
**        DATA2 	:	命令2
**
** 輸 出: 0 : Fail
**        1 :  OK
** 全局變量:	無
** 調用模塊: 	ISendStr、delayMS
**
********************************************************************************************************/

unsigned char ZLG7290_SendCmd(unsigned char Data1,unsigned char Data2)
{
unsigned char Data[2];
	Data[0]=Data1;
	Data[1]=Data2;
	ISendStr(zlg7290,0x07,Data,2);
	delayMS(10);
	return 1;
}
/*********************************************************************************************************
** 函數名稱: 	ZLG7290_SendBuf
** 功能描述: 	向顯示緩沖區發送數據
** 輸 入: * disp_buf  	:	要發送數據的起始地址
**         num 		:	發送個數
**
** 輸 出: 無
** 全局變量:	無
** 調用模塊: 	ZLG7290_SendCmd
**
********************************************************************************************************/
void ZLG7290_SendBuf(unsigned char * disp_buf,unsigned char num)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品久久7777| 欧美在线免费播放| 精品国产一区二区三区不卡| 亚洲国产精品久久久久婷婷884 | 亚洲一区二区精品久久av| 在线免费不卡电影| 国产精品久久看| 一区二区三区国产豹纹内裤在线| 国内久久婷婷综合| 久久精品网站免费观看| 激情都市一区二区| 中文字幕中文字幕在线一区| 一本大道久久a久久综合婷婷 | 麻豆91在线看| 日韩西西人体444www| 美女诱惑一区二区| 久久色在线观看| 国产成人精品三级| 亚洲精品欧美二区三区中文字幕| 色久综合一二码| 日韩av高清在线观看| 久久只精品国产| 国产九色精品成人porny| 亚洲色欲色欲www| 在线视频一区二区三| 久久国产人妖系列| 欧美激情一区二区三区蜜桃视频| 99精品国产热久久91蜜凸| 性做久久久久久免费观看欧美| 日韩亚洲欧美一区| 91美女视频网站| 视频精品一区二区| 欧美激情一区二区在线| 欧美在线小视频| 亚洲午夜私人影院| 国产精品福利av| 欧美日韩一区 二区 三区 久久精品 | 亚洲成人午夜电影| 在线观看亚洲精品视频| 久久激情五月激情| 亚洲综合丝袜美腿| 日韩精品一区二区三区四区| 日本精品裸体写真集在线观看| 日韩国产精品大片| 久久精品免费在线观看| 欧美日本视频在线| 成人一道本在线| 韩国三级中文字幕hd久久精品| 中文字幕一区免费在线观看| 9191国产精品| 91啪亚洲精品| 久久精品国产99国产精品| 亚洲成在人线免费| 国产精品系列在线| 欧美久久久久久久久| 色域天天综合网| 精品一区二区日韩| 日韩黄色一级片| 亚洲视频每日更新| 日韩一区二区三区电影在线观看| 欧美在线制服丝袜| 丁香六月久久综合狠狠色| 国产一区二区91| 午夜欧美在线一二页| 精品三级av在线| 日韩欧美高清一区| 欧美三级视频在线观看| 色久优优欧美色久优优| 国产成人精品午夜视频免费| 亚洲人午夜精品天堂一二香蕉| 久久精品人人做人人爽97| 3atv一区二区三区| 欧美日韩黄视频| 91丨九色丨黑人外教| 日一区二区三区| 日日夜夜一区二区| 亚洲一区二区三区四区的| 亚洲黄色免费电影| 日韩毛片视频在线看| 1区2区3区精品视频| 久久久久久久久岛国免费| 欧美一区二区在线免费观看| 91精品一区二区三区在线观看| 色综合婷婷久久| 91国在线观看| 日本精品裸体写真集在线观看| k8久久久一区二区三区| 91论坛在线播放| 不卡av在线网| 欧美性xxxxxx少妇| 91极品视觉盛宴| 91麻豆免费观看| 欧美日韩在线播| 欧美人与禽zozo性伦| 日韩小视频在线观看专区| 欧美一区二区成人| 制服丝袜在线91| 91麻豆精品国产91久久久资源速度| 欧美视频你懂的| 欧美视频精品在线观看| 在线不卡欧美精品一区二区三区| 色偷偷久久人人79超碰人人澡| 欧美三级资源在线| 欧美一区二区美女| 中文字幕av不卡| 亚洲欧美色一区| 日产国产高清一区二区三区 | 中文字幕 久热精品 视频在线 | 亚洲成人你懂的| 另类调教123区 | 国产在线观看一区二区| 成人av手机在线观看| 色综合久久99| 精品裸体舞一区二区三区| 久久久久久久久久看片| 亚洲美女偷拍久久| 蜜桃91丨九色丨蝌蚪91桃色| 亚洲国产精品一区二区www| 狠狠色狠狠色综合| 成人看片黄a免费看在线| 欧美日韩一区不卡| 久久日韩精品一区二区五区| 亚洲三级久久久| 蜜臀久久久久久久| 国产成人av福利| 欧美日韩一级片网站| www国产亚洲精品久久麻豆| 亚洲美女免费在线| 免费在线欧美视频| va亚洲va日韩不卡在线观看| 欧美日韩一区二区三区不卡| 久久亚洲精精品中文字幕早川悠里| 国产精品欧美一区喷水| 亚洲va欧美va人人爽| 成人av在线播放网站| 日韩一级成人av| 国产视频911| 老鸭窝一区二区久久精品| 国产69精品久久久久777| 欧美一级国产精品| 中文字幕在线观看不卡| 国产福利精品导航| 91麻豆精品国产91久久久使用方法| 亚洲欧洲av在线| 精一区二区三区| 色综合久久中文综合久久97| 亚洲国产精华液网站w| 五月天久久比比资源色| 在线影院国内精品| 国产偷v国产偷v亚洲高清| 免费成人你懂的| 欧美优质美女网站| 26uuu精品一区二区| 美女一区二区三区在线观看| 99国产精品久久久久| 精品国产乱码久久久久久牛牛 | 亚洲国产成人av网| 久久精品99国产精品| 欧美午夜宅男影院| 亚洲视频免费观看| 懂色av噜噜一区二区三区av| 久久久亚洲精品一区二区三区| 亚洲最大成人网4388xx| 色播五月激情综合网| 中文字幕精品一区二区三区精品| 国产一区二区在线看| 51精品秘密在线观看| 亚洲精品免费看| 91蝌蚪porny成人天涯| 国产亚洲欧美日韩俺去了| 顶级嫩模精品视频在线看| 日韩欧美国产成人一区二区| 精品无人码麻豆乱码1区2区 | 国产精品伊人色| 欧美精品一区二区三区很污很色的| 天天av天天翘天天综合网色鬼国产| 欧美视频完全免费看| 亚洲综合成人网| 欧美日韩黄色影视| 三级成人在线视频| 91精品国产综合久久婷婷香蕉| 婷婷综合五月天| 欧美猛男gaygay网站| 日本sm残虐另类| 91精品国产综合久久精品| 美女视频免费一区| 日韩欧美亚洲一区二区| 国产一区二区电影| 精品理论电影在线观看| 国产高清精品网站| 日本一区二区免费在线 | 国产成人精品1024| 中文字幕av不卡| 欧美色老头old∨ideo| 亚洲一区二区在线免费看| 日韩一区二区在线观看视频播放| 日韩综合在线视频| 日韩欧美www| 国产精品一二三在| 亚洲国产精品精华液2区45|