Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico Matemáticas y Naturales
Departamento: Informatica
Área: Area III: Servicios
(Programa del año 2019)
(Programa en trámite de aprobación)
(Programa presentado el 13/09/2019 08:46:20)
I - Oferta Académica
Materia Carrera Plan Año Periodo
ELECTRONICA PROGRAMABLE TEC.UNIV.ELECT. 15/13-CD 2019 2° cuatrimestre
ELECTRONICA PROGRAMABLE TEC.UNIV.ELECT. 24/11-CD 2019 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
AGUIRRE, JESUS FRANCISCO Prof. Responsable P.Adj Exc 40 Hs
VIANO, HUGO JOSE Responsable de Práctico JTP Exc 40 Hs
ALCARAZ, ALEJANDRA JAQUELINA Auxiliar de Práctico A.2da Simp 10 Hs
ARIZA, CARLOS ROBERTO Auxiliar de Práctico A.1ra Semi 20 Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
 Hs. 2 Hs.  Hs. 4 Hs. 6 Hs. 2º Cuatrimestre 05/08/2019 16/11/2019 15 90
IV - Fundamentación
Se introduce al alumno en el uso de un nuevo ambiente de trabajo (GNU/Linux). Se analizan sus particularidades al mismo tiempo que se desarrollan y elaboran prácticas sobre el mismo a través de herramientas avanzadas del lenguaje de programación C, para que los alumnos sean capaces de resolver de manera eficaz distintos problemas de carácter general y programar microcontroladores.
Es necesario que el alumno se interiorice de los detalles del hardware y de como un Sistema Operativo se hace cargo de la operación de todas las partes. Es necesario que el alumno pueda transferir estos conocimientos a cualquier hardware y software existente en el mercado.
V - Objetivos / Resultados de Aprendizaje
Que el alumno logre:
• integrar los conceptos adquiridos en materias anteriores respecto de la interacción de las partes de una computadora,
• identificar claramente el manejo de los distintos dispositivos por parte del S.O.,
• interactuar con el hardware a bajo nivel,
• perfeccionar el uso del lenguaje de programación C,
• desarrollar habilidades para la resolución de problemas reales de ingeniería mediante técnicas de cálculo numérico,
• incorporar conocimientos necesarios para programar microcontroladores,
• incorporar el paradigma de programación Orientado a Objetos.
VI - Contenidos
Unidad I: Conceptos Avanzados de C (1era. Parte)
Concepto de Variables Puntero. Usos. Pasaje de Parámetros con Punteros.

Unidad II: Conceptos Básicos de GNU/Linux
Sistemas Operativos: Fundamentos. Funciones Básicas. Estructura. Clasificación. Ingreso al sistema. Intérprete de comandos. Uso de comandos. Consolas Virtuales. Aspectos del S.O.: Estructuración de la información: lógica y física. Administración de la información: comandos asociados.

Unidad III: Conceptos Avanzados de GNU/Linux
Concepto de Multiusuario. Seguridad de la información: comandos asociados. Aspectos del S.O.: Organización. Archivos especiales. Sistema de Archivos. Acceso a diferentes sistemas de archivos: comandos asociados. Línea de comandos: Uso de expresiones regulares.

Unidad IV: Programación Básica C en GNU/Linux
Conceptos sobre Editar, Compilar y Depurar códigos. Aplicaciones asociadas con dichas tareas. Entornos de desarrollo integrado. Resolución de problemas de cálculo numérico mediante métodos computacionales. Graficar funciones y datos.

Unidad V: Conceptos Avanzados de C (2da. Parte)
Nuevos tipos de datos: definición y usos. Estructuras de datos: definición y usos. Redireccionamiento de E/S: comandos asociados. Manejo de Archivos: conceptos asociados. Archivos de tipo ascii y binario. Resolución de problemas de cálculo numérico mediante métodos computacionales.

Unidad VI: Dispositivos programables
Intérpretes, compiladores y cross-compiladores. Programación aplicada en alto y bajo nivel. Co-diseño y simulación de hardware y software. Arduino.

Unidad VII: Programación Orientada a Objetos
Paradigma de Programación. Introducción a la programación Orientada a Objetos. Conceptos básicos. Polimorfismo, Clasificación y Herencia. Introducción a la programación en C++.

