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

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

?? lcd-internal.c

?? msp430F437三相電表DEMO(編譯器 IAR 3.42A)
?? C
字號:
//--------------------------------------------------------------------------
//
//  Software for MSP430 based e-meters.
//
//  THIS PROGRAM IS PROVIDED "AS IS". TI MAKES NO WARRANTIES OR
//  REPRESENTATIONS, EITHER EXPRESS, IMPLIED OR STATUTORY, 
//  INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS 
//  FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR 
//  COMPLETENESS OF RESPONSES, RESULTS AND LACK OF NEGLIGENCE. 
//  TI DISCLAIMS ANY WARRANTY OF TITLE, QUIET ENJOYMENT, QUIET 
//  POSSESSION, AND NON-INFRINGEMENT OF ANY THIRD PARTY 
//  INTELLECTUAL PROPERTY RIGHTS WITH REGARD TO THE PROGRAM OR 
//  YOUR USE OF THE PROGRAM.
//
//  IN NO EVENT SHALL TI BE LIABLE FOR ANY SPECIAL, INCIDENTAL, 
//  CONSEQUENTIAL OR INDIRECT DAMAGES, HOWEVER CAUSED, ON ANY 
//  THEORY OF LIABILITY AND WHETHER OR NOT TI HAS BEEN ADVISED 
//  OF THE POSSIBILITY OF SUCH DAMAGES, ARISING IN ANY WAY OUT 
//  OF THIS AGREEMENT, THE PROGRAM, OR YOUR USE OF THE PROGRAM. 
//  EXCLUDED DAMAGES INCLUDE, BUT ARE NOT LIMITED TO, COST OF 
//  REMOVAL OR REINSTALLATION, COMPUTER TIME, LABOR COSTS, LOSS 
//  OF GOODWILL, LOSS OF PROFITS, LOSS OF SAVINGS, OR LOSS OF 
//  USE OR INTERRUPTION OF BUSINESS. IN NO EVENT WILL TI'S 
//  AGGREGATE LIABILITY UNDER THIS AGREEMENT OR ARISING OUT OF 
//  YOUR USE OF THE PROGRAM EXCEED FIVE HUNDRED DOLLARS 
//  (U.S.$500).
//
//  Unless otherwise stated, the Program written and copyrighted 
//  by Texas Instruments is distributed as "freeware".  You may, 
//  only under TI's copyright in the Program, use and modify the 
//  Program without any charge or restriction.  You may 
//  distribute to third parties, provided that you transfer a 
//  copy of this license to the third party and the third party 
//  agrees to these terms by its first use of the Program. You 
//  must reproduce the copyright notice and any other legend of 
//  ownership on each copy or partial copy, of the Program.
//
//  You acknowledge and agree that the Program contains 
//  copyrighted material, trade secrets and other TI proprietary 
//  information and is protected by copyright laws, 
//  international copyright treaties, and trade secret laws, as 
//  well as other intellectual property laws.  To protect TI's 
//  rights in the Program, you agree not to decompile, reverse 
//  engineer, disassemble or otherwise translate any object code 
//  versions of the Program to a human-readable form.  You agree 
//  that in no event will you alter, remove or destroy any 
//  copyright notice included in the Program.  TI reserves all 
//  rights not specifically granted under this license. Except 
//  as specifically provided herein, nothing in this agreement 
//  shall be construed as conferring by implication, estoppel, 
//  or otherwise, upon you, any license or other right under any 
//  TI patents, copyrights or trade secrets.
//
//  You may not use the Program in non-TI devices.
//
//  File: LCD-internal.c
//
//  Steve Underwood <steve-underwood@ti.com>
//  Texas Instruments Hong Kong Ltd.
//
//  $Id: LCD-internal.c,v 1.7 2005/03/18 07:07:21 a0754793 Exp $
//
//--------------------------------------------------------------------------
#include <stdint.h>
#include <stdlib.h>
#include <io.h>
#include "emeter-toolkit-custom.h"
#include "emeter-toolkit.h"

//
//  This code is based on a 4-mux display, something like the following diagram.
//  By adapting variables it can be customised for various layouts.
//
//           MSP430F449
//         ---------------
//     .  |               |
//    /|\ |           XIN |---
//     |  |               |    32768Hz
//     ---| RST      XOUT |---
//        |               |
//        |               |   Vcc
//        |               |     |
//        |               |    /
//        |               |    \ 30k
//        |           R32 |____/
//        |               |    /
//        |               |    \ 30k
//        |           R31 |____/
//        |               |    /
//        |               |    \ 30k
//        |           R30 |____/
//        |               |    |
//        |               |   GND
//        |               |
//        |               |          ____________LCD__T218010___________
//        |          COM3 |---------|2 COM4      __    __    __    __   |
//        |          COM2 |---------|1 COM3     |__|  |__|  |__|  |__|  |
//        |          COM1 |---------|3 COM2     |__|  |__|  |__|  |__|  |
//        |               |    _____|20 COM1     __    __    __    __   |
//        |          COM0 |___|_____|4  COM1                            |
//        |               |         |  S0            S14                |
//        |               |         |__19____________5__________________|
//        |               |            |             |
//        |      (28)S16  |------------              |
//        |           :   |   :                      |
//        |           :   |   :                      |
//        |      (42)S30  |-------------------------- 
//        |               |
//         ---------------
//

