亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        電荷轉(zhuǎn)移感應(yīng)按鍵設(shè)計說明書

        2014-07-21 04:04:10吳文勇
        中國新技術(shù)新產(chǎn)品 2014年8期
        關(guān)鍵詞:電荷轉(zhuǎn)移

        吳文勇

        摘 要:本文主要講述電容電荷轉(zhuǎn)移理論,并根據(jù)此理論設(shè)計電荷轉(zhuǎn)移電路,最終由電荷轉(zhuǎn)移電路與倍壓脈沖發(fā)生器實現(xiàn)電荷轉(zhuǎn)移感應(yīng)按鍵功能。此感應(yīng)按鍵可應(yīng)用于玻璃、塑料等作為面板的非接觸式人機操作輸入。

        關(guān)鍵詞:電荷轉(zhuǎn)移;電容感應(yīng);容抗;倍壓

        中圖分類號:TP21 文獻標識碼:B

        概述

        感應(yīng)技術(shù)正在迅速地成為人機界面操作的媒介,人們在應(yīng)用并享受這種全新的技術(shù)所帶來的方便、美觀、無機械壽命等好處。本文就個人研發(fā)的新型感應(yīng)設(shè)計技術(shù)作詳細說明。

        一、電荷轉(zhuǎn)移感應(yīng)按鍵的組成

        本文設(shè)計的感應(yīng)按鍵模塊有兩部分組成,一部分是共用的倍壓高頻脈沖發(fā)生器模塊,用于給另一部分電路提供高頻的脈沖信號,另一部分是感應(yīng)按鍵能量轉(zhuǎn)移電路模塊。每一路按鍵采用一個轉(zhuǎn)移電路模塊,例如產(chǎn)品設(shè)計兩個按鍵,那么只要采用一個脈沖發(fā)器模塊和兩個感應(yīng)按鍵能量轉(zhuǎn)移電路模塊,再結(jié)合帶ADC轉(zhuǎn)換功能的MCU即可。在目前電子產(chǎn)品中MCU是不可缺少的一部分,所以設(shè)計人員并不需要額外增加MCU,就可以完成他的設(shè)計。

        二、電荷轉(zhuǎn)移感應(yīng)按鍵的原理

        在說明原理之前我們先來了解一下電容,如圖1所示:電壓與IC的相量關(guān)系為:

        其中:XC = 1/ωC,稱為容抗,單位為 Ω(歐姆),容抗的倒數(shù)稱為容納BC = ωC,單位為 S。由(式-1)可見頻率和容抗成反比, 也就是頻率越高,容抗越小,如圖2曲線所示。

        ω→0 , |XC|→∞直流開路(隔直)

        ω→∞,|XC|→0高頻短路(旁路作用)

        我們知道電容器的公式:

        ε為極板與極板之間的介電常數(shù)

        S 為極板面積

        d 為極板與極板之間的間距

        由此我們可以知道任何導(dǎo)體與導(dǎo)體之間都存在電容,如下圖3、圖4所示每個電極與電極之間都有一個很小的電容,同樣的當手指與電極之間也存在電容。

        手指越靠近電極,根據(jù)電容急

        劇增大,當然再如何增大,電容值還是很小,約為十個PF。同時結(jié)合前面講到的容抗與頻率的關(guān)系,我們設(shè)計一個高頻發(fā)生電路,使電極是一個相對手指高頻變化的電壓信號,根據(jù)

        (式-1),手指與電

        極之間產(chǎn)生電流。到此我的結(jié)論是:因為手指靠近電極,從而手指與電極之間產(chǎn)生一個耦合電容,因為電容的容抗作用使手指與電極之間產(chǎn)生電流,因為電流使得電極的電荷發(fā)生轉(zhuǎn)移,根據(jù)電荷的轉(zhuǎn)移理論,我們設(shè)計出感應(yīng)按鍵能量轉(zhuǎn)移電路模塊。

        三、倍壓高頻脈沖發(fā)生器

        如圖5所示,設(shè)剛開始PULSE電壓為0V,則電源5V經(jīng)過二極管D2向C4充電。經(jīng)過 ( τ=RC)后,C4電壓為5–VD2 (VD2為二極管D1或D2 PN結(jié)的正向壓降,下同)。當PULSE由0V變?yōu)?V時,三極管Q2導(dǎo)通,三極管Q1截止,電壓VA為5V+C4兩端電壓,得出VA=5+5–VD2。二極管D1截止,二極管D2導(dǎo)通,PULSE_OUT電壓為10–2*VD2。當PULSE電壓由5V變?yōu)?V時,三極管Q2截止,三極管Q1導(dǎo)通,PULSE_OUT電壓變?yōu)?V。如此循環(huán),可得PULSE_OUT脈沖電壓為10–2*VD2,頻率與PULSE相同。

        四、電荷轉(zhuǎn)移電路

        電荷轉(zhuǎn)移電路:如圖6所示,在無手指情況下,當脈沖由低電平變高電平時,Ut經(jīng)過C1,C2,D1,R1對C3進行充電;當脈沖由高電平變低電平時,C1,C2經(jīng)過D2進行放電;放電后當脈沖又產(chǎn)生高電平時又經(jīng)過C1,C2,D1,R1對C3進行充電,如此循環(huán)C3即可以得到穩(wěn)定電壓U0。當手指靠近電極時,如圖7所示,此時人體與電極產(chǎn)生如圖所示的電容Cx,電容容量在幾PF到十幾PF。此時當脈沖由低電平變高電平時,Ut除了通過C1,C2,D1,R1對C3充電外,還對Cx充電,所以Cx得到了一部分電荷。根據(jù)電路形式Ut提供給C3的電荷明顯減??;當脈沖由高電平變?yōu)榈碗娖綍r,Cx經(jīng)過R3進行放電,所以脈沖電壓Ut可以循環(huán)對Cx充電。也就是說每個脈沖周期都會轉(zhuǎn)移一部分電荷到Cx,C3得到的電荷減少,電壓U0降低。根據(jù)以上分析得出,當手指靠近電極時,U0電壓將會降低。根據(jù)這個結(jié)論,MCU對U0進行AD采樣并判斷采樣數(shù)據(jù)就可以知道是否有手指靠近,從而判斷是否有按鍵按下,實現(xiàn)感應(yīng)按鍵的目的。

        五、軟件設(shè)計

        本軟件設(shè)計采用AVR單片機ATmega16。AVR單片機的推出,徹底打破這種舊設(shè)計格局,廢除了機器周期,拋棄復(fù)雜指令計算機(CISC)追求指令完備的做法;采用精簡指令集,以字作為指令長度單位,將內(nèi)容豐富的操作數(shù)與操作碼安排在一字之中(指令集中占大多數(shù)的單周期指令都是如此),取指周期短,又可預(yù)取指令,實現(xiàn)流水作業(yè),故可高速執(zhí)行指令。

        AVR單片機硬件結(jié)構(gòu)采取8位機與16位機的折中策略,即采用局部寄存器 (32個寄存器文件)和單體高速輸入/輸出的方案(即輸入捕獲寄存器、輸出比較匹配寄存器及相應(yīng)控制邏輯)。提高了指令執(zhí)行速度(1Mips/MHz),克服了瓶頸現(xiàn)象,增強了功能;同時又減少了對外設(shè)管理的開銷,相對簡化了硬件結(jié)構(gòu),降低了成本。故AVR單片機在軟/硬件開銷、速度、性能和成本諸多方面取得了優(yōu)化平衡,是高性價比的單片機。

        ATmega16有一個10位的逐次逼近型ADC。ADC與一個8通道的模擬多路復(fù)用器連接,能對來自端口A的8路單端輸入電壓進行采樣。單端電壓輸入以0V(GND)為基準。器件還支持16路差分電壓輸入組合。兩路差分輸入(ADC1、ADC0與ADC3、ADC2)有可編程增益級,在A/D轉(zhuǎn)換前給差分輸入電壓提供0dB(1x)、20dB(10x)或46dB(200x)的放大級。七路差分模擬輸入通道共享一個通用負端(ADC1),而其他任何ADC輸入可做為正輸入端。如果使用1x或10x增益,可得到8位分辨率。如果使用200x增益,可得到7位分辨率。endprint

        本設(shè)計主要采用Atmega16的ADC功能,選用8位分辨率采用方式,啟用ADC中斷功能。部分程序如下:

        主程序:

        void main(void)

        {

        // port initialization

        // Watchdog Timer initialization

        // Watchdog Timer Prescaler: OSC/128k

        #pragma optsize-

        //WDTCR=0x19;

        //WDTCR=0x09;

        #ifdef _OPTIMIZE_SIZE_

        #pragma optsize+

        #endif

        ADC_init();

        // Global enable interrupts

        #asm("sei");

        Get_sensor_standard();//大約需要1秒鐘

        while (1)

        {

        // Place your code here

        }

        ADC中斷采樣程序(采樣多個感應(yīng)按鍵):

        interrupt [ADC_INT] void AD_INT(void)

        {

        register static unsigned char num; //采用register static 可以減少入棧及出棧時間,提高運行速度

        //設(shè)置CD4051通道

        PORTC &= 0x3e;

        PORTC |= AD_CD4051_MUX1[Channel];

        //感應(yīng)按鍵采樣

        num = ADC_Sensor[Channel].ConvertNum;

        ADC_Sensor[Channel].CacheValue[num] = ADCH;

        if(++ADC_Sensor[Channel].ConvertNum >= DATA_NUM)

        {

        ADC_Sensor[Channel].ConvertNum = 0;

        for(num = 0; num < DATA_NUM; num++)

        ADC_Sensor[Channel].Value[num] = ADC_Sensor[Channel].CacheValue[num]; //完成一個通道采樣

        setbit(ADC_Sensor[Channel].State, AD_COMPLETE_BIT);//設(shè)置當前通道完成標志

        }

        //ADC通道循環(huán)

        if(++Channel >= CHANNEL) Channel = 0;

        // Start the AD conversion

        ADMUX = AD_MUX[Channel];

        ADCSRA|=0x40;

        }

        參考文獻

        [1]邱關(guān)源.電路[M].北京:高等教育出版社.

        [2]Bruce Eckel.C++編程思想[M].北京:機械工業(yè)出版社.

        [3]李火林,鄧聲南,甘筱青.數(shù)學模型及方法[M].江西:江西高校出版社.

        [4]寧建國.AVR單片機原理及應(yīng)用[M].北京:北京航空航天大學出版社.endprint

        本設(shè)計主要采用Atmega16的ADC功能,選用8位分辨率采用方式,啟用ADC中斷功能。部分程序如下:

        主程序:

        void main(void)

        {

        // port initialization

        // Watchdog Timer initialization

        // Watchdog Timer Prescaler: OSC/128k

        #pragma optsize-

        //WDTCR=0x19;

        //WDTCR=0x09;

        #ifdef _OPTIMIZE_SIZE_

        #pragma optsize+

        #endif

        ADC_init();

        // Global enable interrupts

        #asm("sei");

        Get_sensor_standard();//大約需要1秒鐘

        while (1)

        {

        // Place your code here

        }

        ADC中斷采樣程序(采樣多個感應(yīng)按鍵):

        interrupt [ADC_INT] void AD_INT(void)

        {

        register static unsigned char num; //采用register static 可以減少入棧及出棧時間,提高運行速度

        //設(shè)置CD4051通道

        PORTC &= 0x3e;

        PORTC |= AD_CD4051_MUX1[Channel];

        //感應(yīng)按鍵采樣

        num = ADC_Sensor[Channel].ConvertNum;

        ADC_Sensor[Channel].CacheValue[num] = ADCH;

        if(++ADC_Sensor[Channel].ConvertNum >= DATA_NUM)

        {

        ADC_Sensor[Channel].ConvertNum = 0;

        for(num = 0; num < DATA_NUM; num++)

        ADC_Sensor[Channel].Value[num] = ADC_Sensor[Channel].CacheValue[num]; //完成一個通道采樣

        setbit(ADC_Sensor[Channel].State, AD_COMPLETE_BIT);//設(shè)置當前通道完成標志

        }

        //ADC通道循環(huán)

        if(++Channel >= CHANNEL) Channel = 0;

        // Start the AD conversion

        ADMUX = AD_MUX[Channel];

        ADCSRA|=0x40;

        }

        參考文獻

        [1]邱關(guān)源.電路[M].北京:高等教育出版社.

        [2]Bruce Eckel.C++編程思想[M].北京:機械工業(yè)出版社.

        [3]李火林,鄧聲南,甘筱青.數(shù)學模型及方法[M].江西:江西高校出版社.

        [4]寧建國.AVR單片機原理及應(yīng)用[M].北京:北京航空航天大學出版社.endprint

        本設(shè)計主要采用Atmega16的ADC功能,選用8位分辨率采用方式,啟用ADC中斷功能。部分程序如下:

        主程序:

        void main(void)

        {

        // port initialization

        // Watchdog Timer initialization

        // Watchdog Timer Prescaler: OSC/128k

        #pragma optsize-

        //WDTCR=0x19;

        //WDTCR=0x09;

        #ifdef _OPTIMIZE_SIZE_

        #pragma optsize+

        #endif

        ADC_init();

        // Global enable interrupts

        #asm("sei");

        Get_sensor_standard();//大約需要1秒鐘

        while (1)

        {

        // Place your code here

        }

        ADC中斷采樣程序(采樣多個感應(yīng)按鍵):

        interrupt [ADC_INT] void AD_INT(void)

        {

        register static unsigned char num; //采用register static 可以減少入棧及出棧時間,提高運行速度

        //設(shè)置CD4051通道

        PORTC &= 0x3e;

        PORTC |= AD_CD4051_MUX1[Channel];

        //感應(yīng)按鍵采樣

        num = ADC_Sensor[Channel].ConvertNum;

        ADC_Sensor[Channel].CacheValue[num] = ADCH;

        if(++ADC_Sensor[Channel].ConvertNum >= DATA_NUM)

        {

        ADC_Sensor[Channel].ConvertNum = 0;

        for(num = 0; num < DATA_NUM; num++)

        ADC_Sensor[Channel].Value[num] = ADC_Sensor[Channel].CacheValue[num]; //完成一個通道采樣

        setbit(ADC_Sensor[Channel].State, AD_COMPLETE_BIT);//設(shè)置當前通道完成標志

        }

        //ADC通道循環(huán)

        if(++Channel >= CHANNEL) Channel = 0;

        // Start the AD conversion

        ADMUX = AD_MUX[Channel];

        ADCSRA|=0x40;

        }

        參考文獻

        [1]邱關(guān)源.電路[M].北京:高等教育出版社.

        [2]Bruce Eckel.C++編程思想[M].北京:機械工業(yè)出版社.

        [3]李火林,鄧聲南,甘筱青.數(shù)學模型及方法[M].江西:江西高校出版社.

        [4]寧建國.AVR單片機原理及應(yīng)用[M].北京:北京航空航天大學出版社.endprint

        猜你喜歡
        電荷轉(zhuǎn)移
        ZnCoP/CdLa2S4肖特基異質(zhì)結(jié)的構(gòu)建促進光催化產(chǎn)氫
        ZnO/D-A共軛聚合物S型異質(zhì)結(jié)高效光催化產(chǎn)H2O2及其電荷轉(zhuǎn)移動力學研究
        揭示S型電荷轉(zhuǎn)移機理
        一例具有可逆熱誘導(dǎo)電荷轉(zhuǎn)移行為的二維氰基橋聯(lián)WⅤ?CoⅡ配合物
        共軛單元調(diào)控三苯胺類敏化染料電子激發(fā)性質(zhì)的計算研究
        從軌道作用角度研究S…π非共價作用結(jié)構(gòu)特征
        廣州化工(2020年5期)2020-03-31 07:43:36
        表面增強拉曼散射基底及機理的研究進展
        染料敏化太陽電池新材料及規(guī)模制備研究2013年度進展報告
        考慮Duschinsky轉(zhuǎn)動效應(yīng)的電荷轉(zhuǎn)移速率理論
        染料敏化太陽電池新材料及規(guī)模制備研究2013年度進展報告
        科技資訊(2016年5期)2016-08-13 17:02:25
        97色伦综合在线欧美视频| 国内偷拍视频一区二区| 中文字幕中文字幕三区| 91精品人妻一区二区三区久久久| 护士的小嫩嫩好紧好爽| 51国偷自产一区二区三区| 人妻在线中文字幕| 亚洲免费不卡av网站| 日本女优久久精品观看| 国产在线高清理伦片a| 国产成人精品久久一区二区三区| 亚洲精品国偷拍自产在线观看蜜臀| 亚洲成av人片一区二区| 中字幕久久久人妻熟女| 国产91AV免费播放| 中文字幕人乱码中文字幕乱码在线 | 国产激情视频免费观看| 亚洲国产精品av麻豆网站| 亚洲色大成网站www永久| 久久夜色精品国产欧美乱| 亚洲VA中文字幕欧美VA丝袜| 少妇一区二区三区乱码| 亚洲视频在线观看一区二区三区| 亚洲国产精品无码久久久| av片在线观看免费| 男人天堂AV在线麻豆| 亚洲第一大av在线综合| 日本亲近相奷中文字幕| 国产精品无码专区av在线播放| 中文字幕巨乱亚洲| 国内精品女同一区二区三区| 青青草精品视频在线播放| 极品少妇被猛的白浆直喷白浆| 国产免费av片在线观看麻豆| 日本一区二区三区在线观看免费| 成人大片免费视频播放一级| 亚洲精品久久久久avwww潮水| 色婷婷日日躁夜夜躁| 99久久免费中文字幕精品| av影院手机在线观看| 玩50岁四川熟女大白屁股直播|