PROYECTOS¡


ADQUISICION DE 5 DATOS DE TEMPERATURA CON EL PIC 16F84
Se trata de un proyecto basico que toma un dato cuando queremos medir la temperatura de varios puntos en un tiempo, el DS1820 es el sensor de temperatura que yo uso para este proyecto porque esfacil de hacer la interfaz con el microcontrolador
funciones:
  1. 5 canales de adquisicion de temperatura.
  2. usa el programa hyper terminal para visualizar la temperatura
  3. el uso rs232 para comunicarse con el pc, modo ascii 9600,8,1,n
  4. facil de entender y adaptarse a oto proyecto
  5. rango de -55 a 125 grados celsius
  6. precision de 0.5 grados centigrados
  7. visualizacion de la temperatura cada 5 segundos aproximadamente
En la siguiente figura se muestra el esquema de este proyecto utiliza el pic 16f84 para controlar todas las tareas de temperatura, leer, y transmitir los valores enviados del DS1307, convertir los datos a ascii despues al pc a traves de la interfaz rs232 200 ms para el tiempo de adquisicion, si se desea leer la temperatura en menos tiempo  se debe utilizar otro tipo de sensores ntc, termopar etc.
DS275 es el conductor rs232 que se puede reemplazar con el max232, pero el DS275 no necesita de componentes adicionales y es facil de conectar con el microcontrolador  y ocupa poco espacio para pcb.
en los pines 18, 17, 1, 2, 3, iran los sensores de temperatura







