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

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

?? led.c

?? TQ公司的STK16x開發系統的源碼
?? C
字號:
/* File: LED.C */

/****************************************************************************
* 
* STK16XSW.LED
* ============
*
* Low level routines for LED control
*
* TQ-Systems GmbH                                                         
* ---------------                                                         
* Customer: TQ-Components
* Project : STK16XSW
* Tools   : uVision 2.05
*
* Rev: Date:     Name:            Modification:
* ----+---------+----------------+------------------------------------------
* 100  16.01.01  A. Lichte        taken over from STK16X.506                
*****************************************************************************/

/****************************************************************************
*
*                           availability summary
*
* available for Starterkit: STK16X
* conformed for Starterkit: STK16X 
* available for Modul     : TQM164   TQM165   TQM165U  TQM166  TQM167
*                           TQM167LC TQM167U  TQM167UE
* conformed for Modul     : TQM164   TQM165   TQM165U  TQM166  TQM167
*                           TQM167LC TQM167U  TQM167UE
*****************************************************************************/


/*==========================================================================*
* pragmas:
*===========================================================================*/

/*==========================================================================*
* include files (#INCLUDE):
*===========================================================================*/

/*--------------------------------------------------------------------------*
* standard include files: 
*---------------------------------------------------------------------------*/
#include <reg167.h>             /* special function register               */

/*--------------------------------------------------------------------------*
* project specific include files:
*---------------------------------------------------------------------------*/
#include "led.h"                /* LED functions                           */
#include "timer.h"              /* timer functions                         */

/*==========================================================================*
* module internal definitions (#DEFINE):
*===========================================================================*/

/*==========================================================================*
* module internal type declarations (TYPEDEF):
*===========================================================================*/

/*==========================================================================*
* module internal constants (CONST):
*===========================================================================*/

/*==========================================================================*
* extern available constants (CONST):
*===========================================================================*/

/*==========================================================================*
* modul internal variables:
*===========================================================================*/

/*--------------------------------------------------------------------------*
* LED control lines:
*---------------------------------------------------------------------------*/
sbit led_0     = LED_0;
sbit led_0_dir = LED_0_DIR;
sbit led_1     = LED_1;
sbit led_1_dir = LED_1_DIR;
sbit led_2     = LED_2;
sbit led_2_dir = LED_2_DIR;
sbit led_3     = LED_3;
sbit led_3_dir = LED_3_DIR;
sbit led_4     = LED_4;
sbit led_4_dir = LED_4_DIR;
sbit led_5     = LED_5;
sbit led_5_dir = LED_5_DIR;
sbit led_6     = LED_6;
sbit led_6_dir = LED_6_DIR;
sbit led_7     = LED_7;
sbit led_7_dir = LED_7_DIR;
sbit led_8     = LED_8;
sbit led_8_dir = LED_8_DIR;
sbit led_9     = LED_9;
sbit led_9_dir = LED_9_DIR;
sbit led_10    = LED_10;
sbit led_10_dir= LED_10_DIR;
sbit led_11    = LED_11;
sbit led_11_dir= LED_11_DIR;
sbit led_12    = LED_12;
sbit led_12_dir= LED_12_DIR;
sbit led_13    = LED_13;
sbit led_13_dir= LED_13_DIR;
sbit led_14    = LED_14;
sbit led_14_dir= LED_14_DIR;
sbit led_15    = LED_15;
sbit led_15_dir= LED_15_DIR;

/*--------------------------------------------------------------------------*
* current LED state:
*---------------------------------------------------------------------------*/
BYTE led_state[LED_MAX - LED_MIN + 1];

/*--------------------------------------------------------------------------*
* variables for blink controlling:
*---------------------------------------------------------------------------*/
TIMER_COUNTER led_blink_time;      /* time base for blink frequency        */
TIMER_COUNTER led_last_blink;      /* timer counter for LED blinking       */
BYTE          led_blink_state;     /* current blink state (LED_OFF/LED_ON) */

