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

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

?? lm75.c

?? this document is source code for arm9 of atmel
?? C
字號:
/*-----------------------------------------------------------------------------
*         ATMEL Microcontroller Software Support  -  ROUSSET  -
*------------------------------------------------------------------------------
* The software is delivered "AS IS" without warranty or condition of any
* kind, either express, implied or statutory. This includes without
* limitation any warranty or condition with respect to merchantability or
* fitness for any particular purpose, or against the infringements of
* intellectual property rights of others.
*------------------------------------------------------------------------------
* File Name           : lm75.c
* Object              : lm75 Temp Sensor routines.
*                     :
* Version | mm | dd | yy | author :
*  1.0      05   16   06    PFi   : Creation
*
*------------------------------------------------------------------------------
* 1)Description:
*
* The functions below shows how to communicate with the LM75 Digital 
* Temperature Sensor from National Semiconductor connnected on the TWI port.
*
* The registers of the LM75 are configured by default to access the temperature 
* register.
*
* 2)Configuration and pins used in this example:
*
* ------| AT91 / IO  | LM75 / IO
* CLOCK | TWCK / PA3 | SCL / 1
* DATA  | TWD / PA4  | SDA / 2
*
* LM75 I2C slave address:
* Therefore, the complet slave address is:
* | 1 | 0 | 0 | 1 |A2 |A1 |A0 |
* |MSB| - | - | - | - | - |LSB|
* |    Internal   | External  |
* - External address pins (A0,A1,A2 = 1)
*
* ---------------
* * WARNINGS ** :
* ---------------
* The functions below does includes timeout loop in case of a bad read or write access.
* It does not check if write access have been correctly written into the registers
*
* 3) Remarks:
*
* This example runs in polling mode.and makes no use of IRQs. To have further details
* and implementation example about using IRQs, refer to any Interrupt project examples,
* like AT91SAM7S64-Interrupt-IAR4_XX-X_X
* available on www.at91.com --> KIT --> AT91SAM7S-EK --> Software
*
***************************************************************************************/

/* Include Standard LIB  files */
#include "project.h"
#include "..\common\init.h"
#include "..\common\lib_twi.h"
#include "lm75.h"
#include "math.h"

char PointerReg;      /* LM75 Pointer Register */
char WordRead[2];     /* Store the Word(16) received from the LM75 */

/*-----------------------------------------------------------------------------
Function:   short AT91F_LM75_ReadConfigurationRegister(void);
Arguments: None

Return Value: <read>: The value of the 8 bit configuration register.
-----------------------------------------------------------------------------*/
char AT91F_LM75_ReadConfigurationRegister(void)
{
  char  ConfigReg=0;

  /* Send the pointer register Config. REg. and read it */
  AT91F_TWI_ReadSingleIadr(AT91C_LM75_I2C_ADDRESS,
                           (char)CONFIG_REG,
                           AT91C_TWI_IADRSZ_1_BYTE,
                           &ConfigReg);

  return (ConfigReg);
}

/*-----------------------------------------------------------------------------
Function:  int AT91F_LM75_SetConfigurationRegister(void)
Arguments: <ConfigRegValue>: Value to write into the configuration register

Return Value: none
-----------------------------------------------------------------------------*/
int AT91F_LM75_SetConfigurationRegister(char ConfigRegValue)
{
  /* Send the Config. reg. */
  AT91F_TWI_WriteSingleIadr(AT91C_LM75_I2C_ADDRESS,
                            (char)CONFIG_REG,
                            AT91C_TWI_IADRSZ_1_BYTE,
                            &ConfigRegValue);

  return (1);
}

/*-----------------------------------------------------------------------------
Function:   short AT91F_LM75_ReadThystRegister(void)
Arguments: None

Return Value: <ThysReg>: The value of the Thys register (16-bit reg.).
-----------------------------------------------------------------------------*/
float AT91F_LM75_ReadThystRegister(void)
{
  float ThystReg;
    
  /* Send the pointer register to Thyst. reg. and read it */
  AT91F_TWI_ReadMultipleIadr(AT91C_LM75_I2C_ADDRESS,
                             (char)THYST_REG,
                             AT91C_TWI_IADRSZ_1_BYTE,
                             WordRead,
                             2);
  
  /* Shift the value and format it */
  ThystReg = WordRead[0]<<1 ;
  ThystReg  += WordRead[1]>>7;

  return (ThystReg*0.5);    /* each LSB = 0.5癈 */
}

/*-----------------------------------------------------------------------------
Function:  int AT91F_LM75_SetThysRegister(short ThystRegValue)
Arguments: <ThystRegValue>: Value to write into the configuration register

Return Value: 1
-----------------------------------------------------------------------------*/
int AT91F_LM75_SetThysRegister(short ThystRegValue)
{
  char data2write[2];
  data2write[0] = (char)ThystRegValue;
  data2write[1] = (char)(ThystRegValue>>4);
  
  /* Send the pointer register to Thyst reg */ 
  AT91F_TWI_WriteMultipleIadr(AT91C_LM75_I2C_ADDRESS,
                              (char)THYST_REG,
                              AT91C_TWI_IADRSZ_1_BYTE,
                              data2write,
                              2);

  return (1);
}

