22 votos

Lenguajes de programación para ingenieros electrónicos

Soy estudiante de Ingeniería Electrónica y Comunicaciones, antes de llegar a la universidad, me ha interesado la programación y las aplicaciones informáticas. Me había centrado en diseñar aplicaciones para Windows y aprender sus técnicas, pero ahora, siento que esto es inútil en mi campo... ¡No tengo por qué aprenderlo todo sobre informática y desarrollo de software! (¿Estoy en lo cierto?)

Conozco VB .Net, C# y C++. Tengo mucho tiempo en mis vacaciones así que quiero profundizar programáticamente en el "campo de la electrónica". ¿Qué me recomendarías aprender o en qué centrarme?

Quiero que esos lenguajes se utilicen en la programación de microcontroladores y otros circuitos integrados. ¿Basta con C++ o debería dominar también C? Dime lo que piensas por favor.

6voto

jwalkerjr Puntos 828

¿Basta con C++? Tal vez.

Recuerda que C se utiliza en el 90-99% de los ordenadores de sobremesa, así que C es imprescindible en tu currículum.

Pero ya que eres un tipo de alto nivel que podría empezar a jugar con el Arduino: s ya que se programan con una escala hacia abajo C ++, y que daría una idea aproximada de lo que C ++ puede hacer en el mundo mcu ahora.

3voto

shash Puntos 668

Para los microcontroladores (y sólo me referiré a los microcontroladores), creo que C es un lenguaje de entrada mucho mejor que C++. Ensamblador sería el siguiente paso, fantástico para ayudarte a entender cómo tu compilador de C te está jodiendo, creando bugs, robando ticks de reloj, etc., y exprimiendo al máximo el rendimiento de tu plataforma. Todo esto asumiendo que estás hablando de un microcontrolador -- no un arduino, BASIC Stamp, o cualquier otra plataforma que implique un microcontrolador envuelto.

Es difícil decir qué es útil para "tu campo" -- ¡y sugerir que como estudiante puede que aún no sepas realmente cuál es tu campo! -- pero creo que tu conjunto de lenguajes parece bastante razonable y te encontrarás utilizándolo una y otra vez. Como mínimo, tener un buen dominio de un lenguaje estructurado hace que el siguiente sea mucho más fácil, pero creo que siempre será bueno tener en el bolsillo los conocimientos de programación de Windows.

2voto

jop Puntos 31978

Podrías aprender C y el tipo de código ensamblador que generan las sentencias C si trabajas con procesadores, pero también deberías enseñarte a usar un shell de línea de comandos Unix como bash y las herramientas que lo acompañan como sed, ed, awk, vim/vi, find, tar, gzip, ... así como Python que puedes usar en muchas plataformas y es una buena forma de "hacer las cosas".

2voto

Kieron Puntos 5096

Debes aprender C si quieres ser un desarrollador embebido serio. También deberías saber ensamblador, aunque probablemente lo utilices muy poco.

0voto

user13107 Puntos 313

En primer lugar, definiré a un ingeniero electrónico como alguien que participa en el diseño de hardware, desde el firmware hasta el diseño de chips, pasando por el diseño de placas. En algunos casos, te dedicarás al firmware y, como ya se ha dicho, necesitarás "C". A mayor profundidad, el software se convierte en una mera herramienta; comprender algunos conceptos de informática en lenguajes complementarios, desde C/C++ hasta lenguajes tipo Lisp, será más importante que los aspectos específicos. Necesitarás software para apoyar tus esfuerzos de diseño, pero eso no tiene prioridad sobre la comprensión de los límites fundamentales de lo que se puede hacer en una implementación física. El diseño digital NO es Verilog/VHDL aunque el diseño se exprese en esos lenguajes. En el diseño totalmente personalizado e in-silico verás lenguajes tipo Lisp y C - lenguajes funcionales. Las cosas están tendiendo más hacia Python para scripting pero hay mucho Perl/Skill/C/System C/ Verilog-A/VHDL bancos de prueba y software/scripts de comprobación.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X