/*==========================================================================*
* globale external available variables (EXTERN):
*===========================================================================*/

/*==========================================================================*
* modul internal functions:
*===========================================================================*/

/*--------------------------------------------------------------------------*
* void led_out()
*---------------------------------------------------------------------------*
* FT: low level LED output routine (LED_OFF/LED_ON/LED_BLINK)
* EP: -
* RV: -
* GP: LED_OFF, LED_ON, LED_BLINK, led_state
*---------------------------------------------------------------------------*/ 
void led_out()
{   
  /* port output: */
  switch (led_state[0])
  {
    case LED_OFF  : led_0 = !(LED_0_ON); break;
    case LED_ON   : led_0 = LED_0_ON; break;
    case LED_BLINK: led_0 = led_blink_state; break;
  }
  switch (led_state[1])
  {
    case LED_OFF  : led_1 = !(LED_1_ON); break;
    case LED_ON   : led_1 = LED_1_ON; break;
    case LED_BLINK: led_1 = led_blink_state; break;
  }
  switch (led_state[2])
  {
    case LED_OFF  : led_2 = !(LED_2_ON); break;
    case LED_ON   : led_2 = LED_2_ON; break;
    case LED_BLINK: led_2 = led_blink_state; break;
  }
  switch (led_state[3])
  {                                
    case LED_OFF  : led_3 = !(LED_3_ON); break;
    case LED_ON   : led_3 = LED_3_ON; break;
    case LED_BLINK: led_3 = led_blink_state; break;
  }
  switch (led_state[4])
  {
    case LED_OFF  : led_4 = !(LED_4_ON); break;
    case LED_ON   : led_4 = LED_4_ON; break;
    case LED_BLINK: led_4 = led_blink_state; break;
  }
  switch (led_state[5])
  {
    case LED_OFF  : led_5 = !(LED_5_ON); break;
    case LED_ON   : led_5 = LED_5_ON; break;
    case LED_BLINK: led_5 = led_blink_state; break;
  }
  switch (led_state[6])
  {
    case LED_OFF  : led_6 = !(LED_6_ON); break;
    case LED_ON   : led_6 = LED_6_ON; break;
    case LED_BLINK: led_6 = led_blink_state; break;
  }
  switch (led_state[7])
  {
    case LED_OFF  : led_7 = !(LED_7_ON); break;
    case LED_ON   : led_7 = LED_7_ON; break;
    case LED_BLINK: led_7 = led_blink_state; break;
  }
  switch (led_state[8])
  {
    case LED_OFF  : led_8 = !(LED_8_ON); break;
    case LED_ON   : led_8 = LED_8_ON; break;
    case LED_BLINK: led_8 = led_blink_state; break;
  }
  switch (led_state[9])
  {
    case LED_OFF  : led_9 = !(LED_7_ON); break;
    case LED_ON   : led_9 = LED_7_ON; break;
    case LED_BLINK: led_9 = led_blink_state; break;
  }
  switch (led_state[10])
  {
    case LED_OFF  : led_10 = !(LED_10_ON); break;
    case LED_ON   : led_10 = LED_10_ON; break;
    case LED_BLINK: led_10 = led_blink_state; break;
  }
  switch (led_state[11])
  {
    case LED_OFF  : led_11 = !(LED_11_ON); break;
    case LED_ON   : led_11 = LED_11_ON; break;
    case LED_BLINK: led_11 = led_blink_state; break;
  }
  switch (led_state[12])
  {
    case LED_OFF  : led_12 = !(LED_12_ON); break;
    case LED_ON   : led_12 = LED_12_ON; break;
    case LED_BLINK: led_12 = led_blink_state; break;
  }
  switch (led_state[13])
  {
    case LED_OFF  : led_13 = !(LED_13_ON); break;
    case LED_ON   : led_13 = LED_13_ON; break;
    case LED_BLINK: led_13 = led_blink_state; break;
  }
  switch (led_state[14])
  {
    case LED_OFF  : led_14 = !(LED_14_ON); break;
    case LED_ON   : led_14 = LED_14_ON; break;
    case LED_BLINK: led_14 = led_blink_state; break;
  }
  switch (led_state[15])
  {
    case LED_OFF  : led_15 = !(LED_15_ON); break;
    case LED_ON   : led_15 = LED_15_ON; break;
    case LED_BLINK: led_15 = led_blink_state; break;
  }
}