#if SUPPORT_INTERNAL_LCD

//Initialise the LCD display, and set it to initially display
//all segments.
void LCDinit(void)
{
    int i;

    for (i = 0;  i < 21;  i++)
        LCDMEM[i] = 0;
#if defined(__MSP430_HAS_LCD4__)
#if defined(__MSP430_E423__) || defined(__MSP430_E425__) || defined(__MSP430_E427__)
    LCDCTL = (LCDSG0_3 | LCD4MUX | LCDON);
#else
    LCDCTL = (LCDSG0_5 | LCD4MUX | LCDON);
#endif
#endif
    for (i = 1;  i <= lcd_cells;  i++)
        LCDchar(0xFFFF, i);
#if defined(__MSP430_HAS_LCD4__)
#if defined(__MSP430_412__) || defined(__MSP430_413__) || defined(__MSP430_435__) || defined(__MSP430_436__) || defined(__MSP430_437__) || defined(__MSP430_447__) || defined(__MSP430_448__) || defined(__MSP430_449__)
    P5SEL |= (BIT2 | BIT3 | BIT4 | BIT5 | BIT6 | BIT7);
#endif
#endif
}

void LCDsleep(void)
{
#if defined(__MSP430_HAS_LCD4__)
    LCDCTL &= ~(LCDON);
#else
    LCDACTL &= ~(LCDON);
#endif
}

void LCDawaken(void)
{
#if defined(__MSP430_HAS_LCD4__)
    LCDCTL |= LCDON;
#else
    LCDACTL |= LCDON;
#endif
}

//Change a specified group of LCD cells.
void LCDchars(const uint8_t *s, int pos, int len)
{
    if (lcd_pos_step < 0)
        pos = -pos;
    if (abs(lcd_pos_step) > 1)
        pos <<= 1;
    pos = lcd_pos_base + pos;
    for (  ;  len > 0;  --len)
    {
        LCDMEM[pos] = *s++;
        pos += lcd_pos_step;
    }
}

//Change a specified LCD cell.
void LCDchar(uint16_t ch, int pos)
{
    if (lcd_pos_step < 0)
        pos = -pos;
    if (abs(lcd_pos_step) > 1)
    {
        pos = lcd_pos_base + (pos << 1);
        LCDMEM[pos] = ch & 0xFF;
        pos += (lcd_pos_step >> 1);
        LCDMEM[pos] = ch >> 8;
    }
    else
    {
        pos = lcd_pos_base + pos;
        LCDMEM[pos] = ch;
    }
}

