- Ano ang isang Capacitive Touch Sensor?
- Mga Materyal na Kinakailangan
- Diagram ng Circuit
- Programming Atmega AT89S52 Microcontroller
Sa modernong mundo ng electronics, ang pag-input ng touch ay ginagamit halos kahit saan, maging ito ay isang mobile phone o isang LCD monitor switch. Ang Capacitive touch ay malawakang ginagamit sa segment ng touch sensor at dati naming ginamit ang capacitive touch gamit ang isang Raspberry Pi. Dito sa proyektong ito, makikipag- ugnay kami ng touch sensor sa 8051 microcontroller AT89S52. Kung bago ka sa 8051 microcontoller pagkatapos ay maaari kang magsimula sa LED blinking sa 8051.
Ano ang isang Capacitive Touch Sensor?
Gumagana ang capacitive touch sa singil ng electrostatic na magagamit sa aming katawan. Ang screen ay sisingilin na ng electric field. Kapag hinawakan namin ang screen isang malapit na circuit form dahil sa electrostatic charge na dumadaloy sa aming katawan. Dagdag dito, nagpapasya ang software ng lokasyon at ang kilos na isasagawa. Hindi gagana ang capacitive touch screen sa mga guwantes ng kamay dahil hindi magkakaroon ng anumang pagpapadaloy sa pagitan ng (mga) daliri at ng screen.
Ginamit ang Touch Sensor sa proyektong ito
Ang touch sensor na ginamit sa proyektong ito ay isang capacitive touch sensor module at ang sensor driver ay batay sa driver ng IC TTP223. Ang operating boltahe ng IC TTP23 ay 2.0V hanggang 5.5V at ang kasalukuyang pagkonsumo ng touch sensor ay napakababa. Dahil sa murang, mababang kasalukuyang pagkonsumo, at madaling maisama ang suporta, ang touch sensor na may TTP223 ay malawak na tanyag sa isang segment nito.
Sa imahe sa itaas, ang magkabilang panig ng sensor ay ipinapakita kung saan malinaw na nakikita ang diagram ng pinout. Mayroon din itong solder jumper na maaaring magamit upang muling isaayos ang sensor hinggil sa output. Ang lumulukso ay A at B. Default na pagsasaayos o sa default na estado ng solder jumper, ang output ay nagbabago mula mababa hanggang mataas kapag ang sensor ay hinahawakan. Gayunpaman, kapag ang jumper ay nakatakda at ang sensor ay na-configure muli, ang output ay nagbabago ng estado nito kapag nakita ng touch sensor ang touch. Ang pagiging sensitibo ng touch sensor ay maaari ring mai-configure sa pamamagitan ng pagbabago ng capacitor. Para sa detalyadong impormasyon, ang datasheet ng TTP 223 ay lubhang kapaki-pakinabang.
Ang tsart sa ibaba ay nagpapakita ng iba't ibang mga output sa iba't ibang mga setting ng jumper-
Jumper A | Jumper B |
Estado ng Output Lock |
Antas ng TTL ng output |
Buksan | Buksan |
Walang lock |
Mataas |
Buksan | Isara |
Lock ng sarili |
Mataas |
Isara | Buksan |
Walang-Lock |
Mababa |
Isara | Isara |
Sarado sa Sarili |
Mababa |
Para sa proyektong ito, gagamitin ang sensor sa default na pagsasaayos na magagamit sa kundisyon ng paglabas ng pabrika. Sa proyektong ito, gagamitin ang touch sensor upang makontrol ang isang bombilya ng AC gamit ang AT89S52 microcontroller.
Ang isang relay ay interfaced sa 8051 microcontroller. Ang pinout ng relay ay makikita sa larawan sa ibaba-
Ang NO ay karaniwang bukas at ang NC ay karaniwang konektado. Ang L1 at L2 ay ang dalawang mga terminal ng coil ng Relay. Kapag ang Voltage ay hindi inilapat, ang relay ay naka-off at ang POLE ay nakakakonekta sa NC pin. Kapag ang boltahe ay inilapat sa mga terminal ng coil, ang L1 at L2 ng relay ay naka-ON at ang POLE ay nakakakonekta sa NO. Samakatuwid, ang koneksyon sa pagitan ng POLE at HINDI maaaring ilipat ON o OFF sa pamamagitan ng pagbabago ng estado ng pagpapatakbo ng Relay.
Mga Materyal na Kinakailangan
- AT89S52 8051 Microcontroller
- Karaniwang Cubic Relay - 5V
- 11.592 MHz Crystal
- 33pF capacitors - 2pcs
- 2k risistor -1 pc
- 4.7k risistor - 1 pc
- 10uF capacitor
- BC549B transistor
- TTP223 Sensor
- 1N4007 Diode
- Light Bulb With Bulb Holder
- Isang breadboard
- 5V power supply, maaaring gumana ang isang charger ng telepono.
- Maraming mga wire ng jumper o berg wires.
- AT89S52 programa na kapaligiran na may Programmer Kit at IDE na may tagatala
Diagram ng Circuit
Ang eskematiko para sa pagkontrol ng ilaw gamit ang touch sensor at 8051 ay ibinibigay sa ibaba ng imahe,
Ginagamit ang transistor upang i-on o i-off ang Relay. Ang touch sensor ay konektado sa unit ng AT89S52 microcontroller. Ang circuit ay itinayo gamit ang isang breadboard.
Programming Atmega AT89S52 Microcontroller
Kumpletuhin ang 8051 code ay ibinigay sa dulo. Narito ipinapaliwanag namin ang ilang bahagi ng code. Kung bago ka sa 8051 microcontroller pagkatapos ay alamin muna kung paano mag-program ng isang 8051 Microcontroller.Ang mga linya ng code sa ibaba ay ginagamit para sa pagsasama ng Relay at ang Touch Sensor sa 8051 Microcontroller. Ang REGX52 ay ang header file para sa unit ng AT89S52 microcontroller. Ang isang pagpapaandar na pagpapaandar ay idineklara din.
# isama
Ang touch at relay ay pinasimuno bilang 0. Ang touch sensor ay binabago ang lohika 0 hanggang 1. Kung ang pahayag ay totoo kapag ang touch sensor ay naaktibo at dahil dito, ang estado ng Relay ay nabago. Gayunpaman, upang tuklasin ang wastong ugnayan, ginagamit ang isang pagkaantala sa pag-debounce.
// Pangunahing pagpapaandar ng void main (void) { RELAY = 0; Pindutin ang = 0; habang (1) { kung (Touch == 1) { pagkaantala (15); // debounce delay kung (Pindutin ang == 1) { RELAY =! RELAY; // Toggle RELAY pin pagkaantala (30); } } } }
Sa ibaba, nakasulat ang pagpapaandar na pagkaantala. Ang pag-andar ay kukuha ng input sa format na milli-segundo at bumubuo ng pagkaantala gamit ang dalawa para sa mga loop. Ang pagka-antala na ito ay hindi gaanong tumpak ngunit katanggap-tanggap at karamihan ay nakasalalay sa oras ng pag-ikot ng orasan.
/ * Ipa-antala ang nauugnay na Pag-andar * / walang bisa na pagkaantala (char ms) {int a, b; para sa (a = 0; a <1295; a ++) {para sa (b = 0; b
Ang Touch na kinokontrol na Light circuit ay nasubok sa breadboard na may isang mababang bombilya na konektado dito. Ang kumpletong sketch na may isang demonstration video ay nakakabit sa ibaba. Maaari mong suriin ang higit pang mga proyekto sa pag-automate ng bahay dito.