热门搜索:

深圳市艾拓微电子科技有限公司是一家专注销售各类电子元器件的综合型公司。主营产品:PFC4、PFS2、PFC2、PFS1、PMC2、PMS1等,产品广泛应用于LED射灯、LED日光灯、手机、蓝牙耳机、摄像头、MP4/MP3、电子词典、PDA、数码相机、汽车电子、通讯设备及计算机周边、充电器、仪器仪表等诸多领域。

    邢台PMS150C厂
    • 邢台PMS150C厂
    • 邢台PMS150C厂
    • 邢台PMS150C厂

    邢台PMS150C厂

    更新时间:2025-04-02   浏览数:124
    所属行业:电子 电子产品设计
    发货地址:广东省深圳市南山区  
    产品数量:9999.00个
    价格:¥0.10 元/个 起
    艾拓微电子科技-** SOP8 PMS150C 应广单片机 PADAUK 闽台 一级代理
    邢台PMS150C厂
    深圳市艾拓微电子有限公司低价销售PMS150C系列 闽台应广单片机 一级代理 批发 优惠价 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;
    }
    //================================================================================
    邢台PMS150C厂
    PMS150C系列 闽台应广单片机 一级代理 批发 优惠价 PADAUK
    1. 特点:
    ◆工作模式:单一处理单元的工作模式
    ◆提供 79 条指令
    ◆绝大部分指令都是单周期(1T)指令
    ◆可程序设定的堆栈深度
    ◆所有的数据存储器都可当数据指针(index pointer)
    ◆IO 地址以及存储地址空间互相立
    2. 系统功能和方框图:
    ◆1KW OTP 程序内存
    ◆64 字节数据存储器
    ◆硬件 16 位定时器
    ◆1 个 8 位硬件 PWM 生成器
    ◆1 个通用比较器
    ◆ 快速唤醒功能
    ◆每个引脚都可弹性设定唤醒功能
    ◆6 个带输入上拉电阻 IO 引脚,且做输出时具有可选的电流驱动能力
    ◆ 时钟模式:内部高频振荡器、内部低频振荡器
    ◆ 8 级 LVR 可选
    ◆1 个外部中断输入引脚
    3工作范围:
    ◆电源电压 ………………………………...... 2.0V ~ 5.5V(高 5.5V)
    如果输入电压高过 5.5V,可能造成 IC 损坏
    ◆输入电压 ………………………………..... -0.3V ~ V DD + 0.3V
    ◆工作温度 ………………..………………… -20°C ~ 70°C
    ◆储藏温度 ……………………………..…… -50°C ~ 125°C
    ◆结点温度 ……………………………..…… 150°C
    4. 重要声明:
    PMS150C 不适用于交流供电阻容降压或者电源纹波大, 要求高的应用, 要 求高的应用, 请注意不要将PMS150C 用于这种要求的产品中。
    http://atw2014.cn.b2b168.com