Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
lang:c:gfx_mgl [2017/11/01 13:15] – Création root | lang:c:gfx_mgl [2020/05/11 00:04] (Version actuelle) – Suppression de la taille par défaut pour les images root |
---|
[[http://microchipdeveloper.com/hif2131:start|Tutorial de Microchip]] | [[http://microchipdeveloper.com/hif2131:start|Tutorial de Microchip]] |
| |
- {{ :lang:c:gfx_mgl:01-designing_with_the_mla_graphics_library_-_developer_help.mhtml |MLA Graphics Library Self-Paced Training}} | - {{ :lang:c:gfx_mgl:designing_with_the_mla_graphics_library_-_developer_help_2020-04-26_10_08_14_pm_.html |MLA Graphics Library Self-Paced Training}} |
- {{ :lang:c:gfx_mgl:02-what_is_needed_to_develop_graphics_applications_-_developer_help.mhtml |Application Development Requirements | - {{ :lang:c:gfx_mgl:requirements_to_create_graphics_applications_using_the_mla_-_developer_help_2020-04-26_10_08_24_pm_.html |Application Development Requirements}} |
}} | - {{ :lang:c:gfx_mgl:structure_of_an_mla_graphics_project_-_developer_help_2020-04-26_10_08_33_pm_.html |Structure of an MLA Graphics Project}} |
- {{ :lang:c:gfx_mgl:03-structure_of_an_mla_graphics_project_-_developer_help.mhtml |Structure of an MLA Graphics Project}} | - {{ :lang:c:gfx_mgl:creating_a_new_graphics_project_-_developer_help_2020-04-26_10_08_42_pm_.html |Creating a New Graphics Project}} |
- {{ :lang:c:gfx_mgl:04-creating_a_new_graphics_project_-_developer_help.mhtml |Creating a New Graphics Project}} | - {{ :lang:c:gfx_mgl:overview_of_a_typical_graphics_application_s_software_-_developer_help_2020-04-26_10_08_51_pm_.html |Overview of a typical Graphics Application's Software}} |
- {{ :lang:c:gfx_mgl:05-overview_of_a_typical_graphics_application_s_software_-_developer_help.mhtml |Overview of a typical Graphics Application's Software}} | - {{ :lang:c:gfx_mgl:graphics_primitives_-_developer_help_2020-04-26_10_09_03_pm_.html |Graphic Primitives}} |
- {{ :lang:c:gfx_mgl:06-graphics_primitives_-_developer_help.mhtml |Graphic Primitives}} | - {{ :lang:c:gfx_mgl:using_fonts_in_a_graphics_application_-_developer_help_2020-04-26_10_09_11_pm_.html |Using Fonts in a Graphics Application}} |
- {{ :lang:c:gfx_mgl:07-using_fonts_in_a_graphics_application_-_developer_help.mhtml |Using Fonts in a Graphics Application}} | - {{ :lang:c:gfx_mgl:importing_fonts_into_an_mla_graphics_project_-_developer_help_2020-04-26_10_09_20_pm_.html |Importing Fonts Into an MLA Project}} |
- {{ :lang:c:gfx_mgl:08-importing_fonts_into_an_mla_graphics_project_-_developer_help.mhtml |Importing Fonts Into an MLA Project}} | - {{ :lang:c:gfx_mgl:importing_images_into_an_mla_graphics_project_-_developer_help_2020-04-26_10_09_29_pm_.html |Importing Images Into an MLA Project}} |
- {{ :lang:c:gfx_mgl:09-importing_images_into_an_mla_graphics_project_-_developer_help.mhtml |Importing Images Into an MLA Project}} | - {{ :lang:c:gfx_mgl:memory_requirements_for_a_bitmap_image_-_developer_help_2020-04-26_10_09_37_pm_.html |Bitmap Image Memory Requirements}} |
- {{ :lang:c:gfx_mgl:10-memory_requirements_for_a_bitmap_image_-_developer_help.mhtml |Bitmap Image Memory Requirements}} | - {{ :lang:c:gfx_mgl:using_bitmap_images_in_a_graphics_application_-_developer_help_2020-04-26_10_09_49_pm_.html |Using Bitmap Images}} |
- {{ :lang:c:gfx_mgl:11-using_bitmap_images_in_a_graphics_application_-_developer_help.mhtml |Using Bitmap Images}} | - {{ :lang:c:gfx_mgl:heap_requirements_for_graphics_objects_-_developer_help_2020-04-26_10_09_57_pm_.html |Graphics Objects Heap Requirements}} |
- {{ :lang:c:gfx_mgl:12-heap_requirements_for_graphics_objects_-_developer_help.mhtml |Graphics Objects Heap Requirements}} | - {{ :lang:c:gfx_mgl:examples_of_graphics_objects_-_developer_help_2020-04-26_10_10_09_pm_.html |Graphics Objects Examples}} |
- {{ :lang:c:gfx_mgl:13-examples_of_graphics_objects_-_developer_help.mhtml |Graphics Objects Examples}} | - {{ :lang:c:gfx_mgl:creating_graphics_objects_-_developer_help_2020-04-26_10_10_20_pm_.html |Creating Graphics Objects}} |
- {{ :lang:c:gfx_mgl:14-creating_graphics_objects_-_developer_help.mhtml |Creating Graphics Objects}} | - {{ :lang:c:gfx_mgl:style_schemes_of_graphics_objects_-_developer_help_2020-04-26_10_10_32_pm_.html |Style Schemes of Graphics Objects}} |
- {{ :lang:c:gfx_mgl:15-style_schemes_of_graphics_objects_-_developer_help.mhtml |Style Schemes of Graphics Objects}} | - {{ :lang:c:gfx_mgl:state_bits_of_graphic_objects_-_developer_help_2020-04-26_10_10_40_pm_.html |State Bits of Graphic Objects}} |
- {{ :lang:c:gfx_mgl:16-state_bits_of_graphic_objects_-_developer_help.mhtml |State Bits of Graphic Objects}} | - {{ :lang:c:gfx_mgl:drawing_graphics_objects_-_developer_help_2020-04-26_10_10_49_pm_.html |Drawing Graphics Objects}} |
- {{ :lang:c:gfx_mgl:17-drawing_graphics_objects_-_developer_help.mhtml |Drawing Graphics Objects}} | - {{ :lang:c:gfx_mgl:changing_the_state_of_a_graphics_object_-_developer_help_2020-04-26_10_10_57_pm_.html |Changing the State of a Graphics Object}} |
- {{ :lang:c:gfx_mgl:18-changing_the_state_of_a_graphics_object_-_developer_help.mhtml |Changing the State of a Graphics Object}} | - {{ :lang:c:gfx_mgl:getting_touch_input_from_a_graphics_screen_-_developer_help_2020-04-26_10_11_11_pm_.html |Getting Touch Input from a Screen}} |
- {{ :lang:c:gfx_mgl:19-getting_touch_input_from_a_graphics_screen_-_developer_help.mhtml |Getting Touch Input from a Screen}} | - {{ :lang:c:gfx_mgl:processing_user_input_in_a_graphics_application_-_developer_help_2020-04-26_10_11_19_pm_.html |Processing User Input}} |
- {{ :lang:c:gfx_mgl:20-processing_user_input_in_a_graphics_application_-_developer_help.mhtml |Processing User Input}} | - {{ :lang:c:gfx_mgl:messaging_structure_for_graphics_applications_-_developer_help_2020-04-26_10_11_27_pm_.html |Messaging Structure}} |
- {{ :lang:c:gfx_mgl:21-messaging_structure_for_graphics_applications_-_developer_help.mhtml |Messaging Structure}} | - {{ :lang:c:gfx_mgl:timing_touch_events_in_graphics_applications_-_developer_help_2020-04-26_10_11_34_pm_.html |Timing Touch Events}} |
- {{ :lang:c:gfx_mgl:22-timing_touch_events_in_graphics_applications_-_developer_help.mhtml |Timing Touch Events}} | |
| |
===Programme de base=== | ===Programme de base=== |
| |
Il est à noter qu'il faut maintenant définir le fichier ''system_config.h'' et implémenter les fonctions définies dans le fichier ''driver/gfx/drv_gfx_display.h'' qui ne contient que l'interface. | Il est à noter qu'il faut maintenant définir le fichier ''system_config.h'' et implémenter les fonctions définies dans le fichier ''driver/gfx/drv_gfx_display.h'' qui ne contient que l'interface. |
<note tip>N'implémenter au départ aucune des fonctions de ''drv_gfx_display.h'' et attendre que le lieur échoue.</note> | |
| <WRAP center round tip 60%> |
| N'implémenter au départ aucune des fonctions de ''drv_gfx_display.h'' et attendre que le lieur échoue. |
| </WRAP> |
| |
===system_config.h=== | ===system_config.h=== |
| |
===Ajouter les fonctions manquantes=== | ===Ajouter les fonctions manquantes=== |
* GFX_PixelGet et GFX_PixelPut : Lecture et écriture d'un pixel. Dans notre cas, on va se contenter d'un buffer interne à l'applicaten. | * ''GFX_PixelGet'' et ''GFX_PixelPut'' : Lecture et écriture d'un pixel. Dans notre cas, on va se contenter d'un buffer interne à l'applicaten. |
| |
<code c> | <code c> |
</code> | </code> |
| |
* GFX_RenderStatusGet : on ne gère pas de temps de latence ou autre du matériel. | * ''GFX_RenderStatusGet'' : on ne gère pas de temps de latence ou autre du matériel. |
<code c> | <code c> |
GFX_STATUS_BIT GFX_RenderStatusGet() | GFX_STATUS_BIT GFX_RenderStatusGet() |
</code> | </code> |
| |
* DRV_GFX_Initialize : initialisation du driver graphique. | * ''DRV_GFX_Initialize'' : initialisation du driver graphique. |
<code c> | <code c> |
void DRV_GFX_Initialize() | void DRV_GFX_Initialize() |
</code> | </code> |
| |
* fonction faussement manquante | * Fonction faussement manquante |
/tmp/cc5voYLX.o : Dans la fonction « GFX_Initialize » : | /tmp/cc5voYLX.o : Dans la fonction « GFX_Initialize » : |
gfx_gol.c:(.text+0x998) : référence indéfinie vers « GFX_Primitive_Initialize » | gfx_gol.c:(.text+0x998) : référence indéfinie vers « GFX_Primitive_Initialize » |
Il faut enlever le ''inline'' dans le fichier ''gfx_primitive.h'' de pour la fonction ''void GFX_Primitive_Initialize''. | Il faut enlever le ''inline'' dans le fichier ''gfx_primitive.h'' de pour la fonction ''void GFX_Primitive_Initialize''. |
| |
* GFX_ExternalResourceCallback : si les fonctions externes ont terminé leur travail. Toujours oui dans le cas d'un PC. | * ''GFX_ExternalResourceCallback'' : si les fonctions externes ont terminé leur travail. Toujours oui dans le cas d'un PC. |
<code c> | <code c> |
GFX_STATUS GFX_ExternalResourceCallback(GFX_RESOURCE_HDR * pResource, uint32_t offset, uint16_t nCount, void * pBuffer) | GFX_STATUS GFX_ExternalResourceCallback(GFX_RESOURCE_HDR * pResource, uint32_t offset, uint16_t nCount, void * pBuffer) |
gcc -Iframework -I. framework/gfx/src/gfx_gol.c framework/gfx/src/gfx_primitive.c main.c | gcc -Iframework -I. framework/gfx/src/gfx_gol.c framework/gfx/src/gfx_primitive.c main.c |
| |
{{:lang:c:gfx_mgl:screen1.png?321|Screenshot}} | {{:lang:c:gfx_mgl:screen1.png|Screenshot}} |
| |
===Ajout d'un bouton=== | ===Ajout d'un bouton=== |
gcc -Iframework -I. framework/gfx/src/gfx_gol.c framework/gfx/src/gfx_primitive.c main.c framework/gfx/src/gfx_gol_button.c | gcc -Iframework -I. framework/gfx/src/gfx_gol.c framework/gfx/src/gfx_primitive.c main.c framework/gfx/src/gfx_gol_button.c |
| |
{{:lang:c:gfx_mgl:screen2.png?321|Screenshot}} | {{:lang:c:gfx_mgl:screen2.png|Screenshot}} |
| |
Il manque le texte mais c'est normal car ''GOLSchemeDefault.pFont = NULL''. Cependant, l'objectif de la page n'est pas de faire une IHM qui marche mais seulement de montrer comment on peut adapter la ''Microchip Libraries for Applications'' pour n'importe quel usage. | Il manque le texte mais c'est normal car ''GOLSchemeDefault.pFont = NULL''. Cependant, l'objectif de la page n'est pas de faire une IHM qui marche mais seulement de montrer comment on peut adapter la ''Microchip Libraries for Applications'' pour n'importe quel usage. |
| |
<note important> | <WRAP center round important 60%> |
Microchip licenses to you the right to use, modify, copy and distribute | Microchip licenses to you the right to use, modify, copy and distribute |
Software only when embedded on a Microchip microcontroller or digital signal | Software only when embedded on a Microchip microcontroller or digital signal |
| |
Donc la librairie n'est utilisable que sur du matériel Microchip. | Donc la librairie n'est utilisable que sur du matériel Microchip. |
</note> | |
| </WRAP> |
| |
{{ :lang:c:gfx_mgl:mla_modif.zip |Source du travail}} | {{ :lang:c:gfx_mgl:mla_modif.zip |Source du travail}} |