# 14 - Servomotor + Potenciómetro

> **PIC C Compiler CCS**
>
> [**PIC16F887 / PIC16F877A**](https://docs.microside.com/practicas/pic-c-compiler-ccs/pic16f887-or-pic16f877a)

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FrUzyV6ogHiS4UtJXvH9T%2F15%20-%20Servomotor%20%2B%20Potenciometro.png?alt=media&#x26;token=405a86b1-1a67-4c8b-b1b4-b061b2ca0a9c" alt=""><figcaption></figcaption></figure>

## **Introducción**

En esta práctica se implementa el control de giro de un servomotor a través de un potenciómetro. Se usa el módulo PWM para el control del servomotor y el módulo ADC para variar la posición por medio del potenciómetro.

## **Descripción**

En esta práctica se implementa el control de giro de un servomotor, a través de un potenciómetro. Se usa el módulo PWM para el control del servomotor y el módulo ADC para variar la posición por medio del potenciómetro conectado a la tarjeta **X-TRAINER** con el **PIC16F887/PIC16F877A**.

**Materiales:**

1 x Tarjeta **X-TRAINER**. [**Manuales**](https://docs.microside.com/tarjetas-de-desarrollo/x-trainer) | [**Comprar**](https://www.microside.com/shop/category/entrenadores-pic-1)

1 x Servomotor SG90.

1 x Potenciómetro de 10 KOhms.

1 x Protoboard de 830 puntos.

1 x Juego de cables Dupont.

1 x Cable micro USB.

**Software:**

Windows 8.1 o posterior.

PIC C Compiler v5.069 o posterior. [**Descarga**](http://www.ccsinfo.com/ccsfreedemo.php)

X-TRAINER Suite v1.0 [**Descarga**](https://raw.githubusercontent.com/MICROSIDE-TECHNOLOGY/microside_download_archive/main/Tools/X-TRAINER%20Suite/X-TRAINER%20Suite%20Setup.zip)

## **Procedimiento**

**1.** En el apartado de “[**Diagrama Esquemático**](#diagrama-esquematico)” selecciona el modelo de tu tarjeta, realiza las conexiones que se muestran en la imagen y conéctala a la computadora.

{% hint style="info" %}
Las conexiones mostradas en los diagramas esquemáticos son las mismas ya sea que la tarjeta **X-TRAINER** posea el **PIC16F887** o el **PIC16F877A**.
{% endhint %}

**2.** Ejecuta **PIC C Compiler**, crea un nuevo proyecto con el código fuente que se encuentra en el apartado "[**Código**](#codigo)" y compila el programa.

{% hint style="success" %}
Si tienes dudas de cómo realizar los pasos anteriores puedes encontrar un manual de **PIC C Compiler** a través del siguiente [**link**](https://docs.microside.com/practicas/ides/pic-c-compiler-ccs).
{% endhint %}

**3.** Abre el **Software X-TRAINER Suite v1.0** en el apartado **PIC16F877A/887**, selecciona el archivo .hex generado al compilar el proyecto y programa la tarjeta.

{% hint style="success" %}
Si tienes dudas de cómo realizar los pasos anteriores puedes encontrar un manual del **Software X-TRAINER Suite v1.0**. a través del siguiente[ **link**](https://docs.microside.com/tarjetas-de-desarrollo/software-x-trainer-suite).
{% endhint %}

**4.** Al terminar de programar, la tarjeta **X-TRAINER** se reiniciará automáticamente y se ejecutará el programa de esta práctica.

## **Diagrama esquemático**

Selecciona el modelo de tu tarjeta **X-TRAINER.**

{% tabs %}
{% tab title="LITE M R2" %}

<figure><img src="https://raw.githubusercontent.com/MICROSIDE-TECHNOLOGY/14-Servomotor-Potenciometro-CCS-PIC16F887-877A/main/Diagrama%20de%20conexi%C3%B3n/X-TRAINER_Lite-M-r2_Practica-14_PIC16F_Microside_02.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="LITE M R3" %}

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FjOLU4ymMfb1K4dX3y3su%2FServomotor%20%2B%20Potenci%C3%B3metro%20PIC16F877A%20%20o%20PIC16F887%20X-TRAINER%20LITE%20M%20MICROSIDE.webp?alt=media&#x26;token=ebe63f42-32fe-478a-86af-98100cc236b4" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="LITE F" %}

<figure><img src="https://raw.githubusercontent.com/MICROSIDE-TECHNOLOGY/14-Servomotor-Potenciometro-CCS-PIC16F887-877A/main/Diagrama%20de%20conexi%C3%B3n/X-TRAINER_LITE-F_Practica-14_PIC16F_Microside_01.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="PRO R3" %}

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FDK7bYCmwdjH3fvhoFPT0%2F14%20Servomotor%20%2B%20Potenciometro%20X%20Trainer%20Pro%2016.png?alt=media&#x26;token=f69ad2e0-c2fc-4223-a51f-4659eb537e6e" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="PRO R4 " %}

<figure><img src="https://177299348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbyV2zAlQAiqg46a3Lr8z%2Fuploads%2FXFyBSXIrIqk9eJp8GYsF%2FServomotor%20%2B%20Potenci%C3%B3metro%20PIC16F877A%20%20o%20PIC16F887%20X-TRAINER%20PRO%20R4%20MICROSIDE.webp?alt=media&#x26;token=1c17c576-14f6-4e85-a1b5-c199b6eae233" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

## **Código**

{% tabs %}
{% tab title="PIC16F887" %}
{% embed url="<https://gist.github.com/microside-mx/030fcf3b2bb8072ebefed0326cb99dfc>" %}
{% endtab %}

{% tab title="PIC16F877A" %}
{% embed url="<https://gist.github.com/microside-mx/bc5ec49e9285bb76092b38ef53ce9052>" %}
{% endtab %}
{% endtabs %}

## **Descargas**

<table data-card-size="large" data-view="cards"><thead><tr><th align="center"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center"><mark style="color:green;"><strong>Software X-TRAINER Suite v1.0</strong></mark></td><td><a href="https://raw.githubusercontent.com/MICROSIDE-TECHNOLOGY/microside_download_archive/main/Tools/X-TRAINER%20Suite/X-TRAINER%20Suite%20Setup.zip">https://raw.githubusercontent.com/MICROSIDE-TECHNOLOGY/microside_download_archive/main/Tools/X-TRAINER%20Suite/X-TRAINER%20Suite%20Setup.zip</a></td></tr><tr><td align="center"><mark style="color:green;"><strong>Proyecto</strong></mark></td><td><a href="https://github.com/MICROSIDE-TECHNOLOGY/14-Servomotor-Potenciometro-CCS-PIC16F887-877A/archive/refs/heads/main.zip">https://github.com/MICROSIDE-TECHNOLOGY/14-Servomotor-Potenciometro-CCS-PIC16F887-877A/archive/refs/heads/main.zip</a></td></tr></tbody></table>
