“Huffman-樹”不僅能對(duì)文本數(shù)據(jù)進(jìn)行編碼、譯碼,提高文本數(shù)據(jù)的傳輸效率,同時(shí)它也能對(duì)多媒體數(shù)據(jù)(如:數(shù)字圖像、視頻等)進(jìn)行編碼、譯碼,從而實(shí)現(xiàn)多媒體數(shù)據(jù)的壓縮存儲(chǔ)。目前,在Web互聯(lián)網(wǎng)上廣泛使用的JPEG圖像格式就采用了Huffman編碼,與其他圖像格式(如:BMP、TIF等)相比,同一副圖像采用JPEG格式時(shí)所需的存儲(chǔ)空間是最少的。在這個(gè)實(shí)驗(yàn)中,請(qǐng)?jiān)O(shè)計(jì)一個(gè)Huffman編/譯碼器,并模擬數(shù)字圖像的壓縮存儲(chǔ)(編碼)和解碼顯示(譯碼)的過程。 (1)構(gòu)造“Huffman-樹”: ①讀入一個(gè)大小為N*M(N為圖像的高度,M為圖像的寬度)的灰度圖像塊,該圖像中的每個(gè)像素(元素)的取值范圍是0~255,取值為0表示該像素是“黑色”,取值為255表示該像素是“白色”,其他取值表示介于“黑色”和“白色”之間的灰度值。 ②統(tǒng)計(jì)讀入圖像塊中每種灰度值出現(xiàn)的次數(shù),并去除出現(xiàn)次數(shù)為零的灰度值,以此作為構(gòu)造“Huffman-樹”所需的權(quán)值。 ③說明:在構(gòu)造“Huffman-樹”的過程中,當(dāng)有多個(gè)待合并元素的權(quán)值相同時(shí),每次選擇灰度值較小的兩個(gè)元素進(jìn)行合并。 (2)Huffman編碼(壓縮存儲(chǔ)):讀入新的灰度圖像塊,利用已建立好的“Huffman-樹”對(duì)其進(jìn)行編碼,將圖像的寬度、高度信息和編碼結(jié)果保存到文件(如:compress_image.txt)中,同時(shí)計(jì)算Huffman編碼的壓縮比并輸出。壓縮比的計(jì)算公式如下:壓縮比=原始圖像所需比特?cái)?shù)/壓縮后圖像所需比特?cái)?shù)。 (3)Huffman譯碼(解碼顯示):讀入壓縮存儲(chǔ)的灰度圖像,利用已建立好的“Huffman-樹”對(duì)其進(jìn)行譯碼,將譯碼結(jié)果按照原有寬度、高度還原圖像,并將還原之后的圖像保存到文件(如:decoding_image.txt)中。
標(biāo)簽: 樹
上傳時(shí)間: 2016-12-02
上傳用戶:592595
#include <malloc.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define NULL 0 #define MaxSize 30 typedef struct athletestruct /*運(yùn)動(dòng)員*/ { char name[20]; int score; /*分?jǐn)?shù)*/ int range; /**/ int item; /*項(xiàng)目*/ }ATH; typedef struct schoolstruct /*學(xué)校*/ { int count; /*編號(hào)*/ int serial; /**/ int menscore; /*男選手分?jǐn)?shù)*/ int womenscore; /*女選手分?jǐn)?shù)*/ int totalscore; /*總分*/ ATH athlete[MaxSize]; /**/ struct schoolstruct *next; }SCH; int nsc,msp,wsp; int ntsp; int i,j; int overgame; int serial,range; int n; SCH *head,*pfirst,*psecond; int *phead=NULL,*pafirst=NULL,*pasecond=NULL; void create(); void input () { char answer; head = (SCH *)malloc(sizeof(SCH)); /**/ head->next = NULL; pfirst = head; answer = 'y'; while ( answer == 'y' ) { Is_Game_DoMain: printf("\nGET Top 5 when odd\nGET Top 3 when even"); printf("\n輸入運(yùn)動(dòng)項(xiàng)目序號(hào) (x<=%d):",ntsp); scanf("%d",pafirst); overgame = *pafirst; if ( pafirst != phead ) { for ( pasecond = phead ; pasecond < pafirst ; pasecond ++ ) { if ( overgame == *pasecond ) { printf("\n這個(gè)項(xiàng)目已經(jīng)存在請(qǐng)選擇其他的數(shù)字\n"); goto Is_Game_DoMain; } } } pafirst = pafirst + 1; if ( overgame > ntsp ) { printf("\n項(xiàng)目不存在"); printf("\n請(qǐng)重新輸入"); goto Is_Game_DoMain; } switch ( overgame%2 ) { case 0: n = 3;break; case 1: n = 5;break; } for ( i = 1 ; i <= n ; i++ ) { Is_Serial_DoMain: printf("\n輸入序號(hào) of the NO.%d (0<x<=%d): ",i,nsc); scanf("%d",&serial); if ( serial > nsc ) { printf("\n超過學(xué)校數(shù)目,請(qǐng)重新輸入"); goto Is_Serial_DoMain; } if ( head->next == NULL ) { create(); } psecond = head->next ; while ( psecond != NULL ) { if ( psecond->serial == serial ) { pfirst = psecond; pfirst->count = pfirst->count + 1; goto Store_Data; } else { psecond = psecond->next; } } create(); Store_Data: pfirst->athlete[pfirst->count].item = overgame; pfirst->athlete[pfirst->count].range = i; pfirst->serial = serial; printf("Input name:) : "); scanf("%s",pfirst->athlete[pfirst->count].name); } printf("\n繼續(xù)輸入運(yùn)動(dòng)項(xiàng)目(y&n)?"); answer = getchar(); printf("\n"); } } void calculate() /**/ { pfirst = head->next; while ( pfirst->next != NULL ) { for (i=1;i<=pfirst->count;i++) { if ( pfirst->athlete[i].item % 2 == 0 ) { switch (pfirst->athlete[i].range) { case 1:pfirst->athlete[i].score = 5;break; case 2:pfirst->athlete[i].score = 3;break; case 3:pfirst->athlete[i].score = 2;break; } } else { switch (pfirst->athlete[i].range) { case 1:pfirst->athlete[i].score = 7;break; case 2:pfirst->athlete[i].score = 5;break; case 3:pfirst->athlete[i].score = 3;break; case 4:pfirst->athlete[i].score = 2;break; case 5:pfirst->athlete[i].score = 1;break; } } if ( pfirst->athlete[i].item <=msp ) { pfirst->menscore = pfirst->menscore + pfirst->athlete[i].score; } else { pfirst->womenscore = pfirst->womenscore + pfirst->athlete[i].score; } } pfirst->totalscore = pfirst->menscore + pfirst->womenscore; pfirst = pfirst->next; } } void output() { pfirst = head->next; psecond = head->next; while ( pfirst->next != NULL ) { // clrscr(); printf("\n第%d號(hào)學(xué)校的結(jié)果成績:",pfirst->serial); printf("\n\n項(xiàng)目的數(shù)目\t學(xué)校的名字\t分?jǐn)?shù)"); for (i=1;i<=ntsp;i++) { for (j=1;j<=pfirst->count;j++) { if ( pfirst->athlete[j].item == i ) { printf("\n %d\t\t\t\t\t\t%s\n %d",i,pfirst->athlete[j].name,pfirst->athlete[j].score);break; } } } printf("\n\n\n\t\t\t\t\t\t按任意建 進(jìn)入下一頁"); getchar(); pfirst = pfirst->next; } // clrscr(); printf("\n運(yùn)動(dòng)會(huì)結(jié)果:\n\n學(xué)校編號(hào)\t男運(yùn)動(dòng)員成績\t女運(yùn)動(dòng)員成績\t總分"); pfirst = head->next; while ( pfirst->next != NULL ) { printf("\n %d\t\t %d\t\t %d\t\t %d",pfirst->serial,pfirst->menscore,pfirst->womenscore,pfirst->totalscore); pfirst = pfirst->next; } printf("\n\n\n\t\t\t\t\t\t\t按任意建結(jié)束"); getchar(); } void create() { pfirst = (struct schoolstruct *)malloc(sizeof(struct schoolstruct)); pfirst->next = head->next ; head->next = pfirst ; pfirst->count = 1; pfirst->menscore = 0; pfirst->womenscore = 0; pfirst->totalscore = 0; } void Save() {FILE *fp; if((fp = fopen("school.dat","wb"))==NULL) {printf("can't open school.dat\n"); fclose(fp); return; } fwrite(pfirst,sizeof(SCH),10,fp); fclose(fp); printf("文件已經(jīng)成功保存\n"); } void main() { system("cls"); printf("\n\t\t\t 運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)\n"); printf("輸入學(xué)校數(shù)目 (x>= 5):"); scanf("%d",&nsc); printf("輸入男選手的項(xiàng)目(x<=20):"); scanf("%d",&msp); printf("輸入女選手項(xiàng)目(<=20):"); scanf("%d",&wsp); ntsp = msp + wsp; phead = (int *)calloc(ntsp,sizeof(int)); pafirst = phead; pasecond = phead; input(); calculate(); output(); Save(); }
標(biāo)簽: 源代碼
上傳時(shí)間: 2016-12-28
上傳用戶:150501
#include "iostream" using namespace std; class Matrix { private: double** A; //矩陣A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //為向量b分配空間并初始化為0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //為向量A分配空間并初始化為0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析構(gòu)中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"請(qǐng)輸入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"請(qǐng)輸入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"個(gè):"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分別求得U,L的第一行與第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分別求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"計(jì)算U得:"<<endl; U.Disp(); cout<<"計(jì)算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
標(biāo)簽: 道理特分解法
上傳時(shí)間: 2018-05-20
上傳用戶:Aa123456789
module M_GAUSS !高斯列主元消去法模塊 contains subroutine LINEQ(A,B,X,N) !高斯列主元消去法 implicit real*8(A-Z) integer::I,K,N integer::ID_MAX !主元素標(biāo)號(hào) real*8::A(N,N),B(N),X(N) real*8::AUP(N,N),BUP(N) !A,B為增廣矩陣 real*8::AB(N,N+1) real*8::VTEMP1(N+1),VTEMP2(N+1) AB(1:N,1:N)=A AB(:,N+1)=B
標(biāo)簽: fortan Newton 程序 數(shù)值分析 方程 非線性
上傳時(shí)間: 2018-06-15
上傳用戶:answer123
設(shè)有n=2k個(gè)運(yùn)動(dòng)員要進(jìn)行網(wǎng)球循環(huán)賽?,F(xiàn)要設(shè)計(jì)一個(gè)滿足以下要求的比賽日程表:⑴每個(gè)選手必須與其他n-1個(gè)選手各賽一次;⑵每個(gè)選手一天只能賽一次;⑶循環(huán)賽一共進(jìn)行n-1天。按此要求可將比賽日程表設(shè)計(jì)-成有n行和n-l列的一個(gè)表。在表中第i行和第j列處填入第i個(gè)選手在第j天所遇到的選手。用分治法編寫為該循環(huán)賽設(shè)計(jì)一張比賽日程表的算法并運(yùn)行實(shí)現(xiàn)、對(duì)復(fù)雜度進(jìn)行分析。
標(biāo)簽: 算法 實(shí)驗(yàn)指導(dǎo)書 設(shè)計(jì)與分析
上傳時(shí)間: 2019-06-04
上傳用戶:594551562
為了增加公司收入,F(xiàn) 公司新開設(shè)了物流業(yè)務(wù)。由于 F 公司在業(yè)界的良好口碑,物流業(yè)務(wù)一開通即受到了消費(fèi)者的歡迎,物流業(yè)務(wù)馬上遍及了城市的每條街道。然而,F(xiàn) 公司現(xiàn)在只安排了小明一個(gè)人負(fù)責(zé)所有街道的服務(wù)。 任務(wù)雖然繁重,但是小明有足夠的信心,他拿到了城市的地圖,準(zhǔn)備研究最好的方案。城市中有 n 個(gè)交叉路口,m 條街道連接在這些交叉路口之間,每條街道的首尾都正好連接著一個(gè)交叉路口。除開街道的首尾端點(diǎn),街道不會(huì)在其他位置與其他街道相交。每個(gè)交叉路口都至少連接著一條街道,有的交叉路口可能只連接著一條或兩條街道。 小明希望設(shè)計(jì)一個(gè)方案,從編號(hào)為1的交叉路口出發(fā),每次必須沿街道去往街道另一端的路口,再從 新的路口出發(fā)去往下一個(gè)路口,直到所有的街道都經(jīng)過了正好一次。 輸入數(shù)據(jù)格式: 輸入的第一行包含兩個(gè)整數(shù)n, m(1≤n≤10, n-1≤m≤20),表示交叉路口的數(shù)量和街道的數(shù)量,交叉 路口從1到n標(biāo)號(hào)。 接下來m行,每行兩個(gè)整數(shù)a, b,表示和標(biāo)號(hào)為a的交叉路口和標(biāo)號(hào)為b的交叉路口之間有一條街道, 街道是雙向的,小明可以從任意一端走向另一端。兩個(gè)路口之間最多有一條街道。 輸出輸出格式: 如果小明可以經(jīng)過每條街道正好一次,則輸出一行包含m+1個(gè)整數(shù)p1, p2, p3, ..., pm+1,表示小明經(jīng)過的路口的順序,相鄰兩個(gè)整數(shù)之間用一個(gè)空格分隔。如果有多種方案滿足條件,則輸出字典序最小的一種方案,即首先保證p1最小,p1最小的前提下再保證p2最小,依此類推。 如果不存在方案使得小明經(jīng)過每條街道正好一次,則輸出一個(gè)整數(shù)-1。
標(biāo)簽: 代碼
上傳時(shí)間: 2019-07-04
上傳用戶:Rain
一 產(chǎn)品描述 提供6個(gè)觸摸感應(yīng)按鍵,一對(duì)一直接輸出,對(duì)於防水和抗干擾方面有很優(yōu)異的表現(xiàn)! 二 產(chǎn)品特色 1 工作電壓範(fàn)圍:3.1V – 5.5V 2 工作電流:3mA@5V 3 6個(gè)觸摸感應(yīng)按鍵 4 提供一對(duì)一的直接輸出,未按鍵為高電平輸出,按鍵為低電平輸出 5 可以經(jīng)由調(diào)整 CAP 腳的外接電容,調(diào)整靈敏度,電容越大靈敏度越高 6 具有防水及水漫成片水珠覆蓋在觸摸按鍵面板,按鍵仍可有效判別 7 內(nèi)建 LDO 增加電源的抗干擾能力 三 產(chǎn)品應(yīng)用 各種大小家電,娛樂產(chǎn)品 四 功能描述 1 VK3606DM 於手指按壓觸摸盤,在 60ms 內(nèi)輸出對(duì)應(yīng)按鍵的狀態(tài)。 2 單鍵優(yōu)先判斷輸出方式處理, 如果 K1 已經(jīng)承認(rèn)了, 需要等 K1 放開後, 其他按 鍵才能再被承認(rèn),同時(shí)間只有一個(gè)按鍵狀態(tài)會(huì)被輸出。 3 具有防呆措施, 若是按鍵有效輸出連續(xù)超過 10 秒, 就會(huì)做復(fù)位。 4 環(huán)境調(diào)適功能,可隨環(huán)境的溫濕度變化調(diào)整參考值,確保按鍵判斷工作正常。 5 可分辨水與手指的差異,對(duì)水漫與水珠覆蓋按鍵觸摸盤,仍可正確判斷按鍵動(dòng)作。但水不可於按鍵觸摸盤上形成“水柱”,若如此則如同手按鍵一般,會(huì)有按鍵承認(rèn)輸出。 6 內(nèi)建 LDO 及抗電源雜訊的處理程序,對(duì)電源漣波的干擾有很好的耐受能力。 7 不使用的按鍵請(qǐng)接地,避免太過靈敏而產(chǎn)生誤動(dòng)
標(biāo)簽: 3606 KEYS SOP VK 16 DM 抗干擾 防水
上傳時(shí)間: 2019-08-08
上傳用戶:szqxw1688
一.產(chǎn)品描述 提供6個(gè)觸摸感應(yīng)按鍵,一對(duì)一直接輸出,輸出為開漏(opendrain)型態(tài),適合作AD鍵。對(duì)於防水和抗干擾方面有很優(yōu)異的表現(xiàn)! 二。產(chǎn)品特色 1.工作電壓範(fàn)圍:3.1V – 5.5V 2.工作電流: 3mA@5V 3.6 個(gè)觸摸感應(yīng)按鍵 4.提供一對(duì)一的直接輸出,未按鍵為開漏(open drain)型態(tài)輸出,按鍵時(shí)為低電平。 5.可以經(jīng)由調(diào)整 CAP 腳的外接電容,調(diào)整靈敏度,電容越大靈敏度越高 6.具有防水及水漫成片水珠覆蓋在觸摸按鍵面板,按鍵仍可有效判別 7.內(nèi)建 LDO 增加電源的抗干擾能力 三。 產(chǎn)品應(yīng)用 各種大小家電,娛樂產(chǎn)品 四.功能描述 1.VK3606OM 於手指按壓觸摸盤,在 60ms 內(nèi)輸出對(duì)應(yīng)按鍵的狀態(tài)。 2.單鍵優(yōu)先判斷輸出方式處理, 如果 K1 已經(jīng)承認(rèn)了, 需要等K1 放開後, 其他按鍵才能再被承認(rèn),同時(shí)間只有一個(gè)按鍵狀態(tài)會(huì)被輸出。 3.具有防呆措施, 若是按鍵有效輸出連續(xù)超過 10 秒, 就會(huì)做復(fù)位。 4.環(huán)境調(diào)適功能,可隨環(huán)境的溫濕度變化調(diào)整參考值,確保按鍵判斷工作正常。 5.可分辨水與手指的差異,對(duì)水漫與水珠覆蓋按鍵觸摸盤,仍可正確判斷按鍵動(dòng)作。但水不可於按鍵觸摸盤上形成“水柱”,若如此則如同手按鍵一般,會(huì)有按鍵承認(rèn)輸出。 6.內(nèi)建 LDO 及抗電源雜訊的處理程序,對(duì)電源漣波的干擾有很好的耐受能力。 7.K0~K5 中不使用的按鍵請(qǐng)接地,避免太過靈敏而產(chǎn)生誤動(dòng)。 8.D0~D5 中不使用的輸出請(qǐng)接地,避免浮接會(huì)有漏電流的情 況。
標(biāo)簽: KEYS 3606 SOP 16 VK OM 抗干擾 防水
上傳時(shí)間: 2019-08-08
上傳用戶:szqxw1688
一.產(chǎn)品描述 提供10個(gè)觸摸感應(yīng)按鍵及兩線式串列界面,並有中斷輸出INT腳與MCU聯(lián)繫。特性上對(duì)於防水和抗干擾方面有很優(yōu)異的表現(xiàn)! 二。產(chǎn)品特色 1. 工作電壓範(fàn)圍:3.1V – 5.5V 2. 工作電流:3mA@5V 3. 10 個(gè)觸摸感應(yīng)按鍵 4. 提供串列界面 SCK、SDA、INT 作為與 MCU 溝通方式。 5. 可以經(jīng)由調(diào)整 CAP 腳的外接電容,調(diào)整靈敏度,電容越大靈敏度越高 6.具有防水及水漫成片水珠覆蓋在觸摸按鍵面板,按鍵仍可有效判別 7. 內(nèi)建 LDO 增加電源的抗干擾能力 三。產(chǎn)品應(yīng)用 各種大小家電,娛樂產(chǎn)品 四.功能描述 1.VK3610IM 於手指按壓觸摸盤,在 60ms 內(nèi)輸出對(duì)應(yīng)按鍵的狀態(tài)。 2.單鍵優(yōu)先判斷輸出方式處理, 如果 K1 已經(jīng)承認(rèn)了, 需要等 K1 放開後, 其他按鍵才能再被承認(rèn),同時(shí)間只有一個(gè)按鍵狀態(tài)會(huì)被輸出。 3.具有防呆措施, 若是按鍵有效輸出連續(xù)超過 10 秒, 就會(huì)做復(fù)位。 4.環(huán)境調(diào)適功能,可隨環(huán)境的溫濕度變化調(diào)整參考值,確保按鍵判斷工作正常。 5.可分辨水與手指的差異,對(duì)水漫與水珠覆蓋按鍵觸摸盤,仍可正確判斷按鍵動(dòng)作。但水不可於按鍵觸摸盤上形成“水柱”,若如此則如同手按鍵一般,會(huì)有按鍵承認(rèn)輸出。 6.內(nèi)建 LDO 及抗電源雜訊的處理程序,對(duì)電源漣波的干擾有很好的耐受能力。 7.不使用的按鍵請(qǐng)接地,避免太過靈敏而產(chǎn)生誤動(dòng)。
標(biāo)簽: KEYS VK3610 SOP 10 16 IM VK 抗干擾
上傳時(shí)間: 2019-08-08
上傳用戶:szqxw1688
一.產(chǎn)品描述 提供8個(gè)觸摸感應(yīng)按鍵,二進(jìn)制(BCD)編碼輸出,具有一個(gè)按鍵承認(rèn)輸出的顯示,按鍵後的資料會(huì)維持到下次按鍵,可先判斷按鍵承認(rèn)的狀態(tài)。提供低功耗模式,可使用於電池應(yīng)用的產(chǎn)品。對(duì)於防水和抗干擾方面有很優(yōu)異的表現(xiàn)! 二.產(chǎn)品特色 1.工作電壓範(fàn)圍:3.1V – 5.5V 2. 工作電流: 3mA (正常模式);15 uA (休眠模式) @5V 3. 8 個(gè)觸摸感應(yīng)按鍵 4.持續(xù)無按鍵 4 秒,進(jìn)入休眠模式 5. 提供二進(jìn)制(BCD)編碼直接輸出介面(上電 D2~D0/111) 6. 按鍵後離開,輸出狀態(tài)會(huì)維持到下次按鍵才會(huì)改變。 7. 提供按鍵承認(rèn)有效輸出,當(dāng)有按鍵時(shí)輸出低電平,無按鍵為高電平。 8. 可以經(jīng)由調(diào)整 CAP 腳的外接電容,調(diào)整靈敏度,電容越大靈敏度越高 9. 具有防水及水漫成片水珠覆蓋在觸摸按鍵面板,按鍵仍可有效判別 10. 內(nèi)建 LDO 增加電源的抗干擾能力 三.產(chǎn)品應(yīng)用 各種大小家電,娛樂產(chǎn)品 四.功能描述 1.VK3708BM 於手指按壓觸摸盤,在 60ms 內(nèi)輸出對(duì)應(yīng)按鍵的狀態(tài)。 2.單鍵優(yōu)先判斷輸出方式處理, 如果 K1 已經(jīng)承認(rèn)了, 需要等 K1 放開後, 其他按鍵才能再被承認(rèn),同時(shí)間只有一個(gè)按鍵狀態(tài)會(huì)被輸出。 3.具有防呆措施, 若是按鍵有效輸出連續(xù)超過 10 秒, 就會(huì)做復(fù)位。 4.環(huán)境調(diào)適功能,可隨環(huán)境的溫濕度變化調(diào)整參考值,確保按鍵判斷工作正常。 5.可分辨水與手指的差異,對(duì)水漫與水珠覆蓋按鍵觸摸盤,仍可正確判斷按鍵動(dòng)作。但水不可於按鍵觸摸盤上形成“水柱”,若如此則如同手按鍵一般,會(huì)有按鍵承認(rèn)輸出。 6.內(nèi)建 LDO 及抗電源雜訊的處理程序,對(duì)電源漣波的干擾有很好的耐受能力。 7.不使用的按鍵請(qǐng)接地,避免太過靈敏而產(chǎn)生誤動(dòng)。 聯(lián)系人:許碩 QQ:191 888 5898 聯(lián)系電話:188 9858 2398(微信)
標(biāo)簽: KEYS 3708 SOP 16 BM VK 抗干擾 防水 省電
上傳時(shí)間: 2019-08-08
上傳用戶:szqxw1688
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1