coronadeespinas
Usuario (México)
bueno antes de empezar quiero decir que dejare de aser post adiario ya que me boy a buscar trabajo para poder pagar mi prepa porque el 9 de este mes me boy a graduar de la secundaria aviso importante me eliminaron un post, si el post se llamaba hackxcrack parte 1 Configurando Darkcomet RAT aviso noº2 contenido de lectura, la mayoria del contenido de este post es puro escrito para este tutorial utilizaremos google, bing , cualquier buscador ¿pero gran maestro cual buscador es mejor? buena pregunta, pero, no existe nungun buscador que sea bueno todos cuentan con caracteristicas especiales pero en este tutorial utilizare google ¿ho google, pero que es goolge? google es un buscador muy conocido y uno de los mas usados ¿como lo utilizaremos para hackear? facil con un archivo llamado ROBOTS.TXT este archivo ayuda ala pagina a no inexar contenido que no quiere que veamos pero ay algunos buscadores o paginas que aun que no quieran lo muestran a eso se llama robots.txt Por ejemplo en la dirección de http://www.google.com/robots.txt encontramos un archivo en texto plano. Si nos fijamos en la parte principal hay el esto User-agent: * Disallow: /search Disallow: /sdch el User-agent: * indica que este archivo sea reconocido para todos los buscadores. Después tenemos Disallow: /search el disallow evita la indexación de una carpeta o archivo, en este caso no indexara los contenidos del directorio search ni sdch. Este es el típico archivo “robots.txt” con el que nos encontraremos la mayoría de veces pero si una pagina lo tiene es porque tiene algo que ocultar, o no? Técnicas de Hacking con Buscadores Con ayuda de los buscadores podríamos crear dos categorías generales de ataques, los que se dan antes de que una web sea indexada y los que se dan después. PRE INDEXACIÓN En este caso el atacante tiene que descubrir una vulnerabilidad tipo RFI que sea explotable con una sola petición inyectando el exploit en el parámetro GET. Luego de descubrir la vulnerabilidad el atacante es listo y no quiere dejar huellas de su ataque. Como no quiere dejar huellas le pide a su amigo Google o su otro amigo Bing que hagan ellos le trabajo sucio. El atacante para completar la intrusión simplemente tendrá que pedir a sus amigos que indexen una URL maliciosa, y al visitar la página para poder indexarla en condiciones cometerán el ataque a la web. Luego si la policía va a investigar la web atacada la policía comenzaría a mirar por quien cometió el ataque y verían que los que cometieron el ataque fueron sus amigos, mientras la policía esta entretenida buscando un nuevo sospechoso el atacante ha podido atrasar un poco su captura. Si bien que en este caso el archivo “robots.txt” seria una buena medida de protección los buscadores no siempre cumplen al pie de la letra el archivo “robots.txt” A parte de este ejemplo esta técnica se puede usar en ataques XSS, con lo que podríamos dejar un sitio inaccesible o hacer phising gracias a Google y otras muchas cosas interesantes. POST INDEXACIÓN estos son los que se dan despues de indexar a una pagina web, con la ayuda de los dorks que son los que informan de los errores de esa pagina los cuales utilizaremos como via de informacion adicional Operadores lógicos en Google Por ejemplo si utilizamos el operador (-) se suprimirá ese argumento de la búsqueda. Ej: hacking -etico que como resultado devolvería una búsqueda sin el termino ético. Otro operador importante es el or o (|) este operador hace que en una búsqueda haya más de un termino. Ej: Hacking | Hacker como resultado obtendríamos una búsqueda con el termino hacker o hacking. Operadores en Google site:dominio.com este operador fila tu busqueda a algo en concreto por ejemplo site:google.com un ejemplo es google driver que es un lugar para los archivos un tipo contenedor Filetype:extensión la funcion de este operador es filtrar la busqueda a solo los resultados con esa extencion puede ser utilizado para saber si una pagina tiene guardados archivo log del firewall o alguna hoja de excel con nombres y passwords Por ejemplo si solo queremos ver archivos log de un sitio en concreto podríamos buscar por site:hp.com filetype:log Un ejemplo de uno de esos archivos. NOTA Para conseguir más buenos resultado es importante ir siempre a la ultima pagina, clickar en repetir la búsqueda e incluir los resultados omitidos. Y después tienes que buscar archivos que tengan abajo un texto como el siguiente No hay disponible una descripción de este resultado debido al archivo robots.txt de este sitio. Más información. De esta forma encontrareis esos archivos que la empresa no quiere que veas. Por ejemplo en la screenshoot anterior vemos como tuvieron un error con la base de datos bueno aqui pondre una lista de operadores que son menos utiles Allintext:texto-> Este operador busca una cadena de texto dentro de una pagina web y no dentro de una URL. (No se puede utilizar junto a otros) Allintitle:texto Busca una cadena de texto solo dentro del titulo → de una web. (No se puede utilizar junto a otros) Intitle:texto → Busca una cadena de texto dentro del titulo de una web. (Se puede utilizar junto a otros) Allinurl:texto → Busca una cadena de texto solo en la url. (No se puede utilizar junto a otros) Inurl:texto → Busca una cadena de texto en la url. (Se puede utilizar junto a otros) Author:texto → Busca artículos o noticias escritos por el nombre o la dirección de correo indicada. (Se puede utilizar junto a otros) Cache:dominio.com → Con este operador accedemos a la web que Google tiene en su cache. Útil para cuando borraron un tema y no ha pasado mucho tiempo (No se puede utilizar junto a otros) Link:dominio.com → Este operador se utiliza para buscar enlaces que apunten a un determinado sitio web. (No se puede utilizar junto a otros) Related:dominio.com → Busca paginas relacionadas. (No se puede utilizar junto a otros) cual es la diferencia de google a bing? bueno google lo que tiene es que no intrepleta bien el archivo “robots.txt” lo que ase que se salte los archivos de “robots.txt” lo que ase que te mande a unas carpetas pero que pasa con bing, bueno bing interpleta al pie de la letra como un corderito lo que le pedimos en resumen google tiene una ventaja y una desvantaja dependiendo para lo que lo uses,google nos permite recolectar informacion interesante como el archivo javascript que nos permitira entender y comprender la web y el cache que nos permitira ver paginas que ya no existen Google Dorks. a qui encontamos la GHDB que puede ser utilizada para diferentes objetivos USUARIOS puede ser utilizado para ver la lista de los administradores de esa pagina podemos utilizar filetype:xls “username | password esta nos mandara a una lista de documento (filetype:xls) donde encontariamos nombres de usuarios o pasword (“username | password) algunos usuarios ya no existan al igual que las contraseñas pero en taringa funciona muy bien PASSWORDS → bueno si leyeron bien ya saben para que significa aqui pondre un ejemplo inurl:"passes" OR inurl:"passwords" OR inurl:"credentials" -search -download -techsupt -git -games -gz -bypass -exe filetype:txt @yahoo.com OR @gmail OR @hotmail OR @rediff esto es algo dificil de entender pero lo explico ºuº El inurl:”passes”, inurl:”passwords” y inurl:”credential lo que ase es buscar lo que contenga la palabra passes ,passwords y credentail muy facil no pero si le añadimos ”usernames encontrara lista de usuarios -search -download -techsupt -git -games -gz -bypass -exe poniendo el - lo que ara es que google excluya webs de juegos descargas y otras cosas,con ello le diremos a google que queremos una busqueda en concleto y no todas El filetype:txt que nos buscara archivos con la extensión .txt. Los @gmail.com , @yahoo.com ,etc buscara archivos de texto que contenga algún correo esta pagina nos mandara muchos resultados de phising por que le espesificamos que queriamos un archivo con .txt hoo gran maestro no entendi lo que me as dicho? bueno un ejemplo de lo que acabo de decir es un archivo .pdf que es un tipo libro, es como buscar en google acm1pt de grayn.pdf la busqueda nos mandara a un na pagina que al clicear los darcargara el archivo .pdf lo mismo pasa con el .txt MENSAJES DE ERROR esto lo pedemos utilizar para ver si el que creo la pagina no tenia conocimientos o para explotr sus errores a nuestro favor por ejemplo "Warning: mysql_query()" "invalid query" ay que tener cuidado de no poner como, ayuda ya que nos aparecera algo asi ´´como eliminar error warning´´ BUSQUEDA DE INFORMACION INTERESANTE A qui encontramos archivos que no son publicos del gobierno informacion confidencial etc "not for public release" inurl:gob OR inurl:edu OR inurl:mil -.com -.net -.es . PAGINAS DE LOG IN esto nos ayudara a entrar a una pagina con puño de hiero osea ala fuersa intitle:"Log In" "Access unsecured content without logging in" perdonen por mi falta de ortografia pero tengo que aser este post rapido que es Phishing o suplantación de identidad es un término informático que denomina un modelo de abuso informático y que se comete mediante el uso de un tipo de ingeniería social caracterizado por intentar adquirir información confidencial de forma fraudulenta (como puede ser una contraseña o información detallada sobre tarjetas de crédito u otra información bancaria). El cibercriminal, conocido como phisher, se hace pasar por una persona o empresa de confianza en una aparente comunicación oficial electrónica, por lo común un correo electrónico, o algún sistema de mensajería instantánea o incluso utilizando también llamadas telefónicas.1 esto es una informacion que ley en un libro ase unos años pero no lo encontre asi que puse el metodo que utilizo yo y lo que me acuerdo, las imagenes me las robe descarada mente de google imagenes

