Esta entrada consiste en un pequeno proyecto para la prueba de el ADC y PWM del Stellaris LM4F120 de TI, este es un kit de evaluacion llamado LaunchPad, las prueba que haremos seran simples, solo tomar una muestra de un sensor con el ADC del Stellaris de 10bits (programable a 12bits) y desplegarlo con un PWM del mismo MCU y este con un ciclo de trabajo proporcional a la senal medida con el ADC.
Para la elaboracion del proyecto se utilizo el compilador MikroC for Arm, este compilador es valido para MCU de ST y TI, con ARM M3 y ARM M4, proximamente hare este mismo proyecto pero con CCS (Code Composer Studio de TI) y otros compiladores, o bien subo el mismo codigo pero con diferentes compiladores.
Iva a dar una explicacion con mis palabras sobre lo que trata el codigo, pero creo yo que con el codigo comentado estara bien explicado cada parte de el, si alguna parte hay dudas entonces esta abierta la seccion de comentarios.
Codigo en MikroC for Arm:
NOTA: hay un pequeno error en los comentarios del codigo, en el codigo la configuracion del pwm es T0CCP1, T0(timmer0)CCP1(comparador1), y en los comentarios puse por error CCP0. Esto no altera el funcionamiento.
Lo siguiente fue agregarle algun sensor al cual estar midiendo y agregar una salida la cual este cambiando en base al sensor para asi poder verificar que funciona. Para esto el sensor que se utilizo no fue en si un sensor si no una fotorresistencia (resistencia que varia su valor resistivo conforme a los fotones que le llegan a la superficie) en serie con un resistor y de aqui se senso la luminosidad y para ver el cambio se utilizo un simple LED.
Aqui muestro las fotografias del proyecto, el pequeno osciloscopio utilizado es una tarjeta Stellaris de un kit de evaluacion de TI, es el modelo EKS-LM3S3748, y el osciloscopio es su DEMO, el cual es muy util como se ve aqui.


Para consultar pines de la tarjeta para ver salidas de PWM y entradas del ADC se puede consultar el Datasheet del Stellaris y la guia de uso la cual anexare a continuacion.
(click para ver o descargar, dropbox).
Esto es todo por el momento, agradesco su visita y estamos para cualquier duda, comentario, aclaracion, correcion, critica, etc...
Saludos.
Buenísimo pariente!!! Ya no hay pretextos para aprender ;)
ResponderEliminarComo todo un noob pero por alog se empieza, gracias pariente, saludos
ResponderEliminarComo todo un noob xD... amigo, sabes cómo hacerlo en Code Composer Studio??? ='( moriré...
ResponderEliminarDisculpa por no haber respondido antes, segun yo ya tenia un respuesta a tu comentario, si no mal recuerdo una vez use el ejemplo del code composer studio para el pwm, y trabajo muy bien, pero jamas pude encontrar alguna referencia para el ADC y tu sabes que el CCS no es algo muy bonito de usar, entonces fue por ello que opte usar mikroC, pero si encuentro como usar el ADC en CCS te lo comunico, saludos
ResponderEliminarQue tal amigo, ya pasó un poco de tiempo, ya supe cómo usar el ADC pero sigo sin comprender el PWM u.u cualquier cosa seguimos en contacto
EliminarQue tal amigo, he dejado de usar un poco el stellaris por la escuela, pero si no mal recuerdo hay un ejemplo semi-explicado en CCS el cual te puede ayudar, lo checare en estos dias y si entiendo algo te lo explico.
EliminarNo se ve las imagenes, código y tus links están caídos. :/
ResponderEliminarQue tal,he dejado el blog por falta de tiempo por la escuela, pero si necesitas algo, alguna explicacion y algun software puedo proporcionartelo por email, nahunpardo@gmail.com, saludos
Eliminar