:1000000000308A00962A00001D3084000008031981
:10001000182801308D008C018C0B0C288D0B0B28BF
:100020004A308C008C0B122800000000800B09283D
:1000300000348316061486148312A12A08308D001A
:1000400000000000061083160610000083129F0DAA
:100050008610031C2E288316861483120318332857
:1000600083168610831283160614831206183A2804
:10007000831635288D0B20280000061083160610E5
:1000800000008614000000000614831206184A2897
:10009000831645288D01000086180D14061083165E
:1000A000061083128610831686108312003483167E
:1000B0008614000006140000831286108316861032
:1000C00000008312061083160610D03083129F00A2
:1000D0001E201C089F001E201D089F001E20831646
:1000E00086100000061483120618782883167328D9
:1000F0000000000000000000831686140000861433
:10010000000006140000831286108316861000007B
:100110008312061083160610D03083129F001E2013
:100120000D080D1895281E1096281E1400301E1854
:100130000130013C031DB528831686140000061407
:1001400000008312861083168610000083120610AA
:1001500083160610D03083129F001E200D080D1844
:10016000B3281E10B4281E149628A42A831606113C
:100170008312061108308D000000000000008D176A
:10018000D0288D139F0C03180615031C06110D179C
:10019000D0280D138D0BC2280000000000000615AA
:1001A0001C308400840BD2288D1BC1280D1BC9284C
:1001B000003408309F000C08A0008316861400004D
:1001C000061483120618E6288316E12886180314FD
:1001D000861C03108D0D0000831606108312061076
:1001E0009F0BDD28831686140000831286102008DA
:1001F0000319FD2883168610831200008316061447
:10020000831206180529831600290000061083169C
:100210000610000083128610831686108312392977
:1002200083168614000006140000831286108316BD
:10023000861000008312061083160610D030831239
:100240009F001E201C089F001E208316861400009D
:100250000614000083128610831686100000831295
:10026000061083160610D13083129F001E208C01C9
:10027000D9280D089D0083168610000006148312ED
:100280000618442983163F290000000000000000E2
:1002900083168614000083121D088D0000349D1BF8
:1002A00061290F308C001C0E8C050A300C020318DB
:1002B0005C2930308C075E291D088C070C089F00D4
:1002C000B6200F309C050A301C0203186929303013
:1002D0006B299D131D089C071C089F00B620003445
:1002E000FF308316850083120034831264000000FF
:1002F00000000000000000000000B10B762900346F
:100300002B08AC0070212B08AC00850101308C005B
:100310002C088D000319902903108C0D8D0B8C294E
:100320000C08FF3A8316850032308312B100752124
:100330002B08AC0070213230B1007521003401303F
:100340008C002C088D000319A92903108C0D8D0B2E
:10035000A5290C08FF3AAE00AD012D08073C031C8F
:10036000CE292B1CBE2985012E0883168500FF305F
:10037000850006308312B1007521CA2985012E0837
:100380008316850006308312B1007521FF30831675
:10039000850083120310AB0CAD0AAD290034013087
:1003A0008C002C088D000319D92903108C0D8D0B9E
:1003B000D5290C08FF3AB000AD012D08073C031CFD
:1003C000FF298501300883168500FF308500640011
:1003D0000000000083120508AF003008FF3A2F0527
:1003E000003A0319F82903102E0C8038AE00FA29C0
:1003F0000310AE0C0630B1007521AD0ADD292E08C0
:100400008D0000341C08AB008021CC30AB001C08F0
:10041000AC009F214430AB001C08AC009F211C089D
:10042000AC00CF210D0F152A0F2A1C08AB0080212C
:10043000CC30AB001C08AC009F21BE30AB001C08C8
:10044000AC009F21A8012808083C031C332A1F3058
:100450002807AB001C08AC00CF212B0884000D0836
:100460008000A80A232A03101F0CA9001F080139C5
:10047000013C031D3E2A0530AA003F2AAA019E0125
:1004800029089D001D08AC00AB012B082A049D0023
:100490002C089E001D088D001E088E00E22A2008F0
:1004A0008D011F020318572A1F088C00632A8C0134
:1004B0000830A1009F0D8C0D20080C0203188C0041
:1004C0008D0DA10B5A2A00340D081D089F006430C1
:1004D000A0004F220C089D000D083030031D772A24
:1004E0001E187D2A9E197D2A1E1A2030792A9E11F7
:1004F0001E128D070D089F00B6201D089F000A30B0
:10050000A0004F220C089D000D083030031D8C2ADE
:100510009E19902A1E1A20308D070D089F00B620C4
:1005200030309D071D089F00B620003484011F3025
:100530008305831606118312061532309D000420B0
:1005400019289C019D01572818309C003D309F00C0
:10055000B6209C0BA62A0D309F00B6200A309F00C3
:10056000B6209C0110210D08930001309C00102141
:100570000D08940002309C0010210D08950015080C
:100580009C0037309D004F213A309F00B620140860
:100590009C0037309D004F213A309F00B620130851
:1005A0009C0037309D004F210D309F00B6200A304F
:1005B0009F00B62092011208043C031C272B12084E
:1005C0009C00022A0E0899000D089800190897004F
:1005D0001808960017089A0019089700180896003E
:1005E00016089B00013012079C0043309F00B62084
:1005F00068309F00B6203A309F00B6201C089D004E
:1006000018309E00642220309F00B6203D309F00AD
:10061000B62020309F00B6201A089D009E0164225B
:100620002E309F00B6201B089D0018309E006422CB
:100630000D309F00B6200A309F00B62002309C008B
:10064000FA309D0004209C0B202B920ADB2AA42A5E
:02065000630045
:02400E00F93F78
:00000001FF
;PIC16F84A

DOSIFICADOR AUTOMATICO DE JABON CON COMUNICACIÓN A COMPUTADOR
El sensor del pin 3 ra4 detecta las manos y el programa hace que se active la salida pin 1 ra2 activando una electrovalvula y todo lo comunica por medio del puerto serial generando mensajes


Cuando el sensor del pin ra4 se active active la salida y da aviso dosificando por un tiempo


PROGRAMACION  HEX