Creación de cuenta No-IP medí cuenta en el anterior post que poner imagenes de mujeres los distrae demaciado acerca de lo que acaban de leer asi que pondre imgenes al final (no pondré muchas de mujeres) Bien, empecemos creando nuestra cuenta No-IP. Para ello visitamos la página oficial www.no-ip.com y nos tendremos que registrar, les recomiendo ANOTAR TODA LA INFORMACION QUE PONGAN POR SI LA TENDREMOS QUE UTILISAR MAS ADELANTE Ahora rellenamos el formulario y activamos la cuenta con el mensaje que llegará a nuestro correo. Nos logueamos y aparecerá la pantalla principal. Le damos a añadir host Y nos aparecerá un panel como este: Ok, ponemos en Hostname el nombre que queramos ponerle, yo pondré PracticasHxC, y creamos. Donde pone zapto.org podéis dejarlo así si queréis, yo lo cambiare ano-ip.biz, pero da igual . Cuenta creada Cuando terminemos de crear todo, descargamos el DUC en la pestaña Downloadde la página principal de No-IP. Lo instalamos. Abrimos nuestra cuenta creada en ella, tildamos nuestro host, que estará en Select Host y tienen que estar así: Terminamos de configurar nuestra no-ip Pero, ¿por qué hacemos esto de no-ip? Simple, ¿nunca te has dado cuenta que tienes una IP un día y si la miras otro día distinto es diferente? Esto es porque nuestra IP externa es dinámica. Esto quiere decir que se cambiara constantemente y no será estática (fija). Para manejar nuestro RAT sin perder a los remotos, necesitaremos un punto de conexión estático. Abrir puertos en el router y el firewall Bueno, para empezar a abrir los puertos en nuestro router tendremos que saber nuestra Puerta de enlace predeterminada (que suele ser 192.168.1.1) y que se nos mostrará como puerta de enlace. Pero para confirmarlo, vamos a: Inicio → Ejecutar → Escribimos cmd y cuando nos salga “esa pantalla negra” escribimos: ipconfig Ahora nos aparecerá algo como esto: En mi caso, y en la mayoría, es 192.168.1.1 Guay, ese “numero” nos ayudara a entrar en la configuración del router y así poder abrir los puertos. Ahora cogemos nuestro navegador favorito y ponemos nuestra IP en la dirección Url (donde aparecen o ponemos los links) asi: Nos pedirán user y password. Generalmente suele ser en ambos campos “1234” o “admin”. Si ves que probando las que he nombrado sigues sin poder entrar, visita el siguiente link y busca tu modelo de router: http://www.hackxcrack.es/forum/index.php?topic=1515.0 . Si aun así sigues sin poder conseguirlo tienes dos opciones: Buscar en http://www.adslzone.net] y/o www.google.com tu router y ver cuáles son las claves por defecto. Hablar con tu compañía de adsl y pedir que te abran los siguientes puertos que nombraré un poco más abajo. Ahora ya estamos en el panel del router. Buscamos en el apartado AdvancedSetup la pestaña NAT. Seguramente no os aparecerá igual que a mí, pero los pasos son los mismos. Le damos a Add y nos aparecerá un panel similar al siguiente: En Select a Service nos aparecerán varios programas y pondrá sus respectivos puertos en la tabla, así que no lo usaremos. En Custom Server podemos poner cualquier programa o nombre, eso no es relativo. En Server IP Address pondremos nuestra IP, y en las tablas los puestos que deseemos. En ésta revista usaré el 1200. Ya tenemos los puertos abiertos en el router, ¿facil no? Ahora solo falta reiniciar el router y listo. Ahora vamos a abrir los puertos también en el firewall: empezamos abriendo Panel de control → Sistema y seguridad → Firewall de Windows → Configuración avanzada(ésta última se encuentra en la parte izquierda). Clickeamos y nos aparecerá el siguiente panel. Click en Puertos, Siguiente y ponemos TCP y el puerto que abrimos en el router Sucesivamente vamos Sucesivamente vamos a Acción y le damos a Permitir la conexión. En Perfil ponemos Privado en mi caso. Si también queréis tenerlos abiertos en redes públicas, tildar también esa opción. Después, en Nombre, pondré Darkcomet 5, pero poned lo que queráis. El nombre no es relevante. CREAR SERVIDOR FTP El primer paso que debemos hacer es crear nuestro host FTP, para ello, volvemos a añadir un host en No-IP. Sucesivamente, nos vamos a DUC y tildamos nuestro dominio (como lo hicimos con la otra DNS). Ahora instalaremos Filezilla Serve de su página oficial https://filezilla-project.org/download.php?type=server. No tiene por qué ser el de Filezilla, puede ser cualquier otro, pero usaré este. Una vez instalado (next, next, next, install) nos aparecerá el siguiente cuadro: Cuando estemos dentro, le damos al siguiente icono y nos aparecerá un este recuadro: Le daremos a Add para añadir un usuario y le pondremos una contraseña. En la siguiente ventana Shared Folders, examinamos una carpeta vacía donde queramos que nos envie los logs, donde sea, y le damos a Ok. Ya tenemos nuestro servidor FTP configurado, ahora tan solo habría que abrir el puerto 21 en el Firewall y en el router si no lo tenemos abierto. en el siguiente post Configurando Darkcomet RAT esperen asta el siguiente post antes de utilizar lo aqui mencionado para que no se confundan o anotar toda la informacion que pongan porsi la tendramos que volver a utilizar ] desconosco el nombre de todas las mujeres en las imagenes de este post lo siento