VII - Plan de Trabajos Prácticos
T.P. Nº 1: Lenguaje C: Variables Punteros.
T.P. Nº 2: Lenguaje C: Pasaje de parámetros con Punteros.
T.P. Nº 3: GNU/Linux: Administración de la Información.
T.P. Nº 4: GNU/Linux: Sistemas de Archivos.
T.P. Nº 5: GNU/Linux y Lenguaje C: aspectos básicos de edición, compilación y depuración en C.
T.P. Nº 6: Redireccionamiento de la Entrada y Salida en Linux.
T.P. Nº 7: Entrada y Salida con Archivos en el Lenguaje C.
T.P. Nº 8: Dispositivos programables.
T.P. Nº 9: Introducción a la Programación Orientada a Objetos.
VIII - Regimen de Aprobación
Los alumnos podrán aprobar la materia bajo el régimen “Regular” o “Promocional”, según los siguientes requisitos:

Régimen para alumnos Regulares:
Para regularizar la materia los alumnos deberán:
1- Asistir al 70% de las clases prácticas,
2- Aprobar las 2 evaluaciones parciales (una en papel y una en laboratorio) de primera instancia o en las respectivas recuperaciones con una nota de 6 o superior (según Ordenanza CS N°32/14).
Si el alumno regularizó la materia podrá acceder a un examen regular sobre los temas del programa, el cual puede ser escrito u oral.


Régimen para alumnos Promocionales:
Para promocionar la materia los alumnos deberán:
1- Asistir al 70% de las clases teóricas.
2- Asistir al 70% de las clases prácticas.
3- Aprobar las 2 evaluaciones parciales (una en papel y una en laboratorio) de primera instancia o en las respectivas recuperaciones con una nota de 7 o superior (según Ordenanza CS N°32/14),
4- Aprobar una evaluación integradora con una nota de 7 o superior. La nota final provendrá de un promedio de las notas obtenidas en las evaluaciones realizadas en forma continua.

NOTA: La materia no puede rendirse como libre.
IX - Bibliografía Básica
[1] “Practical C Programming” - Steve Oualline, Ed. O´Reilly & Associates, 1997, ISBN: 1-56592-306-5
[2] “Programación en C” - Mitchell Waite y Stephen Prata, Anaya multimedia, 2000, ISBN: 84-7614-374-5
[3] “LINUX. Unleashing the Workstation in Your PC” - Stefan Strobel, Volker Elling,Verlag - Springer, 1997, ISBN: 0387948805
[4] “Manual práctico de Linux” – Mark G. Sobell – Editorial Anaya, 2005, ISBN: 978-84-415-2350-0
[5] “Beginning Linux Programming” - Neil Matthew, Richard Stones, Alan Cox, Wrox, 2004, ISBN: 0764544977
[6] “Linux in a Nutshell” - Ellen Siever, Aaron Weber, Stephen Figgins, Robert Love, Arnold Robbins, O'Reilly Media, Inc., 2005, ISBN: 0596009305
[7] “El PC Hardware y componentes”-Juan E. Herrerías Rey, Ediciones Anaya Multimedia, 2009, ISBN: 978-84-415-2374-6.
[8] “Programación en C++ para Ingenieros” – Fatos Xhafa, Editorial Thomson 2006 – ISBN 84-9732-485-4
[9] “Programación de Sistemas Embebidos en C” - Gustavo Galeano, Alfaomega 2009 - ISBN 978-958-682-770-6
X - Bibliografia Complementaria
[1] “El Lenguaje de Programacion C” - Brian W. Kernighan, Dennis M. Ritchie., Editorial Prentice-Hall Hispanoamericana, 1985, ISBN: 968-880-024-4
[2] “Linux Kernel Internals” - Michael Beck, Harald Bohme, Mirko Dziadzka, Ulrich Kunitz, Robert Magnus, Dirk Verworner, Addison-Wesley Professional, 1997, ISBN: 0201331438
[3] "Arduino, curso práctico de formación" - Oscar Torrente Artero, Alfaomega Grupo Editor, 2013, ISBN: 978-607-707-648-3
XI - Resumen de Objetivos
Desarrollar en el alumno la capacidad de:
• manipular el SO GNU/Linux,
• diseñar e Implementar algoritmos bajo el SO GNU/Linux,
• integrar los conceptos del hardware con el ambiente de trabajo y el manejo de los mismos a través del lenguaje C,
• incorporar el lenguaje de programación orientado a objetos C++.
XII - Resumen del Programa
Se introduce al alumno en el uso de un nuevo ambiente de trabajo (GNU/Linux). Se analizan sus particularidades al mismo tiempo que se desarrollan y elaboran prácticas sobre el mismo a través de herramientas avanzadas del lenguaje C. Se introduce al alumno en el paradigma orientado a objetos.
XIII - Imprevistos
Las actividades solicitadas por la cátedra se recepcionan por la plataforma "Aulas Virtuales" de la universidad.
XIV - Otros