Paso 4: terminado! Toques finales, el código y el futuro.
Cypress ofrece algunas diferentes formas de programar esta cosa, pero usted probablemente querrá el MiniProg USB Programador. Utilizar con la cabecera Programación ponemos en (con la forma en que ordenamos los pasadores, mantenga la parte delantera de él hacia arriba.
Estad atentos, a distribuir el código tan pronto como se limpia un poco, hace presentable y legible. Mientras tanto, el archivo hexadecimal para una aplicación "demo" se coloca por debajo. Este sencillo programa se ejecutará primero a través de una rutina de calibración, a trazar alrededor de la frontera de la pantalla. Cuando se instala en la esquina superior izquierda, presione y sostenga firmemente este punto. Repita con la esquina inferior derecha cuando se instala allí. El preparador volverá a la parte inferior izquierda. Cuando esto esté hecho, traza en cualquier lugar en la pantalla y el grabador dibujarlo. Tenga en cuenta que la velocidad del motor del hacia abajo un poco ahora... oso con ella. No debe perder ninguno de sus movimientos de todos modos, sólo le dan una oportunidad para mantenerse al día.
Voy a ir sobre algunas de las características que son listos o que viene pronto, pero no recomendados en esta demo:
La materia prima cruda detrás de casi todo (y algo para los desarrolladores dispuestos a comenzar a pensar) es un par de funciones de C--uno para sondear el panel táctil y devuelva el estado (tocado o no) y coordenadas (traducidos usando datos de calibración a la posición de paso a paso) de ese toque. La otra es la función que unidades de los motores paso a paso, los argumentos son las coordenadas X e Y del destino. El grabador se moverá en línea recta hasta ese punto. El motor que necesita recorrer la distancia más lejana es la velocidad máxima, mientras que la velocidad del motor más lento es scalled proporcional a la pendiente de la línea que necesita para viajar a través. Aunque todavía no implementado limpiamente, existen disposiciones para cambiar estas velocidades mientras que en los motores están en movimiento. El desarrollador también tiene acceso en todo momento a la posición actual del grabador.
Hay un sistema de menú/submenú general con opciones pintura, juegos (o aplicaciones) y opciones. Opciones permite al usuario calibrar si obtiene la pantalla cambió de puesto un pedacito o algo (sí, me doy cuenta que esto significa que las necesidades del usuario pantalla táctil confiable para hacer la pantalla táctil confiable, habrá maneras de "emergencias" en el arranque). Calibración normalmente se guardará en Flash interno de PSoC, por lo que el ajuste se guardará cuando el dispositivo está apagado.
La aplicación de pintura es similar a lo visto en las demostraciones, pero con más opciones. Los usuarios pueden cargar/guardar dibujos a y de las EEPROMs. Actualmente, este es el único uso para esos chips--uno mantiene constantemente mantiene un registro de entradas. Si es corte de la energía, el usuario puede recuperar de esta copia de seguridad. De lo contrario, cuando el usuario elige guardar, esto se copia hacia fuera a uno de los otros EEPROMs. A "cargar" rastros de la operación a un conjunto guardado de entradas tan pronto como sea posible, el usuario obtendrá una copia al carbón (aluminio?) de una imagen de él o ella ha dibujado anteriormente que puede editar más.
Juegos/apps ahora son un poco limitadas. Tipo de reciclado algún código de otro proyecto para permitir algunos trig de punto fijo para algunas cosas básicas diseño de juegos 2D. Hay algunos pong-ish bola que despide demos/pruebas y todo eso a partir de ahora.
Todavía quiero poner en una especie de sistema de dibujo de texto estandarizado (un teclado de software podría ser útil para algunas cosas, demasiado).
De todos modos, hay mucho espacio para mejoras futuras para tanto hardware, también.
Que puede has escogido para arriba en uno de los... inconviences asociados con esta pantalla de alta tecnología. Borrado es un poco un lío. El dispositivo no es muy propicio para la agitación ahora mismo, pero se dibuja una X en la pantalla cuando necesite claro. El usuario entonces... Umm... manualmente reemplaza el estado de elemento de imagen y luego se toca la pantalla en cualquier lugar y el programa continúa, en lo que se necesita. En el futuro versiones de hardware, espero poder automatizar o agilizar al menos borrar.
Obviamente hay una segunda "característica" que puede ser algunas personas saltando de LCDs a esta nueva tecnología (gente como familiaridad, supongo) y es el hecho de que el grabador no puede levantar la pantalla. Mientras que un gran foco de esta versión fue mantener el Etch-A-Sketch sin adulterar, en el futuro versiones, planeo mover algunos de los aparatos dentro. Una cosa que espero hacer es reemplazar el grabador de acciones con un nuevo doodad con un electroimán y un resorte, por lo que esta "característica" podría desactivarse por aquellos no está lista para abrazar el futuro. Trabajar mucho más como una pantalla vectorial tradicional, con control de posición no sólo X e Y, pero una "viga" activar/desactivar (táctil y suelte) así.
Otro cambio que quiero hacer cuando la apertura de la cosa reemplaza el panel de vidrio común en etch-a-sketch con el panel táctil de vidrio-movió. Ninguna idea de lo bien o mal esto va a ir.
Otra cosa que tiene que cambiar es el hecho de que esta cosa no puede auto-centro en el inicio. Es puramente de lazo abierto ahora mismo, por lo que se basa en ser restablecer manualmente por el usuario en la esquina inferior izquierda de la pantalla antes de poder.
Sólo usé una fuente de trabajo para la prueba, pero esta cosa ser viable como una plataforma portátil, necesitará una batería (bien, así que uno muy carnoso) e integrado circuito de carga.
Idealmente, me gustaría reemplazar las EEPROMs con una tarjeta SD.
Y si somos realmente serios sobre competir con Apple, esta cosa obviamente necesita 3G, Wi-Fi y GPS, también. YEP.
De todos modos, en la despedida te ofrezco estos clips par segundo de largo realmente pésimos de pruebas de durante el desarrollo, teasers para qué esperar, que tomé con la única cámara que tengo disponibles (siento, realmente!)
Lo que sea, chicos, ¡ diviértete! Estoy deseando trabajar con usted! Tienen en su corazón la imagen del día donde cada individuo moderno está llevando uno de estos chicos malos alrededor!