/*==========================================================================*
* extern available functions:
*===========================================================================*/

/*--------------------------------------------------------------------------*
* void led_init()
*---------------------------------------------------------------------------*
* FT: init LED control and data ports
* EP: -
* RV: -
* GP: LED_DIR_OUT, LED_0_ON, LED_1_ON, LED_2_ON, LED_3_ON, LED_4_ON,
*     LED_5_ON, LED_6_ON, LED_7_ON
*---------------------------------------------------------------------------*/ 
void led_init()
{
  /* init LED control lines: */
  led_0      = !LED_0_ON;
  led_0_dir  =  LED_DIR_OUT;

  led_1      = !LED_1_ON;
  led_1_dir  =  LED_DIR_OUT;

  led_2      = !LED_2_ON;
  led_2_dir  =  LED_DIR_OUT;

  led_3      = !LED_3_ON;
  led_3_dir  =  LED_DIR_OUT;

  led_4      = !LED_4_ON;
  led_4_dir  =  LED_DIR_OUT;

  led_5      = !LED_5_ON;
  led_5_dir  =  LED_DIR_OUT;

  led_6      = !LED_6_ON;
  led_6_dir  =  LED_DIR_OUT;

  led_7      = !LED_7_ON;
  led_7_dir  =  LED_DIR_OUT;

  led_8      = !LED_8_ON;
  led_8_dir  =  LED_DIR_OUT;

  led_9      = !LED_9_ON;
  led_9_dir  =  LED_DIR_OUT;

  led_10     = !LED_10_ON;
  led_10_dir =  LED_DIR_OUT;

  led_11     = !LED_11_ON;
  led_11_dir =  LED_DIR_OUT;

  led_12     = !LED_12_ON;
  led_12_dir =  LED_DIR_OUT;

  led_13     = !LED_13_ON;
  led_13_dir =  LED_DIR_OUT;

  led_14     = !LED_14_ON;
  led_14_dir =  LED_DIR_OUT;

  led_15     = !LED_15_ON;
  led_15_dir =  LED_DIR_OUT;

  /* init default LED blink frequency: */
  led_blink_time = LED_BLINK_DFLT;

  /* clear all LEDs: */
  led_clrall();
}

/*--------------------------------------------------------------------------*
* void led_clrall();
*---------------------------------------------------------------------------*
* FT: clear all LEDs
* EP: -
* RW: -
* GP: LED_MIN, LED_MAX, LED_OFF
*---------------------------------------------------------------------------*/ 
void led_clrall()
{ BYTE i;
  
  /* reset all LEDs: */
  for (i=LED_MIN; i<=LED_MAX; i++)
  {
    led_state[i] = LED_OFF;
  }
  led_out();                                   /* call LED output routine */

  /* reset blink time base and blink state: */
  led_last_blink = timer_get_10ms(TIMER_MIN);
  led_blink_state = LED_OFF;
}

/*--------------------------------------------------------------------------*
* void led_idle()
*---------------------------------------------------------------------------*
* FT: idle function for LED handling (blinking etc.)
* EP: -
* RV: -
* GP: -
*---------------------------------------------------------------------------*/ 
void led_idle()
{
  if (timer_get_10ms(led_last_blink) > led_blink_time)
  {
    led_last_blink = timer_get_10ms(TIMER_MIN);
    if (led_blink_state == LED_ON)
    {
      led_blink_state = LED_OFF;
    }
	else 
	{
      led_blink_state = LED_ON;
    }

    led_out();
  }
}

