Skip to content

Commit

Permalink
mikroSDK v2.7.0
Browse files Browse the repository at this point in the history
+ released: 2022-12-01

New Features:

+ One Wire implementation for AVR
  + Full module support
+ ILI9341 TFT implementation added
  + Added 8/16 bit implementation
+ MIKROE Touch Panel implementation added
  + Using transistor logic
+ API layer touch panel has reduced footprint if MIKROE Touch Panel implementation is used
+ Added header generation based on actual library name
  + For example, in order to include `MikroSDK.Driver.OneWire` library header, simply type
    + `#include "MikroSDK.Driver.OneWire"`
  + Implemented for whole SDK project for easier file access

Improvements:

+ Uart write/read APIs changed to use actual byte sized data
+ AVR low level UART IVT
  + Added option to switch between IVT and ORG mapping/access for interrupt service routines
+ Timer/PWM code optimised for AVR MCUs
  + Improved code readability
  + Added check for NULL pointers
  + Surplus code moved to MCU specific definition files
+ AVR ATmega UART implementation optimized for high-speed baud rate settings
  + High-speed mode used if regular speed mode error exceeds 2.5% as defined in documentation
+ `pin_af_t` redefinition issues
  + Reorganized for all ARM and RISC-V MCUs
+ CMake now sets defaults ADC resolution based on specific MCU, not only architecture
+ Added stop bit generation for AVR software I2C implementation

Fixes:

+ Fixed reported issue - <#4>
  + Instance handler now set correctly
+ `./targets/avr_8bit/mikroe/avr/src/tim`
  + Fixed register addresses
+ `./targets/avr_8bit/mikroe/avr/include`
  + Pin maps are no longer linked as weak
+ Added additional ports and pins to AVR GPIO implementation
+ AVR GPIO implementation now functions correctly for all GPIO ports
  + Previously, all ports after H ( I, J, K ... ) didn't work
+ Removed 14 MCUs from mikroSDK due to insufficient memory issues
  + `ATmega16`
  + `ATmega164A`
  + `ATmega164P`
  + `ATmega164PA`
  + `ATmega168`
  + `ATmega168A`
  + `ATmega168P`
  + `ATmega168PA`
  + `ATmega168PB`
  + `ATmega169A`
  + `ATmega169P`
  + `ATmega169PA`
  + `ATmega16A`
  + `ATmega16U4`
+ IVT redefined properly for ATXmega E5 MCU series
  + Resulted in addition of another USART module (USART2)
+ Opening existing click tests from mikroSDK project for EasyAVR v8 and v7 resulted in error
+ Opening mikroSDK as a project using a designer setup disables the option to switch to a regular type project
  + Now able to switch freely
+ One-Wire implementation for ARM used to overwrite read data bits/bytes
  + Fix implemented for all ARM MCUs
+ Unable to open specific `CMakeLists.txt` files from mikroSDK project

NEW HARDWARE:

Support added for following hardware:

+ mikromedia for PIC18FJ - <https://www.mikroe.com/mikromedia-3-pic18fj>
+ mikromedia for PIC18FK - <https://www.mikroe.com/mikromedia-3-pic18fk>
+ mikromedia for XMEGA - <https://www.mikroe.com/mikromedia-3-xmega>
+ mikromedia for STM32 M3 - <https://www.mikroe.com/mikromedia-3-stm32f3>
+ mikromedia for STM32 M4 - <https://www.mikroe.com/mikromedia-3-stm32f4>
+ mikromedia for TIVA C Series - <https://www.mikroe.com/mikromedia-3-tiva>
+ Mikromedia 3 for PIC32MZ Capacitive FPI with Frame - <https://www.mikroe.com/mikromedia-3-for-pic32mz-capacitive-fpi-with-frame>
+ Mikromedia 3 for PIC32MZ Capacitive FPI with Bezel - <https://www.mikroe.com/mikromedia-3-for-pic32mz-capacitive-fpi-with-bezel>
+ Mikromedia 5 for PIC32MZ Capacitive FPI with Bezel - <https://www.mikroe.com/mikromedia-5-for-pic32mz-capacitive-fpi-with-bezel>
+ EasyMX PRO v7a for STM32 - <https://www.mikroe.com/easymx-pro-v7a-for-stm32>
+ EasyPIC PRO v7 MCUcard with PIC18F8722 - <https://www.mikroe.com/easypic-pro-v7-pic18f8722>
+ EasyPIC PRO v7 MCUcard with PIC18F8520 - <https://www.mikroe.com/easypic-pro-v7-pic18f8520>
+ All new hardware has adequate clock schemes set as well.
  • Loading branch information