Lo primero de todo es que por desgracia o por buenaventura, cuando se habla de malware generalmente, no se habla directamente de malware, si no de spyware. ¿Por qué? pues hay varias razones, pero a mi parecer la más acertada es porque podemos hacer muchas más cosas con cualquier herramienta de administración remota u otras herramientas de spyware que con cualquier virus. Si conseguimos administrar cualquier ordenador, podemos coger desde lo que se teclea en este a poder "joderlo" cuando nos convenga, en vez de maltratarlo directamente. Pero eso no quiere decir que no toquemos el campo de los virus, lo tocaremos, sí, pero superficialmente. También hablaremos y aprenderemos una parte importante del malware, la programación. Si se quiere avanzar en el malware, es de vital importancia al menos saber un lenguaje, si no, tendremos que disponer siempre de lo que creen los demás y no cubriremos todas las necesidades que nos surjan, además de otros aspectos. Por esto, un espacio que dedicaremos será a Visual Basic 6.0, que creo que es el lenguaje más apropiado para empezar a aprender programación ya que es un lenguaje simple pero fuerte, y funciona en la gran mayoría de versiones de Windows (2000, XP, Vista, 7 y 8) En conclusión, este cuaderno te servirá para poder defenderte en el malware, pero lo recomendable (y si te gustó el cuaderno) es que se siga aprendiendo y haya motivación por ello. ¿Quién sabe? Quizás llegues lejos TIPOS DE MALWARE Antes de seguir metiéndonos en el malware, debemos saber y clasificar, mediante sus distintas funciones, que tipos de malware hay ¿no? Yo, sinceramente, no estoy de acuerdo con varios aspectos sobre los distintos “tipos de malware” que circulan por la red. Un ejemplo sería la palabra “troyano”. La definición que tenemos comúnmente es que es un programa que sirve para espiar o controlar un ordenador ajeno. Si, vale, hasta aquí bien, pero… ¿qué más? La mayoría de post que hay, sobre todo la ofrecida por los antivirus, sobre este tema se queda corta y nos obliga a indagar más en la red. Entonces después de leer variada información sobre los tipos de malware, podemos sonsacar una definición algo precisa de cada tipo de malware. Te ahorre ese trabajo de buscar tanto mediante la siguiente liste donde explicaré de forma general, pero precisa, cada tipo: Los tipos más generales y usados son: Worms/Gusanos: su objetivo es spreadear (extender) otro malware u archivo. Estos pueden usar spread por .rar/.zip, por p2p, por lan, hacer enviar varios correos desde una cuenta, etc. Vamos, que sirve para tener más remotos, si usamos un spyware, o joder propagar el mayor número de ordenadores con nuestro virus. Troyanos: en verdad el término “troyano” es algo genérico y nada especifico. La definición es que es una herramienta de administración remota, es decir, para administrar remotamente un PC (e incluso móvil) desde otra PC o terminal. Básicamente hay dos tipos: 1. RAT’s: aplicaciones de administración remota legales si se usan con ordenadores del mismo propietario. Tienen varias funciones como keylogger, capturador de cam, etc. Su función básica es administrar remotamente un ordenador desde otro y poder ejecutar distintas acciones que trae consigo. 2. Botnets: más peligrosas que los rats. La usan sobre todo ciberdelincuentes y tiene funciones más interesantes que la mayoría de los rats (por ejemplo hacer un ataque de negación a una página, autospreadeo, cadenas de proxis...). 3.Spyware: como su nombre indica, son softwares espiras. Un ejemplo de este sería un keylogger (que recoge todo lo que se teclea y/o clickea en un ordenador) y también los troyanos. Por supuesto, hay más tipos, como stealers, capturadores de webcam, etc. Rootkits: son programas que se mantienen ocultos para dar privilegio sobre una computadora y/o ocultar información de la computadora al usuario. Su nacimiento provienen de los sistemas operativos Unix. 4.Virus: programas maliciosos que dañan o destruyen archivos, infectan otros programas, etc. No todos los virus tienen las mismas funciones u objetivos, por lo que el término es muy genérico, pero suelen registrar su código en otros programas. Ransomware: de la palabra ransom (rescate) cifra los archivos de la máquina víctima. Una vez cifrados, si el usuario intenta acceder a los archivos, pide que se pague una cantidad de dinero para que la máquina vuelva a su estado normal. El ejemplo más destacado hoy en día es “el virus de la policía”. 5.Rogueware: suelen ser antivirus falsos que encuentra varias “amenazas”, pero debemos pagar para eliminarlas. El proceso suele estar en primer plano, y si intentamos abrir uno de los supuestamente “archivos infectados”, no nos dejará. Juacks: programas poco peligrosos que no tienen otra función que hacer bromas pesadas o provocar molestias al usuario víctima. Un ejemplo sencillo algún programa que termine el proceso de explorer.exe, o que salga sucesivamente algún mensaje. 6.Herramientas: su código no está hecho para causar daño directamente ni tampoco tiene nada malicioso, pero puede servir de ayuda a otros malwares. Algunos ejemplos serian los crypters (que sirven para indetectar a los antivirus), binder o joiners (que juntan varios archivos en uno), etc. esto es para quitarles lo aburrido tras leer todo esto NUESTROS PRIMEROS PASOS Bien, ¡empecemos! Lo primero que haremos será empezar a configurar nuestro primer RAT haciendo que sea capaz de crear una conexión entre cliente-servidor, es decir, entre vuestro ordenador y el ordenador que queremos administrar. Para ello tendremos que crear una DNS en www.no-ip.com (usaré esta página por que las ofrece gratis), abrir puertos en router y firewall, crear y configurar un servidor FTP (para el keylogger que ofrecen los RATs), configurar el cliente y comprobar si funciona. Nota: actualmente la mayoría de RAT's son de conexión inversa y solo los antiguos son de conexión directa. La conexión directa se caracteriza básicamente en que el cliente (tu ordenador) se conecta al servidor (ordenador administrado o remoto), y la conexión inversa, como su nombre indica, es al contrario, el cliente (parte que configuramos) se conecta al servidor (nuestro ordenador). Es recomendable que sea de conexión inversa ya que probablemente pedirá al usuario remoto permiso para establecer una conexión al exterior e incluso puede que se lo salte. Sin embargo con un RAT de conexión directa lo más probable es que el firewall del remoto bloquee la conexión. Pero nosotros, además de usar un RAT con conexión inversa, usaremos una conexión mediante DNS.En el tutorial usare Darkcomet. ¿Por qué? Porque es el RAT que más me gusta y al que más me acomodo (cada RAT se debe acomodar a su manipulador) ;D Aunque es cierto que su configuración se diferencia un poco comparado con Cybergate, entre otros, así que también colgaré imágenes de una correcta configuración de Cybergate, que es muy parecido a otros troyanos como Spynet en el proximo post Creación de cuenta No-IP
surprise madafaka esto es un aviso: el contenido de este post es pura lectura no te saltes nada ya que todo esto lo tienes que saber si quieres programar un arduino bien el anterior post fue solo para que se preparen con los materiales si que enpecemos -fuciones usuales de void setup () pinmode o pin,modo existen 2 tipos unos de entrda y de salida, esta la usaremos pra este proyecto _pin input osea entrada es usado par dectectar el estado osea encendido apagado _pin output con este le enviamos las señales alas placas -serial.println o value _este muestra en nuestro monutor el valor existen mas funciones pero me da hueva poner todo cuando sea necesario otra funcion la explico antes de usarla funciones de void loop -digitalread pin lee el valor de un interruptor high o low -digitalwrite pin-value el pin es seleccionado si bamos a trabajar con el y en value manda una señal en high o low representar los valores -la honestidad: pepe tiene un oso panda en la cosina pero josebas lo mata. primero lo baña con aceite hirviendo despues con un cautin le corta la piel y, bueno , me desvio del tema primero ay que saber que arduino facilita la lectura de variables que contengan un valor gran maestro illuminati de la constelacion de andromeda, como ase eso el arduino facil si le damos a una variable un igual con el que diremos que valor numerico queremos asignar arduino ya entiende que esa nueva variable se refiere a tal numero gran maestro madafaka niga bich esto es muy complicado bueno pues presta atencion que lo e explicado bien pero aqui te dejo un ejemplo void setup() int led =13;{ pinmode(led,output;{ void loop()/ digitalwrite(led,hig{; delay(1000); degitalwrite(led,low): delay(1000); (es un rollo escribir todo esto T-T) ou yes pero cambiaste el numero 13 por led si prestas atencion, led coresponde a pin 13 parese cualquier cosa pero mas adelante marcara la diferencia AVISO DE ACIENDA int es una funcion que no cubre todos los valores tiene sus limites para otros valores existen otras funciones me la robe de google descaradamente pero esta incompleta asi que les pongo la info que falta int=representa los valores positivo y negativounsigned char=representa solo enl valor positivolong=representa valores positivos y negativos muy extensosunsigned long= representa valores positivos muy extensosfloat = representa valores en decimalesdouble= lo mismo que floatboolean = representa valores verdaderos o falsoschar= representa solo 1 caracterstring=representa un conjunto de numeros usado por muchos ya que contiene textobyte=lo mismo que char pero para valores no asignados control de flujo estos nos ayudaran a crear programas mas complejos con los cuales atudaran a hacer mas funciones para nuestros proyectos if y else la sentancia if compuesta solo si ciertas condiciones an sido alcanzadas y ejecutan todas las demas sentencias dentro de las llaves se la declaracion es cierta si son dalsas el programa las deja en visto ✓✓ naa xD el programa las ignora y ejecuta las sentencias dentro de else ejemplo con if if(cualquier variable ?? valor) { hacer algo;{ //los signos ??= representan simbolos matematicos como: >(mayor que), <(menor que), >=(mayor o igual que) <=(menor o igual que) ==(igual que) en los( ) ponen lo que se dice, ejemplo void setup() { // initialize Serial Serial.begin(9600); // baudrate 9600 Serial.println(String(a)); Serial.println("fin setup"; } void loop() { a = a + 1; Serial.println(String(a)); delay(1000); ejemplo con else if(inputpin==hig) hacer algo;//en el caso de que el valor de inpitpin sea ijual a high se ejecuta) //la sentencia haceralgo else( hacerotracosa;//en caso de no serlo,es decirinputpin es igual a low se ejecuta la)// sentencia hacerotracosa pero que es todo esto tranquilo que te explico otra sentancia y re pongo de ejemplo un code de referencia ( ͡° ͜ʖ ͡°) for la sentencia for se usa para repentir un bloque de declaraciones encerradas en llaves un bumero especifico de veces. un contador de incrementos se usa a menudo para incrementar y terminar el bucle ay tres partes se separan por punto y coma (;) en la cabecerra del bucle for(inicializacion;condicion;expresion)(haceralgo la inicializacion de una variable local o contador de inclemento susede primero y una sola vez cada vez que pasa el bucle la condicion siguiente es comprabada si la condicion devuelve true, las declaraciones y expresiones que siguen se ejecutan y la condicion se comprueba de nuevo cuando la condicion se vuelve false el bucle termina ejemplo con for for8int i=0<20;++)( digitalwrite(13;high); delay(250); digitalwrite(13,low delay (250) bueno despues de esto empecemos con la plactica primero abre el arduino IDE y como ya saben inserten el programa y cuando acabemos lo subiremos a la placa como explique anterior mente y montamos el circuito segun el diagrama que les deje practica 2 en esta plactica bamos a profundisar en el tema de la programacion realizando el montaje de 4 controladores con su interruptor corespondiente si presionamos el interuptor este se activra y el led encendera,sino el led permanese apagado codigo int inputpins ◻︎ = {2,3,4,5}; int ledpins ◻︎ = {10,11,12,12}; void setup(){ for(int index = =;index< 4;index++){ for(int index = 0;index< 4;index++); pinMode(inputPins, OUTOUT); pinMode(inputpins,INPUT); digitalwrite(inputPins,high;} } void loop() { for(int index = =;index< 4;index++){ int val = digitalRead(inputPins ; if (val == LOW({ digitalwrite(ledpins ;high; }else { digitalWrite(ledPins ;low);}} } alfin acabo bien el el sig post explico el codigo perdon por mi falta de ortografia ºuº
Explicación del código nota: el contenido es en su totalidad de lectura solo abra un par de imagenes y estas las usare de referencia para explicar nota 2: las imgenes me las robe de google Empecemos por las variables int , estas contienen un array de pines que la primera (int inputPins[--] = {2,3,4,5}; ) se encargará de los pulsadores y su estado, y el segundo (int ledPins[--] = {10,11,12,13}; )controla la señal de los leds. Los arrays son colecciones de variables consecutivas del mismo tipo. Cada variable en la colección se llama elemento. El número de elementos se llama la dimensión del array. El ejemplo anterior muestra un uso común de los arrays en el código de Arduino: Aquí los pins se conectan a pulsadores y LEDs . Las partes importantes de este ejemplo son la declaración de la matriz y el acceso a los elementos de la matriz. En este caso los arrays son de cuatro elementos. El primer elemento se fija igual a 2, el segundo a 3, y así sucesivamente: int inputPins [--] = {2,3,4,5}; Esto declara un array de cuatro elementos con el valor inicial de cada elemento puesto a cero. Este array tiene una dimensión de cuatro y puede contener, como máximo, cuatro valores. El primer elemento del array es el elemento [-0-]: int primerElemento = inputPin[-0-]; // este es el primer elemento El último elemento es uno menos que la dimensión, por lo que en el ejemplo anterior, con una dimensión de cuatro, el último elemento es el elemento 3: int ultimoElemento = inputPin [-3-]; // este es el último elemento Puede parecer extraño que una matriz con una dimensión de cuatro tiene el elemento de último acceso con arreglo [-3-], pero debido a que el primer elemento es array [0], los cuatro elementos son: array [-0-], array [-1-], array [-2-], array [-3-] En el esquema anterior, se accede a los cuatro elementos mediante un bucle for: for (int index = 0; index <4; index + +) // el index pasa el array por el bucle comprobando que cumpla con las condiciones establecidas. { / / Obtener el número de PIN de acceso a todos los elementos de las matrices de pines pinMode (ledPins [--index--], OUTPUT); // declara LED como salida pinMode (inputPins [--index--], INPUT); // declara pulsador como entrada digitalWrite(inputPins[--index--],HIGH); // activa las resistencias pull-up } Este bucle se desplazará por el index variable con valores comenzando en 0 y terminando en 3. Es un error común es acceder accidentalmente un elemento que está más allá de la actual dimensión de la matriz. Este es un error que puede tener muchos síntomas diferentes y deben tomarse medidas para evitarlo. Una manera de mantener sus arrays bajo control es establecer la dimensión del array mediante el uso de una constante de la siguiente manera: const int PIN_COUNT = 4; // se define una constante para el número de elementos for (int index = 0; index<PIN_COUNT, index + +) //en PIN_COUNT ya ponemos directamente 4 sin declararlo antes, así reducimos código El compilador no notificará un error si accidentalmente se trata de almacenar o leer más allá del tamaño del array. { for(int index = 0; index < 4; index++) //se realiza de nuevo el bucle { int val = digitalRead(inputPins[--index--]); //se lee el estado de los pulsadores if (val == LOW) //comprueba si el estado del pulsador { digitalWrite(ledPins[---index---], HIGH); //enciende el led si el pulsador esta activo (cerrado) } else { digitalWrite(ledPins[--index--], LOW); //si el pulsador esta (abierto) el led está apagado } } } cuales son los componentes de la paca Arduino UNO r3. aqui les explicare las partes, los componentes asi como unas recomendaciones 1: Puerto USB tipo B, se utiliza para comunicarse con la placa y tambien para la alimentación de esta si la corriente demandada no excede de 500mA, en el punto 3 veremos porqué. Pin 1=> Alimentación con un voltaje de 5V DC Pin 2 y 3 => Sirven para la transmisión de datos del BUS Pin 4 = Masa o tierra Para conectar la placa al pc debemos utilizar un cable con conexión USB A-B, en un extremo tiene conexión A (para PC) y en otra del tipo B (para la placa). Este tipo de cable es muy común en algunos periféricos de pc como impresoras y escaners, creo que no nos será difícil encontrar uno. 2: ATMEGA16U2 => Es el chip encargado de convertir la comunicación del puerto USB a serie. 3: Fusible rearmable de intensidad máxima 500mA => Aunque la mayoría de pc's ya ofrecen protección interna se incorpora un fusible con la intención de proteger tanto la placa Arduino como el bus USB de sobrecargas y cortocircuitos. Si circula una intensidad mayor a 500mA por el bus USB(Intensidad máxima de funcionamiento), el fusible salta rompiendo la conexión de la alimentación. 4: Cristal oscilador de 16MHz necesario para el funcionamiento del reloj del microcontrolador ATMEGA16U2. 5: Regulador de voltaje LP2985 de 5V a 3.3V que proporciona una corriente de alimentación máxima de 150 mA. 6: Conector de alimentación hembra de 2,1 mm, debe suministrarse un voltaje de entre 7-12 V (límites desde 6V a 20V como máximo). Para alimentarla si es un pequeño proyecto como los que haremos en este articulo son suficientes los 5V que nos proporciona el puerto USB, pero si deseamos alimentarla en estos u otros montajes mayores necesitaremos un cable con una conexión macho de 2,1 mm como la que se muestra en la imagen. (existen muchos tipos, tiene que ser del tipo y entrada correcta) 7: Condensadores de 47µF de capacidad y 16V 8: Diodo M7 en la entrada de alimentación de la placa. Con este diodo conseguimos establecer el sentido de circulación de la intensidad, de esta forma si se produce una contracorriente debido a la apertura de un relé u otros mecanismos eléctricos, el diodo bloqueará dicha corriente impidiendo que afecte a la fuente de alimentación. 9: IOREF=> Este pin esta conectado al de 5V situado a su lado y sirve para indicarle a la shield el voltaje de funcionamiento de la placa arduino y en un futuro para establecer la compatibilidad con placas AVR que funcionan también a 5V. 10: RESET => Esta planteado para trasladar el botón de reset a algunas shields, pero también podremos utilizarlo en algunos proyectos en el que el botón reset de la placa arduino no esté accesible. Si suministramos en este pin un valor de 0V resetearemos el microcontrolador. 11: Es una fuente de tensión de 3.3V (generada por el regulador de voltaje del punto 5) que como se ha dicho en el punto 5 proporciona una corriente máxima de 150mA. OJO: Las placas que usan el chip FTDI para hacer la conversión de USB a serial (como por ejemplo la Duemilanove) tienen un regulador de tensión interno con salida a 3.3V pero proporcionan una intensidad máxima de 50mA. Debemos de tenerlo en cuenta para no superar dicha intensidad. 12: Este pin tiene como salida una tensión de 5V regulada por el regulador de la placa. OJO: El suministro de tensión a través de los pines de 5V o 3.3V no pasa por el regulador, y puede dañar la placa. No es aconsejable utilizarlos como alimentación de la placa, están diseñados como salida de tensión no como entrada. 13: Pines de toma de tierra. 14: Vin => Podemos emplear este pin para alimentar la placa si utilizamos una fuente de alimentación externa, (no la podemos usar como alimentación si ya estamos alimentando a través del puerto USB o de otra fuente de tensión por el conector de 2,1 mm señalado en el punto 6, entonces en este caso podremos usar esta clavija para acceder al voltaje de alimentación), es decir, o usamos Vin exclusivamente para alimentación o si alimentamos por otro medio como toma del voltaje de alimentación. 15: Entradas analógicas, cada una de ellas proporciona 10 bits(1024 valores). Por defecto se mide de tierra a 5 voltios, aunque es posible cambiar la cota superior de este rango usando el pin AREF y la función analogReference(). El microcontrolador Atmega328P-PU que usa Arduino lleva integrado un conversor analógico-digital (A/D) de 6 canales. Tiene una resolución de 10 bits, retornando enteros desde 0 a 1023. Mientras que el uso principal de estos pines por los usuarios de Arduino es para la lectura de sensores analógicos, estos pines tienen también toda la funcionalidad de los pines de entrada-salida de propósito general (GPIO). Consecuentemente, si un usuario necesita más pines de propósito general de entradasalida, y no se está usando ningún pin analógico, estos pines pueden usarse como GPIO. 16: ATMEGA328P-PU=> Es un microcontrolador de la marca Atmel que constituye el procesador central de la placa. Este es el elemento que programamos para manipular sus entradas y salidas. Características: Números de pines= 28 Voltaje de funcionamiento= 5V Memoria Flash= 32Kbytes EEPROM= 1Kbytes SRAM= 2Kbytes Velocidad del reloj= 16MHz Corriente por pin = 40 mA Descripción de los pines: En este apartado explicaré la función de los pines del microcontrolador Atmega328. La mayoría de ellos conectan directamente con las entradas y salidas de la placa y serán explicados profundamente en su punto correspondiente. PC6 → 1 : Cuando alimentamos la placa arduino bien por usb o con alimentación externa en este pin tendremos un voltaje de aproximadamente 5V (microcontrolador funcionando) y se resetea el microcontrolador cuando tenemos un nivel de voltaje bajo durante más tiempo que la duración mínima del impulso. En el caso de la placa arduino se produce el reseteo cuando ponemos la rama de alimentación a tierra (0V) pulsando el botón de reset. Para asegurarnos de un reseteo correcto pulsaremos el botón durante un par de segundos. Botón en estado normal NA (normalmente abierto), el pin 1 está a un voltaje de 5V. Botón en estado pulsado (cerrado), el pin 1 está a un voltaje de 0V. Se resetea el microcontrolador. PD0 → 2 y PD1 → 3: Se corresponden con la entrada (RX) y la salida (LX) para la transmisión de datos TTL (Transistor Transistor Logic). VCC 7: → Aliementación del microcontrolador con 5V de corriente continua. AVCC → 20: Es la toma de la tensión de alimentación (5V) para el conversor A/D. GND 8 y GND 22: → → La abreviatura GND proviene del inglés (Ground), tierra en español o comunmente conocida en la electrónica como masa. Es un punto del circuito que se encuentra a un potencial de 0V. PB6 → 9 y PB7 → 10: Son los pines a los que está conectado el oscilador formado por un resonador de 16Mhz en paralelo con una resistencia de 1MΩ. El circuito está conectado de la siguiente forma: PD2 → 4, PD4 → 6, PD7 → 13, PB0 → 14, PB4 → 18, PB5 → 19: Pines digitales que pueden ser configurados como entradas o salidas. PD3 → 5, PD5 → 11, PD6 → 12, PB1 → 15, PB2 → 16, PB3 → 17: Pines digitales que soportan modulación por ancho de pulso, (PWM) del inglés Pulse Width Modulation. AREF 21: → Es el pin de referencia analógica para el conversor A/D PC0 23, PC1 24, PC2 25, PC3 26, PC4 27, PC5 28: → → → → → → Entradas analógicas. 17: ICSP => Estos pines sirven para la programación del ATMEGA328P-PU a través del puerto serie, de ahí las siglas ICSP (In Circuit Serial Programming), se utilizan para grabar el bootloader en el microcontrolador o modificarlo a través de este puerto sin necesidad de sacarlo del zócalo. El bootloader ya viene grabado de fábrica en este microcontrolador. Podemos identificar el pin1 del ISCP en la placa fijándonos el pequeño punto blanco que esta grabado sobre ella, ese punto nos indica que se trata del pin numero 1, igual ocurre en los chips, microcontroladores y otros circuitos integrados. 18: Led de color verde que se enciende cuando la placa esta alimentada. 19: RX=> Entrada de datos TTL 20: TX=> Salida de datos TTL 21: PWM=> Pines digitales con PWM (Pulse Width Modulation) o Modulación por Ancho de Pulso. Se pueden configurar como entradas o salidas Explicado brevemente una señal PWM es una onda digital cuadrada, donde la frecuencia es constante, pero la fracción de tiempo en que la señal está encendida (el ciclo de trabajo) puede variar entre el 0 y el 100%. Como vemos en la imagen con analogWrite() podemos ir variando la frecuencia de la señal dando los valores apropiados que van desde 0 a 255. 22: Pines digitales que pueden configurarse como entradas o salidas, estos no disponen de modulación por ancho de pulso. Una particularidad de los pines 2 y 3 es que pueden ser configurados para activar una interrupción en un valor bajo, un flanco ascendente o descendente, o un cambio en el valor. Con attachInterrupt () podremos manejar esta característica de dichos pines. 23: Tierra (0v) 24: Tensión de referencia para las entradas analógicas. Podemos controlar dicho voltaje con analogReference(). 25: SDA => (Serial Data) linea de datos. 26: SCL => (Serial Clock) linea de reloj. Estos dos pines SDA y SCL sirven para comunicarse con dispositivos I2C / TWI usando la librería Wire. 27: DFU-ICSP=> Puerto ICSP para el microcontrolador ATMEGA16U2, como en el caso del ATMEGA328P-PU se emplea para comunicarnos con el microcontrolador por el serial, para reflashearlo con el bootloader, hacer algunas modificaciones, ponerlo en modo DFU, etc... 28: JP2=> Pines libres del ATMEGA16U2, dos entradas y dos salidas para futuras ampliaciones. 29: Encapsulados de resistencias. 30: Pulsador para resetear el microcontrolador central (ATMEGA328P-PU). Su funcionamiento ya esta explicado en el punto 16 en el que se detallan los pines del ATMEGA328. 31: Led conectado en paralelo entre el pin 13 y GND, cuando este pin tiene un valor HIGH(5V) el LED se enciende y cuando este tiene un valor LOW(0V) este se apaga 32: Led TX 33: Led RX Estos Leds TX y RX se encienden cuando se transmiten datos a traves del puerto serie, es decir cuando estamos grabando el programa en el microcontrolador. 34: RESET-EN: Significa Reset enabled, en el habla hispana reset habilitado. Esta habilitado el auto-reset, para deshabilitarlo por cualquier tipo de seguridad (por ejemplo un proyecto que tenemos funcionando y no queremos que nadie lo reinicie) debemos desoldar los pads RESET-EN y limpiarlos de forma que estean aislados el uno del otro. 35: Resonador cerámico de 16 Mhz para el microcontrolador ATMEGA328P-PU. Los resonadores cerámicos son menos precisos que los cristales osciladores, pero para el caso hace perfectamente la función y ahorramos bastante espacio en la placa. Como se detalla en el punto 16, el resonador genera da base de tiempos para el funcionamiento del microcontrolador. aqui termina el proyecto de arduino
para empezar que es un arduino.se come, a que sabe, un arduino no se come sino que. un arduino es una plataforma de desarrollo de computacion basada en una placa electronica y un entorno de programacion encargado de crear el software para dicha placa, compilarlo y grabarlo en el microcontrolador de esta. Tanto la placa como el entorno de programacion son Open Source, de esta forma tenemos acceso al codigo del IDEArduino y a los esquemas del circuito de la placa que podremos montar nosotros mismos si nos lo planteamos y disponemos de los componentes y herramientas necesarias los arduino es capas de interactuar con el mundo fisico y el mundo virtual con gran potencial para desarollar abjetos electricos como los robotss pero no sin ir mas alla de nuestro alcanse no quieran aser una protesis robotica instalacion de la programacion IdeArduino en Linux y Windows. aqui lo instalamos y lo configuramos para despues ser cosinarlo con wasabi .en linux es mas facil instalar el idearduino ejecutando desde la consola el sig comando apt-get install arduino es muy facil y rapido pero tiene el poblema la version de los repositorios es vieja y algunas placas no lo reconocen asi que les dire como instalarlo desde un paquete oficial con ello lo obtendremos actualizado antes debemos de instalar el java mames 15 o cualquier version aqui un tuto de como instalarlo tutorial http://www.java.com/es/download/help/linux_install.xml gran maestro no se si lo tengo instalado que en mi pc alien ware 20089 pro mames cabron premiun!!!! no ay pedo abre el cmd de linux osea la terminal y pon java -version te debe de salir esto si lo tienes despues descargarnos el programa de arduino aqui el link http://arduino.cc/es/Main/Software Descargamos el paquete y lo guardamos en el escritorio. Abrimos una terminal y le pasamos la ruta del Escritorio partiendo de la raíz (esto depende del sistema de ficheros propio), en mi caso: cd /home/BlindOwl/Escritorio descompriminos el paquete tar -xvzf arduino-1.0.1-linux.tgz se abre el contenido en una carpeta llamada rduino-1.0.1 segun la version esta es la que yo tengo la suya sera una version deferente bien, lo copiamos y pegamos en /bin con nuestro dedito indice con olor a ojt le picamos al click derecho en la apricacion y en editar menus se abrira un menu en el que podemos gestionar las aplicaciones en crear un lanzador para idearduino en la seccion de programacion (esta en la parte izquierda del menu) pulsamos elemento nuevo y se abre una ventana para crear un lanzador ºen nombre ponemos arduino ºen comando /bin/arduino-1.0.1/arduino ºen comentario ponemos lo que sea ºen el recuadro de la imagen o el icono especifica la ruta donde se encuentra ºle ponemos aceptar se creara el lanzador Configuración de IDEArduino con la placa: conectamos la placa en la pc y le damos a Herramientas → Tarjeta seleccionamos la placa que tengamos en el caso de este tutorial pondre placa uno en Herramientas → Puerto Serial debemos tener marcado algo como /dev/ttyACM# o /ttyUSB# (puede variar el numero en #), por ultimo en Herramientas →Programador seleccionamos AVRISP mkll. Ahora ya deberíamos poder comunicarnos con la placa, para asegurarnos cargaremos un programa y nos fijaremos si los leds TX y RX parpadean al grabarlo en el microcontrolador. Instalando y configurando IDEArduino en Windows: Se da por sentado que ya tenemos instalado java, si no es así hay que descargar el ejecutable desde la pagina oficial e instalarlo http://www.java.com/es/download/ Descargamos el programa en su última versión de la página oficial http://arduino.cc/en/Main/Software y lo descomprimimos en el pc, se creara una carpeta arduino-1.0.1, la abrimos y ya podemos abrir nuestro entorno de programación. para instalar el driver abrimos administrador de dispositivos con la placa conectada y nos aparece el listado Otros dispositivos → Dispositivo desconocido “Actualizar controlador” y después “Buscar software de controlador en el equipo”, especificamos la ruta de la carpeta drivers que se encuentra dentro de la arduino-1.0.1 que descomprimimos y aceptamos, automáticamente se instala el controlador. lAbrimos el entorno de programación y en Herramientas → Puerto Serial seleccionamos el puerto COM# que nos aparece en el administrador de dispositivos cuando instalamos el driver. Probamos a grabar un programa de prueba y nos fijamos si parpadean los leds TX y RX, si lo hacen y no sale ningún error en el IDEArduino esta todo correcto. Programación y prácticas. un arduino tiene facilidad en el entorno de programacion ya que utiliza un lenguaje c en el cual muchas funciones an sido eliminadas creando un lenguaje muy simpre pero versatil por ello tiene la posiblilidad de agregar libretas segun el proyecto que quieras hacer -Una cosa¿Qué es un diodo LED? Un diodo led es un tipo de diodo que ha sido contaminado en su proceso de montaje para que al pasar corriente eléctrica emita luz. -Aaaah mas o menos como una bombilla No exactamente, ya que los diodos tienen una polarización ,es decir que no da igual su conexión con la pila ya que la patilla larga debe ir al polo positivo de la pila y la patilla corta a tierra (Ánodo y cátodo). -Ok me fijaré en la conexión del diodo sabiendo esto empecemos Abrimos Arduino IDE Nos saldrá una ventana similar a esta, aquí es donde escribiremos el programa (las diversas acciones que realice nuestra placa con los distintos componentes electrónicos). Una vez abierto el programa tenemos que saber que hace cada botón que vemos en lainterfaz y como se mete el programa en la placa arduino. El botón 1 lo que hará es comprobar si la sintaxis del programa es correcta. El botón 2 sube el programa (si es correcto) a nuestra placa arduino que debe estar conectada al ordenador con un cable como este: (El USB tipo A al ordenador y el tipo B conectado a nuestra placa) El botón 3 es útil para cuando los programas empiezan a ser más largos, lo que hace es abrir una nueva hoja para seguir con el programa. El botón 4 sirve para abrir ejemplos de programas con las diversas librerías. El botón 5 sirve para guardar nuestro programa en el ordenador. El botón 6 abre una ventana en la que se pueden ver/interactuar en aquellos programas que establecen una comunicación directa con el ordenador. pero maestro iliminati de la constelacion de orion y sus estrellas que susede como que libretas, las que usames en la escuela, o una libreta de apuntes? Muy buena pregunta aunque estamos retrasando bastante el parpadeo de nuestro diodo led. Una cosa muy importante en arduino son las librerías dicho de manera sencilla son las que hacen que nuestra placa pueda realizar las diferentes acciones que queremos que desarrolle de una forma mas sencilla, de esta forma reducimos mucho el código. En la pagina de arduino viene esto sobre las librerías: Las Librerías proveen funcionalidad extra a nuestro sketch, por ejemplo: al trabajar con hardware o al manipular datos. Arduino de por si trae unas librerías para realizar montajes pero nosotros podemos agregar nuevas librerías según lo que queramos hacer. Por ahora no explicaré como agregar nuevas librerías ya que las que trae por defecto nos bastaran para realizar los proyectos. Una vez dicho todo esto empecemos con nuestro primer programa void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); } que es todo esto -Jajaja esto son las instrucciones que harán que nuestro diodo led parpadeé -Pues explica cada cosa que con esto me has matado En todo programa de arduino hay dos partes: void setup() y void loop() void setup() es la parte en la que nosotros diremos a la placa cuales son los pines que debe utilizar y de que modo. void loop() es la parte donde diremos las acciones que tiene que realizar la placa con esos pines. En este caso en void setup() estamos diciendo que el pin 13 de la placa actué como salida. En void loop() estamos usando la función digitalWrite() que lo que hace es enviar una señal eléctrica si esta en HIGH y si esta en LOW no enviarla. Y delay() que lo que hace es esperar un tiempo hasta que se realice la siguiente acción en este caso 1000 milésimas de segundo que son 1 segundo (Esta función se mide en milésimas). en resumen lo que hacemos es mendarle una señal electrica ala placa 13 en donde esta conectado el diodo lo que are que este prenda y el segundo se apagare consecutivamente Así sería la conexión correcta del diodo según lo que hemos escrito. Sólo nos quedaría subir el programa a la placa con el botón 2(Imagen anterior) conectar el diodo correctamente y esperar resultados. (La patilla larga del diodo en el pin 13) maestro no entendi bien lo que acabas de decir no te preocupes que esto solo es la introduccion en el proximo capitulo de las pelotas del dragon empezaremos a programar que todo esto fue solo la intro es mas que obvio denunciado lince[

link: https://www.youtube.com/watch?v=eAtjeczZ54U He bebido un enorme trago de veneno. ¡Bendito tres veces el consejo que ha llegado hasta mí! Me queman las entrañas. La violencia del veneno me retuerce los miembros, me vuelve deforme, me derriba. Me muero de sed, me ahogo, no puedo gritar. ¡Es el infierno, la pena eterna! ¡Ved cómo se alza el fuego! Ardo como es debido. ¡Anda, demonio! Yo había entrevisto la conversión al bien y a la felicidad, la salvación. ¡Pero cómo describiría mi visión, si el aire del infierno no soporta los himnos! Eran millones de criaturas encantadoras, un suave concierto espiritual, la fuerza y la paz, las nobles ambiciones, ¿qué sé yo? ¡Las nobles ambiciones! ¡Y esto sigue siendo la vida! ¡Si la condenación es eterna! Un hombre que se quiere mutilar está bien condenado, ¿no es así? Yo me creo en el infierno, luego estoy en él. Esto es el catecismo realizado. Soy esclavo de mi bautismo. Padres, habéis hecho mi desgracia y la vuestra. ¡Pobre inocente! El infierno no puede atacar a los paganos. ¡Esto sigue siendo la vida! Más tarde, las delicias de la condenación serán más profundas. Un crimen, pronto, y que caiga yo en la nada, según la ley humana. ¡Pero calla, cállate! ... Aquí están la vergüenza, el reproche: Satán que dice que el fuego es innoble, que mi cólera es espantosamente estúpida. ¡Basta! ... Son errores que me susurran, magias, perfumes falsos, músicas pueriles. -Y decir que yo poseo la verdad, que veo la justicia: tengo un juicio sano y firme, estoy a punto para la perfección... Orgullo-. La piel del cráneo se me deseca. ¡Piedad! Señor, tengo miedo. ¡Tengo sed, tanta sed! Ah, la infancia, la hierba, la lluvia, el lago sobre las piedras, el claro de luna cuando en el campanario sonaban las doce... a esa hora el diablo está en el campanario. ¡María! ¡Virgen Santa!... Horror de mi estulticia. Allá lejos, ¿no hay almas honestas que me quieren bien?... Venid... Tengo una almohada sobre la boca y ellas no me oyen, son fantasmas. Además, nadie piensa nunca en los otros. Que no se me acerquen. Es seguro que huelo a chamusquina. Las alucinaciones son innumerables. Esto es de veras lo que me pasó siempre: ninguna fe en la historia, olvido de todos los principios. Me lo callaré: Poetas y visionarios se pondrían celosos. Yo soy mil veces más rico, seamos avaros como el mar. ¡Ah, es eso! El reloj de la vida se ha detenido hace un momento. Ya no estoy en el mundo. La teología es seria, el infierno está ciertamente abajo -y el cielo arriba-. Éxtasis, pesadilla, sueño en un nido de llamas. Cuántas malicias para atender los campos ... Satán, Fernando, corre con las semillas silvestres... Jesús camina sobre las zarzas purpúreas, sin doblarlas... Jesús caminaba sobre las aguas irritadas. La linterna nos lo mostró de pie, blanco y las crenchas brunas, en el flanco de una ola de esmeralda ... Voy a descorrer el velo de todos los misterios: misterios religiosos o naturales, muerte, nacimiento, porvenir, pasado, cosmogonía, nada. Yo soy maestro en fantasmagorías. ¡Escuchad! ... ¡Yo tengo todos los talentos! Aquí no hay nadie y hay, alguien: no querría derrochar mi tesoro. ¿Queréis cantos negros, danzas de huríes? ¿Queréis que desaparezca, que me hunda en busca del anillo? ¿Lo queréis? Fabricaré oro, medicamentos. Fiaos en mí, la fe consuela, guía, cura. Venid, todos, hasta los niños pequeños, para que os consuele, para que se prodigue en vosotros su corazón, ¡el corazón maravilloso! ¡Pobres hombres, trabajadores! No pido plegarias; con sólo vuestra confianza, seré feliz. Y pensemos en mí. Esto hace que añore poco el mundo. Tengo la suerte de no sufrir más. Mi vida fue sólo una serie de dulces locuras, es lamentable. ¡Bah! Hagamos todas las muecas imaginables. Decididamente, estamos fuera del mundo. No más sonido. Mi tacto desapareció. ¡Ah! mi castillo, mi Sajonia, mi bosque de sauces. Las tardes, las mañanas, las noches, los días... ¡Si estaré cansado! Yo debería tener un infierno para mi cólera, un infierno para mi orgullo, y el infierno de las caricias; un concierto de infiernos. Me muero de cansancio. Esto es la tumba, voy hacia los gusanos, ¡horror de los horrores! Satán, farsante, tú quieres disolverme con tus hechizos. Yo reclamo. ¡Yo reclamo un golpe de tridente, una gota de fuego! ¡Ah, subir de nuevo a la vida! ¡Poner los ojos sobre nuestras deformidades! ¡Y ese veneno, ese beso mil veces maldito! ¡Mi flaqueza, la crueldad del mundo! ¡Dios mío, piedad, ocultadme, me siento demasiado mal! Estoy oculto y no lo estoy. Es el fuego que se alza con su condenado.