/*--------------------------------------------------------------------------*
* BOOL led_set(BYTE led_num, BYTE state);
*---------------------------------------------------------------------------*
* FT: LED controlling
* EP: led_num = number of LED to be set
*     state   = led state (LED_OFF/LED_ON/LED_BLINK)
* RV: TRUE = function successfully; FALSE = unvalid LED number
* GP: LED_MIN, LED_MAX, led_state
*---------------------------------------------------------------------------*/ 
BOOL led_set(BYTE led_num, BYTE state)
{
  /* check LED number: */
  if ((led_num < LED_MIN) || (led_num > LED_MAX)) return (FALSE);

  led_state[led_num] = state;                           /* save LED state */

  led_out();                                   /* call LED output routine */

  return (TRUE);
}

/*--------------------------------------------------------------------------*
* BYTE led_get(BYTE led_num);
*---------------------------------------------------------------------------*
* FT: get current LED state
* EP: led_num = number of LED to be detected
* RV: LED state (LED_UNDEF if invalid LED number)
* GP: LED_MIN, LED_MAX, LED_UNDEF, led_state
*---------------------------------------------------------------------------*/ 
BYTE led_get(BYTE led_num)
{
  /* check LED number: */
  if ((led_num < LED_MIN) || (led_num > LED_MAX)) return (LED_UNDEF);
  
  return (led_state[led_num]);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91一区在线观看| 国产成人免费9x9x人网站视频| 久久久国产精品麻豆| 日韩情涩欧美日韩视频| 欧美日韩高清不卡| 欧美一区二区三区在线视频| 欧美日本一区二区| 欧美一区二区三区在线视频| 欧美大片国产精品| 精品久久久久av影院 | 97久久人人超碰| 成人教育av在线| 色综合久久天天| 欧美人成免费网站| 日韩精品最新网址| 国产欧美一区二区在线观看| 中文字幕日韩av资源站| 亚洲欧美欧美一区二区三区| 日韩精品成人一区二区在线| 蜜桃一区二区三区四区| 国产一区二区h| 成人理论电影网| 色88888久久久久久影院野外| 欧美视频一区二| 久久综合久久综合九色| 中文字幕在线播放不卡一区| 国产一区二区剧情av在线| 中文字幕一区二区三区精华液| 久久影视一区二区| 在线观看不卡一区| 久久亚洲免费视频| 欧美福利视频导航| 中文字幕乱码日本亚洲一区二区| 97精品久久久午夜一区二区三区| 日本高清不卡视频| 精品少妇一区二区三区日产乱码| 国产精品女上位| 亚洲成av人片一区二区三区| 国内成人精品2018免费看| 99re这里只有精品视频首页| 国产精品超碰97尤物18| 亚洲精品视频免费观看| 久久99蜜桃精品| 99精品热视频| 久久综合色播五月| 日韩一区欧美二区| 成人午夜视频在线观看| 欧美日免费三级在线| 久久婷婷色综合| 亚洲大片免费看| jlzzjlzz国产精品久久| 日韩欧美一级在线播放| 亚洲精品乱码久久久久久日本蜜臀| 午夜亚洲福利老司机| 成人av网站大全| 久久久久久麻豆| 青青青伊人色综合久久| 色噜噜狠狠色综合欧洲selulu | 亚洲午夜精品网| 成人一区二区在线观看| 欧美成人a∨高清免费观看| 一二三区精品福利视频| 懂色av一区二区在线播放| 欧美精品久久一区| 亚洲一区在线观看免费 | 成人av在线看| 久久嫩草精品久久久精品| 免费看黄色91| 欧美一区二区人人喊爽| 日韩精品电影一区亚洲| 欧美精品在线一区二区三区| 亚洲成人免费av| 欧美日韩国产精品自在自线| 亚洲国产一区在线观看| 在线免费不卡电影| 亚洲一级不卡视频| 欧美日韩精品一区视频| 天天亚洲美女在线视频| 这里只有精品视频在线观看| 亚洲va欧美va天堂v国产综合| 欧美最猛黑人xxxxx猛交| 亚洲美女精品一区| 欧美日韩中字一区| 奇米影视一区二区三区小说| 欧美哺乳videos| 国产精品77777竹菊影视小说| 久久亚洲影视婷婷| 成人性生交大片免费看中文网站| 国产精品免费人成网站| 日本道精品一区二区三区| 一区二区三区不卡视频在线观看| 日本电影欧美片| 日本欧美一区二区三区乱码| 精品粉嫩超白一线天av| 国产69精品久久久久毛片| 18欧美亚洲精品| 欧美日韩一区二区电影| 蜜桃视频免费观看一区| 久久久91精品国产一区二区精品 | 中文字幕日韩av资源站| 91视频在线看| 免费成人av资源网| 国产精品视频九色porn| 欧美乱妇23p| 丁香婷婷综合网| 亚洲午夜精品网| 久久久久国产精品厨房| 在线免费一区三区| 狠狠色狠狠色综合| 亚洲视频香蕉人妖| 日韩久久精品一区| 99精品欧美一区二区蜜桃免费 | 一区二区三区.www| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 国产精品亚洲第一区在线暖暖韩国| 中文字幕一区视频| 日韩欧美色综合| 在线观看视频一区| 国产永久精品大片wwwapp| 亚洲综合自拍偷拍| 国产亚洲欧美日韩日本| 欧美久久一二三四区| 99久久99久久精品国产片果冻| 免费欧美日韩国产三级电影| 亚洲欧美日韩久久精品| 国产亚洲欧美一级| 欧美一区二区视频网站| 日本精品一区二区三区四区的功能| 另类小说综合欧美亚洲| 亚洲国产美国国产综合一区二区| 国产欧美一区二区三区鸳鸯浴 | 国产精品99久久久久久有的能看| 亚洲一区二区中文在线| 国产精品日韩精品欧美在线| 精品国产一区二区在线观看| 欧美电影一区二区| 91豆麻精品91久久久久久| 成人av在线网| 丰满亚洲少妇av| 国产精品123区| 精品一区二区三区久久| 日本三级韩国三级欧美三级| 亚洲不卡av一区二区三区| 亚洲精品国产一区二区三区四区在线 | 午夜久久福利影院| 亚洲久草在线视频| 亚洲蜜桃精久久久久久久| 欧美激情在线一区二区| 国产亚洲成年网址在线观看| 精品国产乱码久久久久久浪潮| 91精品福利在线一区二区三区 | 亚洲永久精品国产| **网站欧美大片在线观看| 国产精品毛片无遮挡高清| 国产欧美一区二区精品性色超碰| 精品国精品国产| 亚洲欧美乱综合| 一区二区三区高清在线| 亚洲大尺度视频在线观看| 亚洲自拍偷拍麻豆| 亚洲mv在线观看| 亚洲精品美腿丝袜| 天天免费综合色| 精品一区二区三区免费| 国产日韩成人精品| 欧美日韩在线直播| 在线91免费看| 精品福利av导航| 国产精品欧美一区二区三区| 中文字幕中文字幕在线一区 | 亚洲国产成人91porn| 亚洲午夜一区二区| 手机精品视频在线观看| 久久av中文字幕片| www.日韩大片| 精品视频在线看| 日韩精品中文字幕在线一区| 国产午夜精品久久久久久久| 亚洲摸摸操操av| 麻豆成人91精品二区三区| 粗大黑人巨茎大战欧美成人| 日本高清免费不卡视频| 欧美电视剧免费全集观看| 亚洲国产激情av| 午夜精品久久久久影视| 国产一区二区0| 在线观看av一区二区| 精品久久人人做人人爰| 亚洲靠逼com| 加勒比av一区二区| 91精品福利在线| 久久久精品国产免费观看同学| 一区二区欧美精品| 经典三级视频一区| 欧美三级电影在线看| 国产嫩草影院久久久久| 日韩精品一二三| 91在线视频18| 久久午夜电影网| 奇米影视一区二区三区|