/*-----------------------------------------------------------------------------
Function:   short AT91F_LM75_ReadTosRegister(void)
Arguments: None

Return Value: <TosReg>: The value of the Tos register (16-bit reg.)
-----------------------------------------------------------------------------*/
float AT91F_LM75_ReadTosRegister(void)
{
  float TosReg;

 /* Send the pointer register Tos Reg. and Read it  */
  AT91F_TWI_ReadMultipleIadr(AT91C_LM75_I2C_ADDRESS,
                             (char)TOS_REG,
                             AT91C_TWI_IADRSZ_1_BYTE,
                             WordRead,
                             2);

  // Shift the value and format it
  TosReg = WordRead[0]<<1 ;
  TosReg  += WordRead[1]>>7;
  
  return (TosReg*0.5);  //* each LSB = 0.5癈
}

/*-----------------------------------------------------------------------------
Function:  int AT91F_LM75_SetTosRegister(short TosRegValue)
Arguments: <TosRegValue>: Value to write into the configuration register

Return Value: 1
-----------------------------------------------------------------------------*/
int AT91F_LM75_SetTosRegister(short TosRegValue)
{
  char data2write[2];
  data2write[0] = (char)TosRegValue;
  data2write[1] = (char)(TosRegValue>>4);

  /* Set the pointer register to  Tos register and write it */
  AT91F_TWI_WriteMultipleIadr(AT91C_LM75_I2C_ADDRESS,
                              (char)TOS_REG,
                              AT91C_TWI_IADRSZ_1_BYTE,
                              data2write,
                              2);
 
  return (1);
}