:100000006328A600360884000930A70003100D20DD
:10001000A60CA70B072803140D288413B31D1C2856
:1000200000083404331D34068000841700083404AB
:10003000031C34068000272800083404031C3406FF
:100040003319340680008417340980052728330DBE
:100050000639A0003020A100A00A302000004A2864
:1000600000308A00200882070134753403341534C7
:1000700000343C340C34D934A301A200FF30A20771
:10008000031CA307031C5E280330A100DF304A20B5
:100090003E28A101E83EA000A109FC30031C532822
:1000A000A00703185028A0076400A10F50282018AB
:1000B0005928A01C5D2800005D2808008313031345
:1000C00083126400080007309F006400051AAD2801
:1000D000C8303C2006158316061183120330A30096
:1000E000E8303D2006118316061183120130A3006B
:1000F000F4303D200630B6000230B4000430B300C6
:10010000633001206F3001206C3001206F300120FE
:100110007130012075300120653001202030012030
:100120007330012075300120733001202030012010
:100130006D300120613001206E3001206F300120D0
:100140007330012020300120051183160511831220
:100150000130A300F4303D206528C8303C2005154F
:1001600083160511C83083123C200615831606112C
:1001700083120330A300E8303D20061183160611D8
:1001800083120130A300F4303D200630B600023067
:10019000B4000430B300643001206F3001207330AC
:1001A0000120693001206630012069300120633070
:1001B0000120613001206E300120643001206F3059
:1001C0000120203001200130A300F4303D2006152D
:1001D0008316061183120330A300E8303D20061178
:1001E0008316061183120130A300F4303D2006303F
:1001F000B6000230B4000430B30072300120653024
:1002000001207430012069300120723001206530F6
:10021000012020300120733001207530012073301F
:100220000120203001206D300120613001206E302E
:1002300001206F3001207330012020300120051192
:100240008316051183120130A300F4303D200615FA
:100250008316061183120330A300E8303D200611F7
:100260008316061183120130A300F4303D200630BE
:10027000B6000230B4000430B300203001206530F5
:100280000120733001207030012065300120723070
:1002900001206530012020300120753001206E30B2
:1002A0000120203001206D3001206F3001206D30A1
:1002B0000120653001206E300120743001206F3044
:1002C0000120203001200130A300F4303D206528BA
:0402D0006300682936
:02400E006D3F04
:00000001FF

CODIGO CON COMUNICACION DOSIFICADOR

INCLUDE"modedefs.bas"
cmcon=7

parado;
if porta.4=1 then encienda
pause 200           
high portb.2
pause 1000
low portb.2
pause 500
serout portb.1,N2400,["coloque sus manos "]
LOW porta.2
pause 500
goto parado
encienda;
pause 200
high porta.2
pause 200
high portb.2
pause 1000
low portb.2
pause 500
serout portb.1,N2400,["dosificando "]
pause 500
high portb.2
pause 1000
low portb.2
pause 500
serout portb.1,N2400,["retire sus manos "]
low porta.2
pause 500
high portb.2
pause 1000
low portb.2
pause 500
serout portb.1,N2400,[" espere un momento "]
pause 500
goto parado
end