void LCDmodify_char(uint16_t ch, int pos, int on)
{
    if (lcd_pos_step < 0)
        pos = -pos;
    if (abs(lcd_pos_step) > 1)
    {
        pos = lcd_pos_base + (pos << 1);
        if (on)
        {
            LCDMEM[pos] |= ch & 0xFF;
            pos += (lcd_pos_step >> 1);
            LCDMEM[pos] |= ch >> 8;
        }
        else
        {
            LCDMEM[pos] &= ~(ch & 0xFF);
            pos += (lcd_pos_step >> 1);
            LCDMEM[pos] |= ~(ch >> 8);
        }
    }
    else
    {
        pos = lcd_pos_base + pos;
        if (on)
            LCDMEM[pos] |= ch;
        else
            LCDMEM[pos] &= ~ch;
    }
}

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91久久精品日日躁夜夜躁欧美| 精品美女被调教视频大全网站| 99麻豆久久久国产精品免费| 国产suv精品一区二区883| 成人av免费在线| 在线观看免费一区| 亚洲第一电影网| 欧美精品自拍偷拍动漫精品| 日韩精品1区2区3区| 亚洲欧美aⅴ...| 一本大道av伊人久久综合| 91精品国产一区二区三区蜜臀| 亚洲综合色自拍一区| 欧美在线观看一二区| 一级女性全黄久久生活片免费| 国产一区二区视频在线| 国产经典欧美精品| 99久久婷婷国产精品综合| 91蝌蚪porny九色| 成人禁用看黄a在线| 顶级嫩模精品视频在线看| 亚洲卡通欧美制服中文| 亚洲综合在线观看视频| av在线不卡网| 亚洲一区在线观看免费 | 不卡欧美aaaaa| 国产精品私房写真福利视频| 国产精品自拍在线| 亚洲色图视频网| 91精品国产综合久久福利| 一本大道久久a久久综合婷婷| 国产精品传媒入口麻豆| 91精品国产欧美一区二区| 亚洲一区在线看| 中文无字幕一区二区三区| 国产iv一区二区三区| 亚洲成a人片综合在线| 日本一区二区三区久久久久久久久不| 在线精品视频一区二区| 国产精品护士白丝一区av| 欧美日韩国产高清一区二区 | 国产精品系列在线观看| 亚洲三级理论片| 久久一二三国产| 精品一区二区三区影院在线午夜| 99国产精品久久| 国产剧情一区二区| 国产乱码精品1区2区3区| 久久久国际精品| 欧美一区二区视频观看视频| 日本道精品一区二区三区| 久久综合久久鬼色| 成人在线视频首页| 色综合中文字幕| 国产清纯美女被跳蛋高潮一区二区久久w | 色香蕉久久蜜桃| 99在线精品观看| 婷婷国产v国产偷v亚洲高清| 欧美xxxx老人做受| 26uuu精品一区二区 | jlzzjlzz国产精品久久| 国产69精品久久久久毛片| 美女一区二区视频| 欧美久久久一区| 日日夜夜一区二区| 91美女片黄在线观看91美女| 一片黄亚洲嫩模| 欧美性色黄大片手机版| 日韩精品一区二区三区在线播放 | 久久九九全国免费| 韩国av一区二区三区四区 | 99久久99久久免费精品蜜臀| 国产精品久久久久久久久图文区 | 成人精品高清在线| 亚洲素人一区二区| 7777精品伊人久久久大香线蕉经典版下载 | 一区二区在线观看视频在线观看| 亚洲一区免费视频| 日本成人在线看| 久久人人97超碰com| 五月天欧美精品| 亚洲精品视频一区| 国产精品资源站在线| 亚洲视频免费在线观看| 制服视频三区第一页精品| 成人福利视频在线| 免费成人你懂的| 欧美激情一区二区在线| 56国语精品自产拍在线观看| 国产精品影视在线| 自拍偷自拍亚洲精品播放| 欧美日韩五月天| 豆国产96在线|亚洲| 久久99精品国产.久久久久久| 中文字幕日韩精品一区| 欧美精品一区二| 欧美三电影在线| 成人性生交大片免费| 看电视剧不卡顿的网站| 一区二区视频在线看| 欧美精品一区二区三区四区| 欧美日韩免费电影| av一本久道久久综合久久鬼色| 色综合av在线| 99精品1区2区| 国产精品主播直播| 亚洲视频一区二区免费在线观看| 久久综合成人精品亚洲另类欧美| 欧美视频一区二区| 欧美最新大片在线看| 成人精品视频网站| 国产剧情在线观看一区二区| 国产一区二区不卡老阿姨| 日本免费在线视频不卡一不卡二| 一区二区欧美视频| 亚洲精品视频免费看| 国产精品青草综合久久久久99| 日本一区二区三区在线不卡| 久久蜜桃av一区二区天堂| 99re成人在线| 国产精品综合二区| 国产成人综合在线播放| 蜜桃视频一区二区三区在线观看 | 亚洲综合在线视频| 亚洲精品成人在线| 亚洲美女在线国产| 午夜激情一区二区三区| 亚洲成精国产精品女| 亚洲电影激情视频网站| 蜜臀久久久99精品久久久久久| 日韩在线a电影| 婷婷丁香激情综合| 国产美女精品人人做人人爽 | 欧美性猛交xxxxxxxx| www.日韩av| 色婷婷亚洲一区二区三区| 99精品视频中文字幕| 欧美亚日韩国产aⅴ精品中极品| 欧美色偷偷大香| 67194成人在线观看| 久久日韩粉嫩一区二区三区| 久久精品一区二区三区四区| 欧美一区二区黄| 国产色91在线| 亚洲乱码精品一二三四区日韩在线| 亚洲一区在线看| 麻豆精品视频在线观看| 麻豆精品在线观看| 99国产精品国产精品久久| 91激情在线视频| 精品国产一区a| 国产精品国产三级国产三级人妇| 亚洲综合在线免费观看| 男女视频一区二区| 成人综合婷婷国产精品久久免费| 欧美色精品在线视频| 欧美xfplay| 亚洲免费在线播放| 日韩成人一区二区| 成人黄色网址在线观看| 欧美视频完全免费看| 国产偷国产偷精品高清尤物| 一区二区三区精密机械公司| 国产清纯白嫩初高生在线观看91 | 国产欧美综合在线| 亚洲色图视频免费播放| 麻豆专区一区二区三区四区五区| 99riav久久精品riav| 欧美一区二区成人6969| 中文字幕在线观看不卡| 日韩精品免费视频人成| 国产宾馆实践打屁股91| 日韩一区二区视频在线观看| 国产精品麻豆一区二区| 久久99精品久久久久婷婷| 色狠狠综合天天综合综合| 欧美午夜精品久久久久久超碰| 国产精品少妇自拍| 奇米综合一区二区三区精品视频| 日本精品裸体写真集在线观看| 欧美成人免费网站| 国产精品网友自拍| 久久超碰97中文字幕| 欧美三级日韩三级| 亚洲精品老司机| 丁香啪啪综合成人亚洲小说| 久久久美女毛片| 麻豆精品在线播放| 一本到高清视频免费精品| 久久九九国产精品| 久久精品国产亚洲高清剧情介绍| 欧美情侣在线播放| 伊人夜夜躁av伊人久久| 国产一区二区三区久久久| 欧美电影在线免费观看| 亚洲一区视频在线| 欧美在线观看一二区| 亚洲欧美另类图片小说| 国产老肥熟一区二区三区| 日韩欧美一二区|