Mi tarjeta de negocios USB

¡Hola!



Además del trabajo principal, hago muchos proyectos favoritos, pero nunca escribí sobre ellos. Ahora decidí rectificar la situación y escribir sobre el proyecto que acabo de completar. Esta creación fue inspirada por este trabajo de George Hilliard.







Objetivo del proyecto.



Haga la versión más barata de la tarjeta de negocios USB Flash, que contendría mi currículum, código fuente y algunos archivos más. Al hacerlo, use los componentes disponibles que se pueden pedir a LCSC y JLCPCB.



¿Qué necesitaba hacer para esto?



Recoja los componentes y los bienes baratos, pero no los de consumo, diseñe una placa de circuito impreso para ellos, suéldelos y escriba el firmware.



¿Qué hace mi tarjeta de negocios al final?



Como puede suponer, mi tarjeta de visita imita una pequeña unidad flash USB que contiene un currículum bilingüe, código fuente, firmware, archivos gerber, circuitos y una placa de circuito impreso, así como mi foto.



Nodos clave del proyecto



Microcontrolador STM32F070F6 : esta fue la versión más barata del controlador con un dispositivo USB a bordo que encontré;

Winbond W25Q32 : memoria flash serie de 4 MB;

LED 0805 - colores blanco y azul, para belleza;

LP3992 - convertidor de baja tensión para 3.3V, fuente de alimentación de microcircuitos;

USBLC6-2 : protege el "conector" USB de la electricidad estática.



Mi enfoque para el desarrollo de proyectos de mascotas.



Hay una cierta manera que sigo al programar microcontroladores:



  1. No utilice SPL, HAL y otras bibliotecas para programar periféricos. Me adhiero a esta regla en mi trabajo principal;
  2. No use el sistema operativo. Creo que los proyectos de mi hogar no son tan complejos para usar esta útil herramienta;
  3. . ( );
  4. . ( ).




Componentes



Primero, necesitaba seleccionar los componentes para mi idea. Aparte del polvo suelto, no tenía nada. Para hacer esto, decidí usar el servicio LCSC como una opción barata y asequible para el desarrollo del hogar. Al final resultó que, en muchos aspectos, entré la túnica en la túnica. Por ejemplo, usé todas las patas del microcontrolador, mantenidas dentro de 6kB de RAM, de las cuales 4kB tomé un búfer para transferir datos desde USB a SPI Flash, usé patas para USB que no están físicamente presentes en este controlador, etc.



Como resultado, el precio salió como sigue:

microcontrolador STM32F070F6 -0.64 $

Memoria flash serie Winbond W25Q32 - $ 0.35

Convertidor reductor LP3992-33B5F - $ 0.04

Protección estática USBLC6-2SC6 -0.08 $

Cuarzo - $ 0.15



Utilicé resistencias y condensadores en el factor de forma 0603, LED 0805. Ya tenía todo esto, por lo que no es posible calcular su costo. Sin embargo, es seguro decir que por el precio, todo encaja en $ 1.5 con un margen. No parece barato en comparación con el proyecto Billar, pero mis precios no son al por mayor.



Placa de circuito impreso y circuitos Diseñé el circuito



y la placa de circuito impreso en el diseñador Altium, adjunto capturas de pantalla.











Todos los componentes se atan de acuerdo con las hojas de datos. El microcircuito de la memoria flash se inicia desde el controlador a través del transistor MIS.



El conector USB fue el problema aquí. Según la especificación USB, tiene un grosor de 2 mm. Un tablero de este grosor es costoso de ordenar, y no es muy práctico para una tarjeta de presentación. La salida de la situación espié a una personaquien hizo una tarjeta de presentación musical. Utilizó una placa de 1 mm e hizo un conector adicional, que se suelta y se suelda sobre la placa principal. Yo hice lo mismo.







Soldadura



Soldar los componentes generalmente no fue un problema. Sellé todo con un secador de pelo y pasta de soldadura. El único problema para mí fue la soldadura del microcontrolador. Se produjeron demasiados borrones a partir de la pasta de soldadura, es difícil soldar tales patas con un soldador. Como resultado, simplemente me perdí todas las almohadillas con soldadura, y luego solde el microcontrolador con un secador de pelo.



Programación



No tengo nada especial que decir aquí, programé todo en un nivel bajo, en el lenguaje C ++. Adjunto el código fuente . Me dirigí a los registros por artículoslamerok. El USB se implementa utilizando medios de microcontrolador. El chip de memoria flash opera en SPI sobre DMA a la velocidad más alta. Los diodos parpadean a su vez por la interrupción del temporizador a 250 ms.











Conclusión



Eso es todo lo que pienso, los puntos principales que describí. Si necesita revelar algo con más detalle (programación de USB, Flash o circuitos), entonces escriba, definitivamente lo haré.



¡Todo lo mejor!



All Articles