MarkoZiv committed Dec 28, 2022
1 parent 685bf78 commit ff4dda0
Show file tree
Hide file tree
Showing 400 changed files with 8,725 additions and 6,709 deletions.
1 change: 1 addition & 0 deletions AUTHORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
- Nemanja Medakovic
- Nikola Lukic
- Nikola Novakovic
- Stefan Djordjevic
- Stefan Filipovic
- Strahinja Jacimovic
- Tanja Kovacevic
Expand Down
104 changes: 104 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

**VERSIONS:**

+ **[v2.7.1](#v271)**
+ **[v2.7.0](#v270)**
+ **[v2.6.0](#v260)**
+ **[v2.5.1](#v251)**
Expand All @@ -22,6 +23,109 @@
---
---

## `v2.7.1`

+ released: 2022-12-01

### `2.7.1` Changes

1. **[New Features](#271-new-features)**
2. **[Improvements](#271-improvements)**
3. **[Fixes](#271-fixes)**
4. **[NEW HARDWARE](#271-new-hardware)**

#### `2.7.1` New Features

+ One Wire implementation for AVR
+ Full module support
+ **ILI9341** TFT implementation added
+ Added 8/16 bit implementation
+ MIKROE Touch Panel implementation added
+ Using transistor logic
+ API layer touch panel has reduced footprint if MIKROE Touch Panel implementation is used
+ Added header generation based on actual library name
+ For example, in order to include `MikroSDK.Driver.OneWire` library header, simply type
+ `#include "MikroSDK.Driver.OneWire"`
+ Implemented for whole SDK project for easier file access

#### `2.7.1` Improvements

+ Uart write/read APIs changed to use actual byte sized data
+ AVR low level UART IVT
+ Added option to switch between IVT and ORG mapping/access for interrupt service routines
+ Timer/PWM code optimised for AVR MCUs
+ Improved code readability
+ Added check for NULL pointers
+ Surplus code moved to MCU specific definition files
+ AVR ATmega UART implementation optimized for high-speed baud rate settings
+ High-speed mode used if regular speed mode error exceeds 2.5% as defined in documentation
+ `pin_af_t` redefinition issues
+ Reorganized for all ARM and RISC-V MCUs
+ CMake now sets defaults ADC resolution based on specific MCU, not only architecture
+ Added stop bit generation for AVR software I2C implementation

#### `2.7.1` Fixes

+ Fixed reported [GITHUB ISSUE](https://github.com/MikroElektronika/mikrosdk_v2/issues/4)
+ Instance handler now set correctly
+ `./targets/avr_8bit/mikroe/avr/src/tim`
+ Fixed register addresses
+ `./targets/avr_8bit/mikroe/avr/include`
+ Pin maps are no longer linked as weak
+ Added additional ports and pins to AVR GPIO implementation
+ AVR GPIO implementation now functions correctly for all GPIO ports
+ Previously, all ports after H ( I, J, K ... ) didn't work
+ Removed **14** MCUs from mikroSDK due to insufficient memory issues
+ `ATmega16`
+ `ATmega164A`
+ `ATmega164P`
+ `ATmega164PA`
+ `ATmega168`
+ `ATmega168A`
+ `ATmega168P`
+ `ATmega168PA`
+ `ATmega168PB`
+ `ATmega169A`
+ `ATmega169P`
+ `ATmega169PA`
+ `ATmega16A`
+ `ATmega16U4`
+ IVT redefined properly for ATXmega E5 MCU series
+ Resulted in addition of another USART module (USART2)
+ Opening existing click tests from mikroSDK project for EasyAVR v8 and v7 resulted in error
+ Opening mikroSDK as a project using a designer setup disables the option to switch to a regular type project
+ Now able to switch freely
+ One-Wire implementation for ARM used to overwrite read data bits/bytes
+ Fix implemented for all ARM MCUs
+ Unable to open specific `CMakeLists.txt` files from mikroSDK project

#### `2.7.1` NEW HARDWARE

Support added for following hardware:

+ [mikromedia for PIC18FJ](https://www.mikroe.com/mikromedia-3-pic18fj)
+ [mikromedia for PIC18FK](https://www.mikroe.com/mikromedia-3-pic18fk)
+ [mikromedia for XMEGA](https://www.mikroe.com/mikromedia-3-xmega)
+ [mikromedia for STM32 M3](https://www.mikroe.com/mikromedia-3-stm32f3)
+ [mikromedia for STM32 M4](https://www.mikroe.com/mikromedia-3-stm32f4)
+ [mikromedia for TIVA C Series](https://www.mikroe.com/mikromedia-3-tiva)
+ [Mikromedia 3 for PIC32MZ Capacitive FPI with Frame](https://www.mikroe.com/mikromedia-3-for-pic32mz-capacitive-fpi-with-frame)
+ [Mikromedia 3 for PIC32MZ Capacitive FPI with Bezel](https://www.mikroe.com/mikromedia-3-for-pic32mz-capacitive-fpi-with-bezel)
+ [Mikromedia 5 for PIC32MZ Capacitive FPI with Bezel](https://www.mikroe.com/mikromedia-5-for-pic32mz-capacitive-fpi-with-bezel)
+ [EasyMX PRO v7a for STM32](https://www.mikroe.com/easymx-pro-v7a-for-stm32)
+ [EasyPIC PRO v7 MCUcard with PIC18F8722](https://www.mikroe.com/easypic-pro-v7-pic18f8722)
+ [EasyPIC PRO v7 MCUcard with PIC18F8520](https://www.mikroe.com/easypic-pro-v7-pic18f8520)

> All new hardware has adequate clock schemes set as well.
---
**[BACK TO TOP OF 2.7.1](#v271)**

---
**[BACK TO TOP](#changelog)**

---

## `v2.7.0`

+ released: 2022-12-01
Expand Down
5 changes: 3 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
## ./CMakeLists.txt
cmake_minimum_required(VERSION 3.11)
if (${TOOLCHAIN_LANGUAGE} MATCHES "MikroC")
project(MikroSDK VERSION 2.7.0 LANGUAGES MikroC)
project(MikroSDK VERSION 2.7.1 LANGUAGES MikroC)
else()
project(MikroSDK VERSION 2.7.0 LANGUAGES C ASM)
project(MikroSDK VERSION 2.7.1 LANGUAGES C ASM)
find_package(MikroC.Core)
add_compile_options("-fms-extensions")
endif()
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# mikroSDK 2.0

[![SDK Version](https://img.shields.io/badge/mikroSDK%20version-2.7.0-gold)](https://github.com/MikroElektronika/mikrosdk_v2/tree/mikroSDK-2.7.0)
[![SDK Version](https://img.shields.io/badge/mikroSDK%20version-2.7.1-gold)](https://github.com/MikroElektronika/mikrosdk_v2/tree/mikroSDK-2.7.1)

---
## About
Expand Down
3 changes: 3 additions & 0 deletions REQUIREMENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@

**SDK requirements by version:**

* **v2.7.1**
* [`FLASH1`]
* [`RAM1`]
* **v2.7.0**
* [`FLASH1`]
* [`RAM1`]
Expand Down
14 changes: 0 additions & 14 deletions SUPPORTED_CHIP_LIST.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,17 +30,6 @@
| ATmega1284 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega1284P | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega128A | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega16 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega164A | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega164P | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega164PA | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega168 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega168A | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega168P | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega168PA | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega168PB | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega16A | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega16U4 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega2560 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega2561 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega32 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
Expand Down Expand Up @@ -93,9 +82,6 @@
| ATxmega64D3 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATxmega64D4 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega328PB | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega169A | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: [:one:](#note_2) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega169P | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: [:one:](#note_2) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega169PA | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: [:one:](#note_2) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega325 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: [:one:](#note_2) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega3250 | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: [:one:](#note_2) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| ATmega3250A | AVR 8bit | `FLASH1`;`RAM1` | `2.7.0+` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: [:one:](#note_2) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
Expand Down
1 change: 1 addition & 0 deletions api/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
## ./api/CMakeLists.txt
if (${MSDK_BUILD_TFT_MODULES})
add_subdirectory(gl)
add_subdirectory(tp)
Expand Down
1 change: 1 addition & 0 deletions api/gl/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
## ./api/gl/CMakeLists.txt
add_subdirectory(lib)
13 changes: 2 additions & 11 deletions api/gl/lib/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
## ./api/gl/lib/CMakeLists.txt
mikrosdk_add_library(lib_gl MikroSDK.GraphicLibrary
src/gl.c
src/gl_text.c
Expand Down Expand Up @@ -27,18 +28,8 @@ PUBLIC
)

mikrosdk_install(MikroSDK.GraphicLibrary)
install_headers(${CMAKE_INSTALL_PREFIX}/include/api/gl MikroSDK.GraphicLibrary include/gl.h include/gl_colors.h include/gl_image.h include/gl_shapes.h include/gl_text.h include/gl_types.h)

install(
FILES
include/gl.h
include/gl_colors.h
include/gl_image.h
include/gl_shapes.h
include/gl_text.h
include/gl_types.h
DESTINATION
${CMAKE_INSTALL_PREFIX}/include/api/gl
)

include(mikroeUtils)
math_check_target(lib_gl)
70 changes: 34 additions & 36 deletions api/gl/lib/include/gl.h
Original file line number Diff line number Diff line change
Expand Up @@ -108,42 +108,40 @@
static gl_driver_t driver;
static tft8_cfg_t tft_cfg;
void main()
{
TFT8_MAP_PINOUTS_16BIT(tft_cfg);
tft_cfg.board = &TFT_BOARD_7_CAPACITIVE;
tft8_init(&tft_cfg, &driver);
gl_set_driver(&driver); //!<-- set driver before drawing and setting crop borders
gl_clear(GL_CHARLESTON_GREEN);
gl_set_crop_borders(-1, -1, 1050, 1000); //!<-- dont think about display dimension, make it wrong and let it be set according to display measures from driver.
gl_set_brush_style(GL_BRUSH_STYLE_FILL); //!<-- set brush style before drawing
gl_set_pen_width(0); //!<-- set pen before drawing
gl_draw_rect_rounded(105, 220, 80, 100, 40);
gl_set_brush_color(GL_GREEN); //!<-- set brush color
gl_draw_circle(145, 270, 30);
gl_draw_rect_rounded(125, 295, 40, 100, 30);
gl_draw_rect_rounded(120, 380, 100, 30, 30);
gl_draw_rect(195, 405, 20, 75);
gl_set_brush_style(GL_BRUSH_STYLE_GRADIENT_TOP_DOWN); //!<-- Gradient style requires specifying colors to start and end with
gl_set_brush_color_from(GL_BROWN);
gl_set_brush_color_to(GL_YELLOW);
gl_set_pen(GL_GREEN, 6); //!<-- change pen
gl_draw_line(140, 300, 210, 340);
gl_draw_line(210, 340, 260, 350);
gl_draw_line(140, 300, 210, 300);
gl_set_pen(GL_BLACK, 2); //!<-- also change pen
//!<-- no need to set brush since point and line use only pen for drawing.
gl_draw_point(140, 265);
gl_draw_point(150, 265);
gl_draw_line(138, 275, 147, 280);
gl_draw_line(147, 280, 155, 275);
}
// code
TFT8_MAP_PINOUTS_16BIT(tft_cfg);
tft_cfg.board = &TFT_BOARD_7_CAPACITIVE;
tft8_init(&tft_cfg, &driver);
gl_set_driver(&driver); //!<-- set driver before drawing and setting crop borders
gl_clear(GL_CHARLESTON_GREEN);
gl_set_crop_borders(-1, -1, 1050, 1000); //!<-- dont think about display dimension, make it wrong and let it be set according to display measures from driver.
gl_set_brush_style(GL_BRUSH_STYLE_FILL); //!<-- set brush style before drawing
gl_set_pen_width(0); //!<-- set pen before drawing
gl_draw_rect_rounded(105, 220, 80, 100, 40);
gl_set_brush_color(GL_GREEN); //!<-- set brush color
gl_draw_circle(145, 270, 30);
gl_draw_rect_rounded(125, 295, 40, 100, 30);
gl_draw_rect_rounded(120, 380, 100, 30, 30);
gl_draw_rect(195, 405, 20, 75);
gl_set_brush_style(GL_BRUSH_STYLE_GRADIENT_TOP_DOWN); //!<-- Gradient style requires specifying colors to start and end with
gl_set_brush_color_from(GL_BROWN);
gl_set_brush_color_to(GL_YELLOW);
gl_set_pen(GL_GREEN, 6); //!<-- change pen
gl_draw_line(140, 300, 210, 340);
gl_draw_line(210, 340, 260, 350);
gl_draw_line(140, 300, 210, 300);
gl_set_pen(GL_BLACK, 2); //!<-- also change pen
//!<-- no need to set brush since point and line use only pen for drawing.
gl_draw_point(140, 265);
gl_draw_point(150, 265);
gl_draw_line(138, 275, 147, 280);
gl_draw_line(147, 280, 155, 275);
* @endcode
*/

Expand Down
6 changes: 3 additions & 3 deletions api/gl/lib/utils.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,16 @@ function(mikrosdk_install _targetName)
FILE ${_targetName}Targets.cmake
NAMESPACE MikroSDK::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${_targetName})

configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/${_targetName}Config.cmake.in
"${CMAKE_CURRENT_BINARY_DIR}/" + ${_targetName} + "Config.cmake"
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${_targetName})

write_basic_package_version_file(
"${CMAKE_CURRENT_BINARY_DIR}/" + ${_targetName} + "ConfigVersion.cmake"
VERSION ${CMAKE_PROJECT_VERSION}
COMPATIBILITY AnyNewerVersion)
install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/"+ ${_targetName} + "Config.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/" ${_targetName} + "ConfigVersion.cmake"
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${_targetName})
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${_targetName})
1 change: 1 addition & 0 deletions api/log/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
## ./api/log/CMakeLists.txt
add_subdirectory(lib)
9 changes: 2 additions & 7 deletions api/log/lib/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
## ./api/log/lib/CMakeLists.txt
mikrosdk_add_library(lib_log MikroSDK.Log
src/log.c
src/log_printf_implementation.c
Expand Down Expand Up @@ -36,10 +37,4 @@ target_compile_definitions(lib_log
get_target_property(compile_defs lib_log COMPILE_DEFINITIONS)

mikrosdk_install(MikroSDK.Log)

install(
FILES
include/log.h
DESTINATION
${CMAKE_INSTALL_PREFIX}/include/api/log
)
install_headers(${CMAKE_INSTALL_PREFIX}/include/api/log MikroSDK.Log include/log.h)
2 changes: 1 addition & 1 deletion api/log/lib/include/log.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ typedef enum
LOG_LEVEL_INFO = 0x01,
LOG_LEVEL_WARNING = 0x02,
LOG_LEVEL_ERROR = 0x03,
LOG_LEVEL_FATAL = 0x04,
LOG_LEVEL_FATAL = 0x04
} log_level_t;

/*!
Expand Down
1 change: 1 addition & 0 deletions api/tp/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
## ./api/tp/CMakeLists.txt
add_subdirectory(lib)
25 changes: 15 additions & 10 deletions api/tp/lib/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
## ./api/tp/lib/CMakeLists.txt
#WIDTH
if(NOT DEFINED _MSDK_TFT_WIDTH_)
set(tft_display_width "0")
Expand All @@ -18,10 +19,19 @@ else()
set(tft_tp_type ${_MSDK_TFT_TP_})
endif()

if(${_MSDK_TFT_BOARD_} MATCHES "^TFT_BOARD_EASY$")
set(tp tp_mikroe)
else()
set(tp tp)
endif()

message(DEBUG ": ${tp} implementation used.")

mikrosdk_add_library(lib_tp MikroSDK.TouchPanel
src/tp.c
include/tp.h
src/${tp}/tp.c
include/${tp}/tp.h
)

target_compile_definitions(lib_tp PUBLIC
${tft_tp_type}
TFT_DISPLAY_WIDTH=${tft_display_width}
Expand All @@ -34,17 +44,12 @@ target_link_libraries(lib_tp PUBLIC

target_include_directories(lib_tp
PRIVATE
include
include/${tp}
INTERFACE
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/${tp}>
$<INSTALL_INTERFACE:include/api/tp>
)

mikrosdk_install(MikroSDK.TouchPanel)
install_headers(${CMAKE_INSTALL_PREFIX}/include/api/tp MikroSDK.TouchPanel include/${tp}/tp.h)

install(
FILES
include/tp.h
DESTINATION
${CMAKE_INSTALL_PREFIX}/include/api/tp
)
Loading

0 comments on commit ff4dda0

Please sign in to comment.