Este proyecto fue propuesto por Leonardo Román. Y desde aquí le agradezco su colaboración. Animo igualmente a otros a que contribuyan con la Web y envíen sus ideas.
Con este circuito puedes poner una clave de acceso para entrar en una habitación o para abrir un armario, caja... etc. y una alarma que suena cuando alguien introduce la clave mal tres veces.
La clave se introduce mediante un teclado de 16 teclas y se visualiza el estado en una pantalla de cristal líquido (LCD) de 16 caracteres-2 lineas. El circuito acciona un relé el cual acciona el dispositivo de apertura de la puerta, que puede ser, por ejemplo, una cantonera como la que hay en las puertas de los portales y que accionamos desde nuestra casa pulsando un botón.
El "cerebro" de este dispositivo es un PIC16F876 si todavía no tienes un programador para este tipo de PIC puedes encontrarlo  aqui.
El esquema es el siguiente:
El programa para el pic: llave.asm
El Archivo HEX: llave.hex
Y este es el PCB que envía Juan David Murillo L, está hecho con Wincircuit: clave.gif y clave.ci. Desde aquí: muchas gracias.
El funcionamiento del circuito es el siguiente:
PARA ENTRAR:
En la pantalla del LCD se muestra el mensaje "INTRODUZCA CLAVE" entonces introduces la clave de acceso, que inicialmente será 0000 y pulsas la A para que se abra la puerta.
Cuando el código introducido no es el correcto se muestra el mensaje "CLAVE INCORRECTA" y la puerta no se abre.
Cuando se acumulan tres fallos al introducir la clave suena una sirena por un altavoz durante unos 15 segundos, después se puede volver a probar.
PARA CAMBIAR LA CLAVE:
Pulsar la tecla C de cambio de clave, entonces aparece durante unos instantes el mensaje "CAMBIO DE CLAVE"
Después te pide la clave que tenias hasta ese momento (inicialmente la 0000) con el mensaje "CLAVE ANTIGUA". Tecleas la clave y pulsas A
Si la clave es correcta te pide la "NUEVA CLAVE". Tecleas la nueva clave y pulsas A.
A continuación te pide que repitas la clave para verificarla con el mensaje "VERIFIQUE CLAVE". Tecleas de nuevo la misma clave y pulsas A. Si te equivocas te avisa y vuelves a introducir la nueva clave
Si la verificación es correcta se cambia la clave y se muestra el mensaje "CLAVE CAMBIADA" durante unos segundos.
LA CLAVE DE ACCESO
Inicialmente es la 0000
La calve se almacena en la memoria EEPROM de datos del PIC, por lo que, cuando se desconecte la alimentación del circuito se conserva la clave
Consta de 4 códigos que pueden ser: números del 0 al 9, asteriscos (*), y almohadillas (#). A diferencia de los códigos tradicionales que solo usan los números. Esto proporciona 20736 combinaciones posibles frente a las 10000 que se consiguen solo con números, lo que se traduce en mayor seguridad.


CODIGO . HEX PARA MICROCONTROLADOR 16F876
:020000040000FA
:02000000952841
:080008000D12090082002034F2
:100010004434493447344934543445342034433427
:100020004C34413456344534003420345034553443
:10003000453444344534203450344134533441340D
:1000400052340034203443344C3441345634453433
:10005000203449344E3443344F34523452344534CE
:1000600043345434413400342034433441344D3427
:1000700042344934413452340034203441344E3413
:1000800054344934473455344134003420344E34E8
:1000900055344534563441340034203456344534D4
:1000A000523449344634493451345534453400349B
:1000B0002034433441344D3442344934413444349F
:1000C0004134003420344C344134203443344C34F3
:1000D0004134563445342034443445344234453474
:1000E0000034543445344E3445345234203434349E
:1000F0002034443449344734493454344F3453342D
:100100000034203449344E34543445344E3454345D
:1001100045344C344F3400344434453420344E3468
:100120005534453456344F340034860187018501F7
:10013000831606309F008601051185100510851174
:100140008512F030870083120D120330A100442382
:1001500044234B2300305C230730292344305C23A5
:100160001D232223A600423C0319B0282608413C47
:10017000031931292608433C03197A292608443CEF
:100180000319B0282A304E231D232223A700423C06
:1001900003193C292708413C031931292708433C0E
:1001A00003197A292708443C0319C4282A304E230E
:1001B0001D232223A800423C031943292808413C5F
:1001C000031931292808433C03197A292808443C9B
:1001D0000319D8282A304E231D232223A900423C8C
:1001E00003194A292908413C031931292908433CAC
:1001F00003197A292908443C0319EC282A304E2394
:100200001D232223A200413C03190F292208423C4E
:10021000031951292208433C03197A290129003086
:100220008C22A602031D312901308C22A702031D56
:10023000312902308C22A802031D312903308C227F
:10024000A902031D31294B2302305C2315302923D9
:100250000330A100851620305F23851210305F2304
:10026000A9280C3055234B2322302923A10B3929EF
:10027000582920305F23A92844305C2320304E23A6
:1002800044305C23B02845305C2320304E23453079
:100290005C23C42846305C2320304E2346305C2348
:1002A000D82847305C2320304E2347305C23EC288D
:1002B0001E30A2000330A1000F30A3003030A40094
:1002C0002030AA00A30303196C298515712185111B
:1002D0007121AA0B6529602901305F23A20B5A29DD
:1002E000A9282308A500A50B7329A40B7129303078
:1002F000A40008004B23343029230E30292320305A
:100300005F234B230E3029233D3029231D23443006
:100310005C230C2200308C22A602031D022A01302D
:100320008C22A702031D022A02308C22A802031D80
:10033000022A03308C22A902031D022A0330A100E5
:100340004B2302305C23463029230E3029234430CE
:100350005C231D230C2226080319F829AB0027086B
:100360000319F829AC0028080319F829AD00290859
:100370000319F829AE004B234D3029230E302923D1
:1003800044305C231D230C2226082B02031DEC297C
:1003900027082C02031DEC2928082D02031DEC2937
:1003A00029082E02031DEC294B230E302923583037
:1003B00029232608AF00003096222708AF0001301D
:1003C00096222808AF00023096222908AF00033099
:1003D000962220305F23A9284B2303305C238130F1
:1003E000292343305C238C30292320305F23A0292C
:1003F0004B236230292340305C2371302923203085
:100400005F23A928A103031958294B23223029234C
:1004100020305F231D23A928A601A701A801A90157
:100420001D232223A600423C0319102A2608413C22
:10043000031908002608433C0319102A2608443CE7
:100440000319102A2A304E231D232223A700423CE1
:1004500003196B2A2708413C031908002708433C6D
:100460000319242A2708443C0319242A2A304E233E
:100470001D232223A800423C0319732A2808413C6B
:10048000031908002808433C0319382A2808443C6B
:100490000319382A2A304E231D232223A900423C67
:1004A00003197B2A2908413C03198A2A2908433C5D
:1004B00003194C2A2908443C03194C2A2A304E239C
:1004C0001D232223A200413C031908002208423CBC
:1004D0000319832A612A44305C2320304E234430A0
:1004E0005C23A701102A45305C2320304E23453081
:1004F0005C23A801242A46305C2320304E2346305A
:100500005C23A901382A47305C2320304E23473032
:100510005C234C2AA9010800031783128D0083165F
:100520008C130C1483120C08031308000317831296
:100530008D0003132F0803178C0083168C130C15E2
:100540008B1355308D00AA308D008C148B178312BD
:1005500003130D1EA92A831603170C11831203130C
:100560000D1208000F30870000000708A2006B235F
:100570000708A202031DB22A0F3C031DC02A0F3434
:10058000071AC92A871ADE2A071BF32A871B082B9A
:100590000F34013087000000071A31340230870021
:1005A0000000071A3234043087000000071A333481
:1005B000083087000000071A41340F3401308700EB
:1005C0000000871A3434023087000000871A35345F
:1005D000043087000000871A363408308700000096
:1005E000871A42340F34013087000000071B37346C
:1005F000023087000000071B3834043087000000F9
:10060000071B3934083087000000071B43340F34C0
:10061000013087000000871B2A3402308700000069
:10062000871B3034043087000000871B23340830D8
:1006300087000000871B44340F34B2220F3C03199B
:1006400008001D2BB222A2000F3C0319222B220806
:100650000800A0000620003E031908004E23A00A4F
:1006600020082A2B8316FF308600831205150510FB
:100670008514FF308600861B3B2B051185108613E1
:100680008316860183120800383055230C30552319
:1006900006305523080001305523080005150514C0
:1006A00085108600051132230800051505108510F8
:1006B0008600051132230800803855230800A30066
:1006C000FF30A400FF30A500A50B642BA40B622B08
:1006D000A30B602B0800FF30A300A30B6D2B0800B9
:084200003000300030003000F6
:00000001FF

















































codigo hex para el microcontrolador 16f84