热门搜索:

深圳市艾拓微电子科技有限公司是一家专注销售各类电子元器件的综合型公司,产品广泛应用于LED射灯、 SN8P2711B、DC0035E、PB0059E、PB0063E、PB0066E、PB0053E、仪器仪表等诸多领域。多年来一直致力于电子元器件推广、销售工作,拥有一支经验丰富的IC销售团队,为客户提供的产品技术服务。

    衡阳PMS150C规格 PMS150
    • 衡阳PMS150C规格 PMS150
    • 衡阳PMS150C规格 PMS150
    • 衡阳PMS150C规格 PMS150

    衡阳PMS150C规格 PMS150

    更新时间:2020-08-15   浏览数:33
    所属行业:电子 电子产品设计
    发货地址:广东省深圳市南山区南山街道前海妈湾社区  
    产品规格:
    产品数量:9999.00个
    包装说明:
    单 价:0.10 元/个
    深圳市艾拓微电子有限公司低价销售PMS150C系列 台湾应广单片机 一级代理 现货批发 优惠价 PADAUK
    衡阳PMS150C规格
    艾拓微电子科技-质优价廉 SOP8 PMS150C 应广单片机 PADAUK 台湾 一级代理
    衡阳PMS150C规格
    应广发布 PMS150C 8脚纯IO 低价IC_Raker_Padauk应广代理
    衡阳PMS150C规格
    应广单片机授权代理商深圳市艾拓微电子科技有限公司
    //PMC150C 引脚定义
    //================================================================================
    // VDD |1 8| GND
    // PA7 |2 7| PA0
    // PA6 |3 6| PA4/PWM
    // PA5/PRST# |4 5| PA3/PWM
    //================================================================================
    #include "extern.h"
    #pragma disable check_lvd
    .ramadr 0 //地址定义为0
    word gw_Point;
    .ramadr system //以后变量地址由系统自行决定
    word gw_T16Cnt;
    word gw_Cnt;
    byte gb_Flag;
    bit b_T16_1ms : gb_Flag.0 //1MS
    bit b_1S_F : gb_Flag.1 //1S
    byte gb_KeyDebounce;
    byte gb_KeyNew;
    byte gb_KeyOld;
    byte gb_KeyValue;
    D_KEYPORT equ 0b_0000_0001
    D_KEY1 equ 0b_0000_0001
    D_KeyBounce equ 30*1000/1024 //30ms
    //================================================================================
    //
    //--------------------------------------------------------------------------------
    void Test_DirectScanKey(void)
    {
    if(b_T16_1ms)
    {
    b_T16_1ms = 0;
    a = pa & D_KEYPORT;
    a ^= D_KEYPORT;
    if(gb_KeyNew == a)
    {//读到值相同值,Debouce
    if(--gb_KeyDebounce == 0)
    {//Debounce结束
    if(gb_KeyOld != gb_KeyNew)
    {
    gb_KeyValue = gb_KeyNew;
    gb_KeyOld = gb_KeyNew;
    }
    }
    }
    else
    {
    gb_KeyNew = a;
    gb_KeyDebounce = D_KeyBounce;
    }
    }
    }
    void Test_KeyProcess(void)
    {
    //处理Key1
    if(gb_KeyValue == D_KEY1)
    {
    gb_KeyValue = 0;
    //pa3 电平翻转
    a = pa;
    a ^= 0x08;
    pa = a;
    }
    }
    //================================================================================
    //TABLE
    //--------------------------------------------------------------------------------
    void Pr0_Skip(void)
    {
    pcadd a; //a = 1~n,a值等于0时不能跳出pcadd循环
    {
    ret 0xaa;
    ret 0xbb;
    ret 0xcc;
    ret 0xdd;
    ret 0xee;
    }
    }
    //================================================================================
    void FPPA0(void)
    {
    .ADJUST_IC SYSCLK=IHRC/4, IHRC=16MHz, VDD=5V;
    pac = 0b_1111_1110; //pa0 pull high
    pa = 0b_0000_0000;
    paph = 0b_0000_0001;
    $ padier 0b_1111_1001;
    //------------------------------------------------------------
    //清除RAM
    gw_Point = _SYS(RAM_SIZE)-1;
    a = 0;
    do
    {
    gw_Point = a;
    }while(--gw_Point$0);
    //------------------------------------------------------------
    //定时1MS
    gw_Point = 1024 - 1000;
    stt16 gw_T16Cnt;
    $ t16m SYSCLK,/4,bit10;
    intrq = 0;
    inten.2 = 1;
    engint;
    //------------------------------------------------------------
    //从ROM中取数据
    a = 0x02;
    Pr0_Skip();
    //------------------------------------------------------------
    while (1)
    {
    .wdreset;
    Test_DirectScanKey();
    Test_KeyProcess();
    }
    }
    //================================================================================
    void Interrupt(void)
    {
    pushaf;
    if(intrq.t16) //1MS
    {
    intrq.t16 = 0;
    stt16 gw_T16Cnt;
    //test IO
    a = pa;
    a ^= 0x80;
    pa = a;
    b_T16_1ms = 1;
    gw_Cnt++;
    if(gw_Cnt > 999)
    {//1S计数
    gw_Cnt = 0;
    b_1S_F = 1;
    }
    }
    popaf;
    }
    //================================================================================
    -/gbachae/-

    http://www.atwdz2014.com