/****************temic*********t5557***********************************/ #include <at892051.h> #include <string.h> #include <intrins.h> #include <stdio.h> #define uchar unsigned char #define uint unsigned int #define ulong unsigned long //STC12C2051AD的SFR定义 sfr WDT_CONTR = 0xe1;//stc2051的看门狗?????? /**********全局常量************/ //写卡的命令 #define write_command0 0//写密码 #define write_command1 1//写配置字 #define write_command2 2//密码写数据 #define write_command3 3//唤醒 #define write_command4 4//停止命令 #define TRUE 1 #define FALSE 0 #define OK 0 #define ERROR 255 //读卡的时间参数us #define ts_min 250//270*11.0592/12=249//取近似的整数 #define ts_max 304//330*11.0592/12=304 #define t1_min 73//90*11.0592/12=83:-10调整 #define t1_max 156//180*11.0592/12=166 #define t2_min 184//210*11.0592/12=194 #define t2_max 267//300*11.0592/12=276 //***********不采用中断处理:采用查询的方法读卡时关所有中断****************/ sbit p_U2270B_Standby = P3^5;//p_U2270B_Standby PIN=13 sbit p_U2270B_CFE = P3^3;//p_U2270B_CFE PIN=6 sbit p_U2270B_OutPut = P3^7;//p_U2270B_OutPut PIN=2 sbit wtd_sck = P1^7;//SPI总线 sbit wtd_si = P1^3; sbit wtd_so = P1^2; sbit iic_data = P1^2;//lcd IIC sbit iic_clk = P1^7; sbit led_light = P1^6;//测试绿灯 sbit led_light1 = P1^5;//测试红灯 sbit led_light_ok = P1^1;//读卡成功标志 sbit fengmingqi = P1^5; /***********全局变量************************************/ uchar data Nkey_a[4] = {0xA0, 0xA1, 0xA2, 0xA3};//初始密码 //uchar idata card_snr[4]; //配置字 uchar data bankdata[28] = {1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7}; //存储卡上用户数据(1-7)7*4=28 uchar data cominceptbuff[6] = {1,2,3,4,5,6};//串口接收数组ram uchar command; //第一个命令 uchar command1;// //uint temp; uchar j,i; uchar myaddr = 8; //uchar ywqz_count,time_count; //ywqz jishu: uchar bdata DATA; sbit BIT0 = DATA^0; sbit BIT1 = DATA^1; sbit BIT2 = DATA^2; sbit BIT3 = DATA^3; sbit BIT4 = DATA^4; sbit BIT5 = DATA^5; sbit BIT6 = DATA^6; sbit BIT7 = DATA^7; uchar bdata DATA1; sbit BIT10 = DATA1^0; sbit BIT11 = DATA1^1; sbit BIT12 = DATA1^2; sbit BIT13 = DATA1^3; sbit BIT14 = DATA1^4; sbit BIT15 = DATA1^5; sbit BIT16 = DATA1^6; sbit BIT17 = DATA1^7; bit i_CurrentLevel;//i_CurrentLevel BIT 00H(Saves current level of OutPut pin of U2270B) bit timer1_end; bit read_ok = 0; //缓存定时值,因用同一个定时器 union HLint { uint W; struct { uchar H;uchar L; } B; };//union HLint idata a union HLint data a; //缓存定时值,因用同一个定时器 union HLint0 { uint W; struct { uchar H; uchar L; } B; };//union HLint idata a union HLint0 data b; /**********************函数原型*****************/ //读写操作 void f_readcard(void);//全部读出1~7 AOR唤醒 void f_writecard(uchar x);//根据命令写不同的内容和操作 void f_clearpassword(void);//清除密码 void f_changepassword(void);//修改密码 //功能子函数 void write_password(uchar data *data p);//写初始密码或数据 void write_block(uchar x,uchar data *data p);//不能用通用指针 void write_bit(bit x);//写位 /*子函数区*****************************************************/ void delay_2(uint x) //延时,时间x*10us@12mhz,最小20us@12mhz { x--; x--; while(x) { _nop_(); _nop_(); x--; } _nop_();//WDT_CONTR=0X3C;不能频繁的复位 _nop_(); } ///////////////////////////////////////////////////////////////////// void initial(void) { SCON = 0x50; //串口方式1,允许接收 //SCON =0x50; //01010000B:10位异步收发,波特率可变,SM2=0不用接收到有效停止位才RI=1, //REN=1允许接收 TMOD = 0x21; //定时器1 定时方式2(8位),定时器0 定时方式1(16位) TCON = 0x40; //设定时器1 允许开始计时(IT1=1) TH1 = 0xfD; //FB 18.432MHz 9600 波特率 TL1 = 0xfD; //fd 11.0592 9600 IE = 0X90; //EA=ES=1 TR1 = 1; //启动定时器 WDT_CONTR = 0x3c;//使能看门狗 p_U2270B_Standby = 0;//单电源 PCON = 0x00; IP = 0x10;//uart you xian XXXPS PT1 PX1 PT0 PX0 led_light1 = 1; led_light = 0; p_U2270B_OutPut = 1; } /************************************************/ void f_readcard()//读卡 { EA = 0;//全关,防止影响跳变的定时器计时 WDT_CONTR = 0X3C;//喂狗 p_U2270B_CFE = 1;// delay_2(232); //>2.5ms /* // aor 用唤醒功能来防碰撞 p_U2270B_CFE = 0; delay_2(18);//start gap>150us write_bit(1);//10=操作码读0页 write_bit(0); write_password(&bankdata[24]);//密码block7 p_U2270B_CFE =1 ;// delay_2(516);//编程及确认时间5.6ms */ WDT_CONTR = 0X3C;//喂狗 led_light = 0; b.W = 0; while(!(read_ok == 1)) { //while(p_U2270B_OutPut);//等一个稳定的低电平?超时判断? while(!p_U2270B_OutPut);//等待上升沿的到来同步信号检测1 TR0 = 1; //deng xia jiang while(p_U2270B_OutPut);//等待下降沿 TR0 = 0; a.B.H = TH0; a.B.L = TL0; TH0 = TL0 = 0; TR0 = 1;//定时器晚启动10个周期 //同步头 if((324 < a.W) && (a.W < 353)) ;//检测同步信号1 else { TR0 = 0; TH0 = TL0 = 0; goto read_error; } //等待上升沿 while(!p_U2270B_OutPut); TR0 = 0; a.B.H = TH0; a.B.L = TL0; TH0 = TL0 = 0; TR0 = 1;//b.N1<<=8; if(a.B.L < 195);//0.5p else { TR0 = 0; TH0 = TL0 = 0; goto read_error; } //读0~7块的数据 for(j = 0;j < 28;j++) { //uchar i; for(i = 0;i < 16;i++)//8个位 { //等待下降沿的到来 while(p_U2270B_OutPut); TR0 = 0; a.B.H = TH0; a.B.L = TL0; TH0 = TL0 = 0; TR0 = 1; if(t2_max < a.W/*)&&(a.W < t2_max)*/)//1P { b.W >>= 2;//先左移再赋值 b.B.L += 0xc0; i++; } else if(t1_min < a.B.L/*)&&(a.B.L < t1_max)*/)//0.5p { b.W >>= 1; b.B.L += 0x80; } else { TR0 = 0; TH0 = TL0 = 0; goto read_error; } i++; while(!p_U2270B_OutPut);//上升 TR0 = 0; a.B.H = TH0; a.B.L = TL0; TH0 = TL0 = 0; TR0 = 1; if(t2_min < a.W/*)&&(a.W < t2_max)*/)//1P { b.W >>= 2; i++; } else if(t1_min < a.B.L/*a.W)&&(a.B.L < t1_max)*/)//0.5P //else if(!(a.W==0)) { b.W >>= 1; //temp+=0x00; //led_light1=0;led_light=1;delay_2(40000); } else { TR0 = 0; TH0 = TL0 = 0; goto read_error; } i++; } //取出奇位 DATA = b.B.L; BIT13 = BIT7; BIT12 = BIT5; BIT11 = BIT3; BIT10 = BIT1; DATA = b.B.H; BIT17 = BIT7; BIT16 = BIT5; BIT15 = BIT3; BIT14 = BIT1; bankdata[j] = DATA1; } read_ok = 1;//读卡完成了 read_error: _nop_(); } } /***************************************************/ void f_writecard(uchar x)//写卡 { p_U2270B_CFE = 1; delay_2(232); //>2.5ms //psw=0 standard write if (x == write_command0)//写密码:初始化密码 { uchar i; uchar data *data p; p = cominceptbuff; p_U2270B_CFE = 0; delay_2(31);//start gap>330us write_bit(1);//写操作码1:10 write_bit(0);//写操作码0 write_bit(0);//写锁定位0 for(i = 0;i < 35;i++) { write_bit(1);//写数据位1 } p_U2270B_CFE = 1; led_light1 = 0; led_light = 1; delay_2(40000);//测试使用 //write_block(cominceptbuff[4],p); p_U2270B_CFE = 1; bankdata[20] = cominceptbuff[0];//密码存入 bankdata[21] = cominceptbuff[1]; bankdata[22] = cominceptbuff[2]; bankdata[23] = cominceptbuff[3]; } else if (x == write_command1)//配置卡参数:初始化 { uchar data *data p; p = cominceptbuff; write_bit(1);//写操作码1:10 write_bit(0);//写操作码0 write_bit(0);//写锁定位0 write_block(cominceptbuff[4],p); p_U2270B_CFE= 1; } //psw=1 pssword mode else if(x == write_command2) //密码写数据 { uchar data*data p; p = &bankdata[24]; write_bit(1);//写操作码1:10 write_bit(0);//写操作码0 write_password(p);//发口令 write_bit(0);//写锁定位0 p = cominceptbuff; write_block(cominceptbuff[4],p);//写数据 } else if(x == write_command3)//aor //唤醒 { //cominceptbuff[1]操作码10 X xxxxxB uchar data *data p; p = cominceptbuff; write_bit(1);//10 write_bit(0); write_password(p);//密码 p_U2270B_CFE = 1;//此时数据不停的循环传出 } else //停止操作码 { write_bit(1);//11 write_bit(1); p_U2270B_CFE = 1; } p_U2270B_CFE = 1; delay_2(560);//5.6ms } /************************************/ void f_clearpassword()//清除密码 { uchar data *data p; uchar i,x; p = &bankdata[24];//原密码 p_U2270B_CFE = 0; delay_2(18);//start gap>150us //操作码10:10xxxxxxB write_bit(1); write_bit(0); for(x = 0;x < 4;x++)//发原密码 { DATA = *(p++); for(i = 0;i < 8;i++) { write_bit(BIT0); DATA >>= 1; } } write_bit(0);//锁定位0:0 p = &cominceptbuff[0]; write_block(0x00,p);//写新配置参数:pwd=0 //密码无效:即清除密码 DATA = 0x00;//停止操作码00000000B for(i = 0;i < 2;i++) { write_bit(BIT7); DATA <<= 1; } p_U2270B_CFE = 1; delay_2(560);//5.6ms } /*********************************/ void f_changepassword()//修改密码 { uchar data *data p; uchar i,x,addr; addr = 0x07;//block7 p = &Nkey_a[0];//原密码 DATA = 0x80;//操作码10:10xxxxxxB for(i = 0;i < 2;i++) { write_bit(BIT7); DATA <<= 1; } for(x = 0;x < 4;x++)//发原密码 { DATA = *(p++); for(i = 0;i < 8;i++) { write_bit(BIT7); DATA >>= 1; } } write_bit(0);//锁定位0:0 p = &cominceptbuff[0]; write_block(0x07,p);//写新密码 p_U2270B_CFE = 1; bankdata[24] = cominceptbuff[0];//密码存入 bankdata[25] = cominceptbuff[1]; bankdata[26] = cominceptbuff[2]; bankdata[27] = cominceptbuff[3]; DATA = 0x00;//停止操作码00000000B for(i = 0;i < 2;i++) { write_bit(BIT7); DATA <<= 1; } p_U2270B_CFE = 1; delay_2(560);//5.6ms } /***************************子函数***********************************/ void write_bit(bit x)//写一位 { if(x) { p_U2270B_CFE = 1; delay_2(32);//448*11.0592/120=42延时448us p_U2270B_CFE = 0; delay_2(28);//280*11.0592/120=26写1 } else { p_U2270B_CFE = 1; delay_2(92);//192*11.0592/120=18 p_U2270B_CFE = 0; delay_2(28);//280*11.0592/120=26写0 } } /*******************写一个block*******************/ void write_block(uchar addr,uchar data *data p) { uchar i,j; for(i = 0;i < 4;i++)//block0数据 { DATA = *(p++); for(j = 0;j < 8;j++) { write_bit(BIT0); DATA >>= 1; } } DATA = addr <<= 5;//0地址 for(i = 0;i < 3;i++) { write_bit(BIT7); DATA <<= 1; } } /*************************************************/ void write_password(uchar data *data p) { uchar i,j; for(i = 0;i < 4;i++)// { DATA = *(p++); for(j = 0;j < 8;j++) { write_bit(BIT0); DATA >>= 1; } } } /*************************************************/ void main() { initial(); TI = RI = 0; ES = 1; EA = 1; delay_2(28); //f_readcard(); while(1) { f_readcard(); //读卡 f_writecard(command1); //写卡 f_clearpassword(); //清除密码 f_changepassword(); //修改密码 } }
标签: 12345
上传时间: 2017-10-20
上传用户:my_lcs
产品型号:VK3604A 产品品牌:VINKA/永嘉微电 封装形式:SOP16 产品年份:新年份 联 系 人:陈锐鸿 Q Q:361 888 5898 联系手机:188 2466 2436(信) 概述: VK3604/VK3604A具有4个触摸按键,可用来检测外部触摸按键上人手的触摸动作。该芯片具有较高的 集成度,仅需极少的外部组件便可实现触摸按键的检测。 提供了4路输出功能,可通过IO脚选择输出电平,输出模式,输出脚结构,单键/多键和最 长输出时间。芯片内部采用特殊的集成电路,具有高电源电压抑制比,可减少按键检测错误的 发生,此特性保证在不利环境条件的应用中芯片仍具有很高的可靠性。 此触摸芯片具有自动校准功能,低待机电流,抗电压波动等特性,为各种触摸按键+IO输 出的应用提供了一种简单而又有效的实现方法。 特点: • 工作电压 2.4-5.5V • 待机电流7uA/3.3V,14uA/5V • 上电复位功能(POR) • 低压复位功能(LVR) • 触摸输出响应时间:工作模式 48mS ,待机模式160mS • 通过AHLB脚选择输出电平:高电平有效或者低电平有效 • 通过TOG脚选择输出模式:直接输出或者锁存输出 • 通过SOD脚选择输出方式:CMOS输出或者开漏输出 • 通过SM脚选择输出:多键有效或者单键有效 • 通过MOT脚有效键最长输出时间:无穷大或者16S • 通过CS脚接对地电容调节整体灵敏度(1-47nF) • 各触摸通道单独接对地小电容微调灵敏度(0-50pF) • 上电0.25S内为稳定时间,禁止触摸 • 上电后4S内自校准周期为64mS,4S无触摸后自校准周期为1S • 封装SOP16(150mil)(9.9mm x 3.9mm PP=1.27mm) ———————————————— 产品型号:VK3604B 产品品牌:VINKA/永嘉微电 封装形式:TSSOP16 产品年份:新年份 联 系 人:陈锐鸿 1.概述 VK3604B具有4个触摸按键,可用来检测外部触摸按键上人手的触摸动作。该芯片具有 较高的集成度,仅需极少的外部组件便可实现触摸按键的检测。 提供了4路直接输出功能。芯片内部采用特殊的集成电路,具有高电源电压抑制比,可 减少按键检测错误的发生,此特性保证在不利环境条件的应用中芯片仍具有很高的可靠性。 此触摸芯片具有自动校准功能,低待机电流,抗电压波动等特性,为各种触摸按键+IO 输出的应用提供了一种简单而又有效的实现方法。 特点 • 工作电压 2.4-5.5V • 待机电流7uA/3.3V,14uA/5V • 上电复位功能(POR) • 低压复位功能(LVR) • 触摸输出响应时间: 工作模式 48mS 待机模式160mS • CMOS输出,低电平有效,支持多键 • 有效键最长输出16S • 无触摸4S自动校准 • 专用脚接对地电容调节灵敏度(1-47nF) • 各触摸通道单独接对地小电容微调灵敏度(0-50pF). • 上电0.25S内为稳定时间,禁止触摸. • 封装 TSSOP16L(4.9mm x 3.9mm PP=1.00mm) KPP841 标准触控IC-电池供电系列: VKD223EB --- 工作电压/电流:2.0V-5.5V/5uA-3V 感应通道数:1 通讯界面 最长回应时间快速模式60mS,低功耗模式220ms 封装:SOT23-6 VKD223B --- 工作电压/电流:2.0V-5.5V/5uA-3V 感应通道数:1 通讯界面 最长回应时间快速模式60mS,低功耗模式220ms 封装:SOT23-6 VKD233DB --- 工作电压/电流:2.4V-5.5V/2.5uA-3V 1感应按键 封装:SOT23-6 通讯界面:直接输出,锁存(toggle)输出 低功耗模式电流2.5uA-3V VKD233DH ---工作电压/电流:2.4V-5.5V/2.5uA-3V 1感应按键 封装:SOT23-6 通讯界面:直接输出,锁存(toggle)输出 有效键最长时间检测16S VKD233DS --- 工作电压/电流:2.4V-5.5V/2.5uA-3V 1感应按键 封装:DFN6(2*2超小封装) 通讯界面:直接输出,锁存(toggle)输出 低功耗模式电流2.5uA-3V VKD233DR --- 工作电压/电流:2.4V-5.5V/1.5uA-3V 1感应按键 封装:DFN6(2*2超小封装) 通讯界面:直接输出,锁存(toggle)输出 低功耗模式电流1.5uA-3V VKD233DG --- 工作电压/电流:2.4V-5.5V/2.5uA-3V 1感应按键 封装:DFN6(2*2超小封装) 通讯界面:直接输出,锁存(toggle)输出 低功耗模式电流2.5uA-3V VKD233DQ --- 工作电压/电流:2.4V-5.5V/5uA-3V 1感应按键 封装:SOT23-6 通讯界面:直接输出,锁存(toggle)输出 低功耗模式电流5uA-3V VKD233DM --- 工作电压/电流:2.4V-5.5V/5uA-3V 1感应按键 封装:SOT23-6 (开漏输出) 通讯界面:开漏输出,锁存(toggle)输出 低功耗模式电流5uA-3V VKD232C --- 工作电压/电流:2.4V-5.5V/2.5uA-3V 感应通道数:2 封装:SOT23-6 通讯界面:直接输出,低电平有效 固定为多键输出模式,内建稳压电路 MTP触摸IC——VK36N系列抗电源辐射及手机干扰: VK3601L --- 工作电压/电流:2.4V-5.5V/4UA-3V3 感应通道数:1 1对1直接输出 待机电流小,抗电源及手机干扰,可通过CAP调节灵敏 封装:SOT23-6 VK36N1D --- 工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:1 1对1直接输出 触摸积水仍可操作,抗电源及手机干扰,可通过CAP调节灵敏封装:SOT23-6 VK36N2P --- 工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:2 脉冲输出 触摸积水仍可操作,抗电源及手机干扰,可通过CAP调节灵敏封装:SOT23-6 VK3602XS ---工作电压/电流:2.4V-5.5V/60UA-3V 感应通道数:2 2对2锁存输出 低功耗模式电流8uA-3V,抗电源辐射干扰,宽供电电压 封装:SOP8 VK3602K --- 工作电压/电流:2.4V-5.5V/60UA-3V 感应通道数:2 2对2直接输出 低功耗模式电流8uA-3V,抗电源辐射干扰,宽供电电压 封装:SOP8 VK36N2D --- 工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:2 1对1直接输出 触摸积水仍可操作,抗电源及手机干扰,可通过CAP调节灵敏封装:SOP8 VK36N3BT ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:3 BCD码锁存输出 触摸积水仍可操作,抗电源及手机干扰,可通过CAP调节灵敏 封装:SOP8 VK36N3BD ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:3 BCD码直接输出 触摸积水仍可操作,抗电源及手机干扰,可通过CAP调节灵敏 封装:SOP8 VK36N3BO ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:3 BCD码开漏输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP8/DFN8(超小超薄体积) VK36N3D --- 工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:3 1对1直接输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N4B ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:4 BCD输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N4I---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:4 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N5D ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:5 1对1直接输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N5B ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:5 BCD输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N5I ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:5 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N6D --- 工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:6 1对1直接输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N6B ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:6 BCD输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N6I ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:6 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N7B ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:7 BCD输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N7I ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:7 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N8B ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:8 BCD输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N8I ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:8 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N9I ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:9 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) VK36N10I ---工作电压/电流:2.2V-5.5V/7UA-3V3 感应通道数:10 I2C输出 触摸积水仍可操作,抗电源及手机干扰 封装:SOP16/DFN16(超小超薄体积) 1-8点高灵敏度液体水位检测IC——VK36W系列 VK36W1D ---工作电压/电流:2.2V-5.5V/10UA-3V3 1对1直接输出 水位检测通道:1 可用于不同壁厚和不同水质水位检测,抗电源/手机干扰封装:SOT23-6 备注:1. 开漏输出低电平有效 2、适合需要抗干扰性好的应用 VK36W2D ---工作电压/电流:2.2V-5.5V/10UA-3V3 1对1直接输出 水位检测通道:2 可用于不同壁厚和不同水质水位检测,抗电源/手机干扰封装:SOP8 备注:1. 1对1直接输出 2、输出模式/输出电平可通过IO选择 VK36W4D ---工作电压/电流:2.2V-5.5V/10UA-3V3 1对1直接输出 水位检测通道:4 可用于不同壁厚和不同水质水位检测,抗电源/手机干扰封装:SOP16/DFN16 备注:1. 1对1直接输出 2、输出模式/输出电平可通过IO选择 VK36W6D ---工作电压/电流:2.2V-5.5V/10UA-3V3 1对1直接输出 水位检测通道:6 可用于不同壁厚和不同水质水位检测,抗电源/手机干扰封装:SOP16/DFN16 备注:1. 1对1直接输出 2、输出模式/输出电平可通过IO选择 VK36W8I ---工作电压/电流:2.2V-5.5V/10UA-3V3 I2C输出 水位检测通道:8 可用于不同壁厚和不同水质水位检测,抗电源/手机干扰封装:SOP16/DFN16 备注:1. IIC+INT输出 2、输出模式/输出电平可通过IO选择 KPP841
标签: 3604 输出 VK 体积 蓝牙音箱 检测 方式 芯片 触控 锁存
上传时间: 2022-04-11
上传用户:shubashushi66
在马达控制类应用中,正交编码器可以反馈马达的转子位置及转速信号.TM32F10x系列MCU集成了正交编码器接口,增量编码器可与MCU直接连接而无需外部接口电路。该应用笔记详细介绍了STM32F1Ox与正交编码器的接口,并附有相应的例程,使用户可以很快地掌握其使用方法.1正交编码器原理正交编码器实际上就是光电编码器,分为增量式和绝对式,较其它检测元件有直接输出数字量信号,惯量低,低噪声,高精度,高分辨率,制作简便,成本低等优点。增量式编码器结构简单,制作容易,一般在码盘上刻A.B.Z三道均匀分布的刻线,由于其给出的位置信息是增量式的,当应用于伺服领域时需要初始定位格雷码绝对式编码器一般都做成循环二进制代码,码道道数与二进制位数相同。格富码绝对式编码器可直接输出转子的绝对位置,不需要测定初始位置,但其工艺复杂、成本高,实现高分辨率、高精度较为困难。本文主要针对增量式正交编码器,它产生两个方波信号A和B,它们相差+-90.其符号由转动方向决定。如下图所示:图1:增量式正交编码器输出信号波形2 STM32F10x正交编码器接口详述STM32F10x的所有通用定时器及高级定时器都集成了正交编码器接口,定时器的两个输入TII和TI2直接与增量式正交编码器接口,当定时器设为正交编码器模式时,这两个信号的边沿作为计数器的时钟,而正交编码器的第三个输出(机械零位),可连接外部中断口来触发定时器的计数器复位.
上传时间: 2022-06-18
上传用户:zhanglei193
ASR M08-B设置软件 V3.2 arduino 2560+ASRM08-B测试程序 arduino UNO+ASRM08-B测试程序语音控制台灯电路图及C51源码(不带校验码) 继电器模块设置。 ASR M08-B是一款语音识别模块。首先对模块添加一些关键字,对着该模块说出关键字,串口会返回三位的数,如果是返回特定的三位数字,还会引起ASR M08-B的相关引脚电平的变化。【测试】①打开“ASR M08-B设置软件 V3.2.exe”。②选择“串口号”、“打开串口”、点选“十六进制显示”。③将USB转串口模块连接到语音识别模块上。接线方法如下:语音模块TXD --> USB模块RXD语音模块RXD --> USB模块TXD语音模块GND --> USB模块GND语音模块3V3 --> USB模块3V3(此端为3.3V电源供电端。)④将模块的开关拨到“A”端,最好再按一次上面的大按钮(按一次即可,为了确保模块工作在正确的模式)。⑤对着模块说“开灯”、“关灯”模块会返回“0B”、“0A”,表示正常(注意:0B对应返回值010,0B对应返回值010,返回是16进制显示的嘛,设置的时候是10进制设置的)。
标签: ASR M08-B
上传时间: 2022-07-06
上传用户:aben
HX711是一款专为高精度电子秤而设计的24位A/D转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。降低了电子秤的整机成本,提高了整机的性能和可靠性。该芯片与后端MCU 芯片的接口和编程非常简单,所有控制信号由管脚驱动,无需对芯片内部的寄存器编程。输入选择开关可任意选取通道A 或通道B,与其内部的低噪声可编程放大器相连。通道A 的可编程增益为128 或64,对应的满额度差分输入信号幅值分别为±20mV或±40mV。通道B 则为固定的64 增益,用于系统参数检测。芯片内提供的稳压电源可以直接向外部传感器和芯片内的A/D 转换器提供电源,系统板上无需另外的模拟电源。芯片内的时钟振荡器不需要任何外接器件。上电自动复位功能简化了开机的初始化过程。
上传时间: 2022-07-24
上传用户:
eeworm.com VIP专区 单片机源码系列 70资源包含以下内容:1. 基于凌阳单片机控制的简易智能电动车设计.pdf2. 便携式智能仪器仪表的低功耗技术.pdf3. 水位监测报警系统(电子设计竞赛题目).rar4. Keil C51单片机/arm开发工具 V8.02.exe5. 水位监测报警系统原理.doc6. Keil C51编译器用户手册 中文版.zip7. 水位监测报警器(显示部分).doc8. 数字密码锁设计(电子密码锁制作论文).pdf9. 水位监测报警系统.doc10. 微处理器基础知识(pdf教程).zip11. 水位报警器设计与制作论文.doc12. 汉字字库的点阵提取程序.zip13. uC/GUI在MCS51系列单片机系统上移植的仿真实现.pdf14. 串口调试软件SSCOMV3.0.rar15. 基于U盘的单片机低功耗海量存储系统.pdf16. 8051系列单机编辑调试仿真器(8051模拟器).zip17. 基于DS80C410串口至以太网接口转换器的实现.pdf18. 单片机程序远程升级的设计.pdf19. 基于MSP430行驶车辆检测器的设计.pdf20. 同地弹现象的分析和讲解.doc21. 基于AVR单片机的电力投切装置开发.pdf22. ATM的基本原理.pdf23. 基于PIC单片机的低功耗读卡器硬件设计.pdf24. 基于MSP430的小型望远镜防抖系统设计.pdf25. ATM专题教材.pdf26. 基于智能控制技术的新型温控系统的研究.pdf27. The 8051 Microcontroller.pdf28. 芯源电子单片机教程(中文版).rar29. 基于中颖SH79F164单片机的电子血压计应用.pdf30. 抽样z变换频率抽样理论.ppt31. CoPIC 5X PIC16C5X/12C5XX单片机生产用.pdf32. 8051单片机指令系统,计算机的指令系统.ppt33. 离散傅里叶变换,(DFT)Direct Fouriet Tr.ppt34. Smith控制算法仿真与控制.rar35. 单片机指令系统.rar36. 如何导入ASM文件到工程(视频教程).rar37. PC机与单片机通信实例-表决器.pdf38. 8086指令系统.pdf39. 单片开关电源最新应用技术.rar40. SOC与单片机应用技术的发展.pdf41. SPCE061A指令系统.rar42. 安规设计注意事项.pdf43. Proteus Professional 7.1 sp2 中.rar44. Keil C51使用详解.pdf45. 单片机仿真软件.rar46. C51基本语法.ppt47. 八段码显示程序设计与调试.ppt48. 单片机接口技术(C51版)例程源代码.rar49. C51基本结构程序设计.ppt50. 波形发生器,含原理图+电路图+源程序.rar51. 单片机接口技术(C51版)课件.rar52. PIC单片机设计电子密码锁.rar53. 微机接口课件.rar54. 单片机原理与应用实验讲义.rar55. 微型机算计发展概述.ppt56. 用单片机AT89C51改造普通双桶洗衣机.rar57. 多功能高集成外围器件.ppt58. 用AT89C2051单片机制作的数字电容表.rar59. 可编程中断控制器82C59A-2.ppt60. 汇编指令查询器V1.20版.rar61. 高性能可编程DMA控制接口82C37A-5.ppt62. 用单片机制作多功能莫尔斯码电路.rar63. CHMOS可编程时间间隔定时器芯片82C54.ppt64. 一种实用的微机自动配料秤系统.pdf65. 可编程外围接口82C55A.ppt66. 单片机开发工程案例分析与解析.rar67. 基于单片机的车辆识别装置.doc68. 基于单片机控制的二氧化碳浓度测试计.pdf69. 51单片机播放音乐编码程序 ,music encodeV1..rar70. 微机灯光控制系统.doc71. 单片机音乐中音调和节拍的确定方法.rar72. AVR单片机GCC程序设计.rar73. 电子密码锁的设计与实现.doc74. 数字钟显示电路.rar75. 车用分布式OSEK系统的实时诊断平台研究.pdf76. PC机之间串口通信的实现.doc77. 单片机电子表原理图和程序代码 (PCB电路).rar78. 基于CAN的OSEK COM规范研究与实现.pdf79. 多路电压采集系统.doc80. μ’nSP单片机应用及开发技术.pdf81. MPC555的发动机电控单元小系统设计.pdf82. 基于PC机的电子琴设计.doc83. TEA1504开关电源低功耗控制芯片的应用.pdf84. 采用Infinenon C166系列单片机的CAN系统解决方.pdf85. 单片机系统软件抗干扰方法.pdf86. 新颖实用的单片机双积分A/D转换电路和软件.pdf87. 带键盘扫描和LED/LCD驱动显示板设计及源程序.rar88. 单片机系统常用软件抗干扰措施.pdf89. 单片机ad转换电路.pdf90. 单片机游戏大全.rar91. 单片机复位标志位的设置与应用研究.pdf92. 交通灯控制器的设计与实现.doc93. 自制多功能编程器.rar94. MCS51系列单片机软件控制复位的可靠方法.pdf95. 给初学单片机的40个实验(含电路图和源程序).rar96. 改善基于微控制器的应用的瞬态免疫性能.rar97. 基于单片机的红外门进控制系统设计与制作(含源程序和原理图).doc98. 51单片机工程师实例设计程序集-(20种常见应用整编).rar99. 深入讨论HCS08的内部时钟源模块.pdf100. 基于CPLD的单片机PCI接口设计.pdf
标签: 通信原理
上传时间: 2013-04-15
上传用户:eeworm
VIP专区-嵌入式/单片机编程源码精选合集系列(156)资源包含以下内容:1. 《嵌入式应用程序开发综合试验9例》含有9个嵌入式应用实践源程序。.2. NiosII NiosII!! SOPC CRC32 SOPC SOPC 自定义外设.3. 一个电话本的程序.4. 嵌入式minigui 中自定义控件的应用实例。不下后悔!.5. minigui 时间控件的使用方法.6. 嵌入式linux 设备驱动程序.7. uart-I2C, working on PIC18F2420.8. 基于mips cpu,在u-boot系统下磁盘驱动程序。.9. 可以应用到IAR EWARM-EV V5.20破解 使用方法: 1:首先用iarid.exe产生ID 2:使用iarkg.exe产生lic文件.10. 嵌入式开发前景和趋势.11. 嵌入式视频有下载器下载方法及一些基本的调试技巧。.12. 同济大学嵌入式学习文档.13. 转载其他网站的资料与大家分享.14. LED点阵显示屏扫描程序.15. altera公司开发销售的DE2开发平台原理图.16. 基于飞斯卡尔MC9S08QG8的基本程序开发代码.17. 本程序中用到DS1302以及液晶等模块.18. 一个垃圾压缩车的PLC程序。采用X端口作为模拟量转换后的数据量输入口。这种方法不需要买模拟量模块.19. 这是一个信号发生器得程序.20. 这个程序可以用作寄存器的使用.21. FAT32文件应用.22. 电源管理代码 基于linux2.6.10!apm方式的电源管理!很好的资料!做arm平台使用.23. I2C zongxian 总线 亲自编译.24. 用Verilog 实现将比特流数据转化为SPI协议数据的适配器.25. 最新F2系列的部分外围模块中文PDF,来自USER GUIDE的翻译.26. 单词计算器,可以统计你输入的单词的字母数有多少个等多个程序.27. FIBER AND wire product designed guider..28. xilin,ise_9.01的使用.29. ISE、Keil_C.30. 一本不错的数字图像处理书(冈萨雷斯中文版)总共有三个压缩文件需要放在一起解压缩.31. miniARM嵌入式web主程序,需要在运行miniarm.32. 单片机操作ocmj12232c-1屏的源代码.33. ISP1582 原理图.34. x-wrt is the GUI config tool for openwrt,which is a open project about wireless Router.35. 首先介绍了合成孔径雷达(SAR)的特点.36. tms320vc5509a usb boot.37. 基于Altera fpga 的软核 nios2的串口调试代码.38. cip51 i2c.39. 此源码为ocm12864系列字符液晶显示模块KEIL uVision3 for ARM.40. 此源码为KEIL uVision3 for ARM 的ocm12864系列字符液晶显示模块。.
上传时间: 2013-06-27
上传用户:eeworm
21世纪大学新型参考教材系列 集成电路B 荒井
上传时间: 2013-04-15
上传用户:eeworm
译码器,编码器,数据选择器,电子开关,电源分册
上传时间: 2013-06-11
上传用户:eeworm
家电维修(最基础的教程B)1-20.Torrent
上传时间: 2013-06-10
上传用户:eeworm