/*-----------------------------------------------------------------------------
Function:   short AT91F_LM75_ReadTempRegister(void)
Arguments: None

Return Value: <TosReg>: The value of the Temp register in 癈
-----------------------------------------------------------------------------*/
float AT91F_LM75_ReadTempRegister(void)
{
  float TempReg;        /* LM75 Temperature Register */
  
  /* Set the pointer register to Temp. Reg. and Read it */
  AT91F_TWI_ReadMultipleIadr(AT91C_LM75_I2C_ADDRESS,
                             (char)TEMP_REG,
                             AT91C_TWI_IADRSZ_1_BYTE,
                             WordRead,
                             2);

  /* Shift the value and format it */
  TempReg = WordRead[0]<<1 ;
  TempReg  += WordRead[1]>>7;
  
  return (TempReg*0.5);        /* each LSB = 0.5癈 */
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久五月婷婷| 成人黄色小视频在线观看| 粉嫩aⅴ一区二区三区四区五区| 精品久久久久香蕉网| 久久国产精品72免费观看| 91精品国产一区二区三区| 美国十次综合导航| 日本一区二区视频在线| av一区二区三区黑人| 亚洲mv在线观看| 精品粉嫩超白一线天av| 91免费精品国自产拍在线不卡 | 91在线视频官网| 午夜视频一区二区三区| 国产农村妇女精品| 国产日韩欧美在线一区| 国产日产欧美一区二区视频| 中文字幕精品在线不卡| 欧美日韩国产精选| 激情亚洲综合在线| 亚洲三级小视频| 日韩一区二区在线播放| 色综合天天在线| 久久国产免费看| 国产成人亚洲综合a∨婷婷| 日韩影院在线观看| 国产精品蜜臀av| 日韩欧美一级特黄在线播放| 欧美性色黄大片| 大陆成人av片| 国产一区二区三区在线观看免费 | 一区二区三区四区高清精品免费观看| 91精品一区二区三区在线观看| 国产ts人妖一区二区| 99re热这里只有精品视频| 欧美午夜电影网| 亚洲精品一区二区在线观看| 综合色天天鬼久久鬼色| 视频一区二区欧美| 国产ts人妖一区二区| 欧美日韩高清影院| 国产欧美一区二区三区沐欲 | 天堂久久一区二区三区| 国产高清久久久久| 欧美色窝79yyyycom| 精品国产自在久精品国产| 亚洲激情男女视频| 亚洲丝袜另类动漫二区| 美女在线一区二区| 一本在线高清不卡dvd| 91麻豆精品视频| 日韩精品专区在线影院重磅| 亚洲乱码一区二区三区在线观看| 日本网站在线观看一区二区三区 | 图片区小说区国产精品视频| 亚洲在线观看免费| 国产成人免费视频网站| 色综合久久久久综合体桃花网| 91国产免费看| 91国产免费看| 久久美女艺术照精彩视频福利播放| 夜夜精品视频一区二区| 国产一二三精品| 欧美美女bb生活片| 欧美日韩精品一区二区三区 | 日韩精品一级中文字幕精品视频免费观看 | 欧美tickling挠脚心丨vk| 亚洲精品国产成人久久av盗摄| 丰满放荡岳乱妇91ww| 精品久久人人做人人爱| 日韩电影在线免费看| 在线观看成人免费视频| 欧美日韩aaaaaa| 亚洲激情第一区| 色欧美日韩亚洲| 一区二区三区四区在线播放| 99久久久久久| 国产精品国产a| 性做久久久久久免费观看欧美| 99久久综合狠狠综合久久| 欧美激情在线一区二区三区| 国产一区二区三区不卡在线观看| 91精品国产一区二区三区香蕉| 日韩国产精品久久久久久亚洲| 欧美挠脚心视频网站| 视频在线观看91| 日韩欧美你懂的| 黄网站免费久久| 欧美激情一区二区三区蜜桃视频| 国产999精品久久久久久| 欧美激情在线一区二区| 91日韩精品一区| 亚洲一区中文日韩| 欧美一区二区三区视频免费| 另类欧美日韩国产在线| 久久久精品天堂| 91在线看国产| 三级不卡在线观看| 日韩午夜激情视频| 国产成人午夜片在线观看高清观看| 日本一区二区高清| 欧美亚洲国产bt| 精品中文av资源站在线观看| 欧美精品在线一区二区三区| 免费成人在线网站| 欧美日韩精品是欧美日韩精品| 日韩黄色片在线观看| 久久久精品综合| 色94色欧美sute亚洲线路一久 | 久久www免费人成看片高清| 久久夜色精品一区| 日产精品久久久久久久性色| 26uuu亚洲综合色欧美| 成+人+亚洲+综合天堂| 亚洲一区二区三区国产| 日韩欧美国产综合一区 | 欧美午夜理伦三级在线观看| 午夜亚洲国产au精品一区二区| 久久综合色之久久综合| 欧美性色欧美a在线播放| 精品一区二区久久久| 亚洲男人电影天堂| 一本一本大道香蕉久在线精品| 日韩国产精品久久| 亚洲男人的天堂在线aⅴ视频| 日韩视频免费观看高清完整版在线观看| 国产精品综合av一区二区国产馆| 日韩精品一区二区三区视频播放 | 欧美日韩视频一区二区| 亚洲福利一区二区三区| 欧美综合天天夜夜久久| 久草这里只有精品视频| 亚洲综合网站在线观看| 国产免费成人在线视频| 日韩一级大片在线观看| 精品视频免费看| 91在线无精精品入口| 国产一区二区三区高清播放| 丝袜亚洲另类欧美| 亚洲国产aⅴ天堂久久| 国产精品欧美精品| 久久久一区二区三区| 在线成人免费观看| 欧美系列亚洲系列| 91行情网站电视在线观看高清版| 福利视频网站一区二区三区| 久久er精品视频| 久久国产精品区| 美女任你摸久久| 蜜乳av一区二区| 另类的小说在线视频另类成人小视频在线 | 午夜日韩在线电影| 亚洲资源中文字幕| 一区二区三区欧美久久| 亚洲色图20p| 亚洲免费在线看| 亚洲日本一区二区| 亚洲视频在线一区观看| 亚洲精选一二三| 亚洲激情自拍偷拍| 亚洲午夜影视影院在线观看| 艳妇臀荡乳欲伦亚洲一区| 亚洲精品日日夜夜| 亚洲国产精品一区二区久久 | 激情小说欧美图片| 久久er精品视频| 国产成人综合在线播放| 成人开心网精品视频| 9久草视频在线视频精品| 色又黄又爽网站www久久| 日本精品一区二区三区高清 | 亚洲欧洲国产专区| 7777精品伊人久久久大香线蕉完整版| 在线欧美日韩国产| 6080日韩午夜伦伦午夜伦| 欧美放荡的少妇| 精品久久免费看| 国产精品精品国产色婷婷| 亚洲精品视频在线| 日本亚洲电影天堂| 成人午夜伦理影院| 一道本成人在线| 欧美va亚洲va| ㊣最新国产の精品bt伙计久久| 亚洲精品免费在线播放| 日韩va欧美va亚洲va久久| 国产麻豆视频精品| 色婷婷综合久久| www国产成人免费观看视频 深夜成人网| 中文字幕乱码久久午夜不卡 | 日韩三级av在线播放| 欧美国产精品专区| 日韩福利电影在线| av在线免费不卡| 日韩欧美国产成人一区二区| 中文字幕一区二区三区蜜月| 蜜桃视频一区二区| 欧美性猛交一区二区三区精品| 精品国产制服丝袜高跟| 一区二区三区日本|