Skip to content

Commit

Permalink
mikroSDK v2.7.0
Browse files Browse the repository at this point in the history
AVR MCUs supported!

|      MCU      |      MCU       |      MCU      |
| :-----------: | :------------: | :-----------: |
|  AT90USB1286  |  AT90USB1287   |  AT90USB646   |
|  AT90USB647   |   ATmega128    |  ATmega1280   |
|  ATmega1281   |   ATmega1284   |  ATmega1284P  |
|  ATmega128A   |    ATmega16    |  ATmega164A   |
|  ATmega164P   |  ATmega164PA   |   ATmega168   |
|  ATmega168A   |   ATmega168P   |  ATmega168PA  |
|  ATmega168PB  |   ATmega16A    |  ATmega16U4   |
|  ATmega2560   |   ATmega2561   |   ATmega32    |
|  ATmega324A   |   ATmega324P   |  ATmega324PA  |
|  ATmega324PB  |   ATmega328    |   ATmega32A   |
|  ATmega32U4   |    ATmega64    |   ATmega640   |
|   ATmega644   |   ATmega644A   |  ATmega644P   |
|  ATmega644PA  |   ATmega64A    | ATxmega128A1U |
| ATxmega128A3  | ATxmega128A3U  | ATxmega128A4U |
| ATxmega128B1  |  ATxmega128B3  | ATxmega128D3  |
| ATxmega128D4  |  ATxmega16A4   | ATxmega16A4U  |
|  ATxmega16D4  |  ATxmega16E5   | ATxmega192A3  |
| ATxmega192A3U |  ATxmega192D3  | ATxmega256A3  |
| ATxmega256A3B | ATxmega256A3BU | ATxmega256A3U |
| ATxmega256D3  |  ATxmega32A4   | ATxmega32A4U  |
|  ATxmega32D3  |  ATxmega32D4   |  ATxmega32E5  |
| ATxmega384D3  |  ATxmega64A1U  |  ATxmega64A3  |
| ATxmega64A3U  |  ATxmega64A4U  |  ATxmega64B1  |
|  ATxmega64B3  |  ATxmega64D3   |  ATxmega64D4  |
|  ATmega328PB  |   ATmega169A   |  ATmega169P   |
|  ATmega169PA  |   ATmega325    |  ATmega3250   |
|  ATmega3250A  |  ATmega3250P   | ATmega3250PA  |
|  ATmega325A   |   ATmega325P   |  ATmega325PA  |
|   ATmega329   |   ATmega3290   |  ATmega3290A  |
|  ATmega3290P  |   ATmega329A   |  ATmega329P   |
|  ATmega329PA  |   ATmega645    |  ATmega6450   |
|  ATmega6450A  |  ATmega6450P   |  ATmega645A   |
|  ATmega645P   |   ATmega649    |  ATmega6490   |
|  ATmega6490A  |  ATmega6490P   |  ATmega649A   |
|  ATmega649P   |

Supported modules:

+ NEW Software I2C implemention for AVR MCUs
+ ADC (Full module support)
+ SPI (Full module support)
+ UART (Full module support)
+ I2C (Full module support)
+ PWM (Full module support)
+ GPIO (Full module support)

Files added:

+ assembly.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/common/include/assembly.h>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/hal_ll/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/adc/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/gpio/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/hal_ll/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/i2c/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/one_wire/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/spi_master/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/tim/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/uart/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/common/CMakeLists.txt>
+ CMakeLists.txt - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/core/CMakeLists.txt>
+ common_macros.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/common/include/common_macros.h>
+ hal_ll_adc.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/adc/implementation_1/hal_ll_adc.c>
+ hal_ll_adc.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/adc/implementation_2/hal_ll_adc.c>
+ hal_ll_adc.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/adc/hal_ll_adc.h>
+ hal_ll_analog_in_map.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/adc/hal_ll_analog_in_map.h>
+ hal_ll_bit_control.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/common/include/hal_ll_bit_control.h>
+ hal_ll_core.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/core/src/hal_ll_core.c>
+ hal_ll_core.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/core/include/hal_ll_core.h>
+ hal_ll_core_defines.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/core/include/hal_ll_core_defines.h>
+ hal_ll_core_port.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/core/include/hal_ll_core_port.h>
+ hal_ll_gpio.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/gpio/implementation_1/hal_ll_gpio.c>
+ hal_ll_gpio.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/gpio/hal_ll_gpio.h>
+ hal_ll_gpio_constants.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/gpio/hal_ll_gpio_constants.h>
+ hal_ll_gpio_port.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/gpio/implementation_1/subimplementation_1/hal_ll_gpio_port.c>
+ hal_ll_gpio_port.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/gpio/hal_ll_gpio_port.h>
+ hal_ll_i2c_master.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/i2c/implementation_1/hal_ll_i2c_master.c>
+ hal_ll_i2c_master.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/i2c/implementation_2/hal_ll_i2c_master.c>
+ hal_ll_i2c_master.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/i2c/implementation_3/hal_ll_i2c_master.c>
+ hal_ll_i2c_master.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/i2c/hal_ll_i2c_master.h>
+ hal_ll_i2c_pin_map.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/i2c/hal_ll_i2c_pin_map.h>
+ hal_ll_one_wire.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/one_wire/hal_ll_one_wire.c>
+ hal_ll_one_wire.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/one_wire/hal_ll_one_wire.h>
+ hal_ll_pin_names.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/hal_ll_pin_names.h>
+ hal_ll_spi_master.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/spi_master/implementation_1/hal_ll_spi_master.c>
+ hal_ll_spi_master.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/spi_master/implementation_2/hal_ll_spi_master.c>
+ hal_ll_spi_master.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/spi_master/hal_ll_spi_master.h>
+ hal_ll_spi_master_pin_map.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/spi_master/hal_ll_spi_master_pin_map.h>
+ hal_ll_target.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/hal_ll_target.h>
+ hal_ll_target_names.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/hal_ll_target_names.h>
+ hal_ll_tim.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/tim/implementation_1/hal_ll_tim.c>
+ hal_ll_tim.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/tim/implementation_2/hal_ll_tim.c>
+ hal_ll_tim.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/tim/implementation_3/hal_ll_tim.c>
+ hal_ll_tim.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/tim/hal_ll_tim.h>
+ hal_ll_tim_pin_map.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/tim/hal_ll_tim_pin_map.h>
+ hal_ll_uart.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/uart/implementation_1/hal_ll_uart.c>
+ hal_ll_uart.c - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/src/uart/implementation_2/hal_ll_uart.c>
+ hal_ll_uart.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/uart/hal_ll_uart.h>
+ hal_ll_uart_pin_map.h - <https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/avr_8bit/mikroe/avr/include/uart/hal_ll_uart_pin_map.h>

Improvements:

+ Improved Graphic Library implementation
  + Improvement for issue of bad conversion for special case
  + Added check if result is +Inf, or -Inf since cast to integer is undefined
  + Added max and min int instead
+ Added option to disable/enable whole module based on availability

Fixes:

+ Fixed VTFT imlplementation for PIC18F57Q43
  + API now returns adequate active instance for further use
+ Fixed I2C implementation 2 for PIC 8bit devices
  + Restart signal is now generated adequatelly
  + Fix impacts following devices:
    + PIC18F25K42
    + PIC18F26K42
    + PIC18F27K42
    + PIC18F45K42
    + PIC18F46K42
    + PIC18F47K42
    + PIC18F55K42
    + PIC18F56K42
    + PIC18F57K42
    + PIC18LF25K42
    + PIC18LF26K42
    + PIC18LF27K42
    + PIC18LF45K42
    + PIC18LF46K42
    + PIC18LF47K42
    + PIC18LF55K42
    + PIC18LF56K42
    + PIC18LF57K42
    + PIC18F57Q43
+ Fixed GPIO implementation for RISC-V devices
  + Unlock routine fixed for SWJ pins
  + User is now available to use SWJ pins
  + Affects all GIGADEVICE MCUs
+ Fixed TFT port setting for:
  + MCU CARD 11 FOR PIC
    + Set to adequate 8bit port
+ Fixed inclusion of adequate mcu_definitions header file for following MCUs:
  + STM32L100C6_AUx
  + STM32L100R8_ATx
  + STM32L100RB_ATx
  + STM32L151C6_ATx
  + STM32L151C6_AUx
  + STM32L151C8_ATx
  + STM32L151C8_AUx
  + STM32L151CB_ATx
  + STM32L151CB_AUx
  + STM32L151R6_AHx
  + STM32L151R6_ATx
  + STM32L151R8_AHx
  + STM32L151R8_ATx
  + STM32L151RB_AHx
  + STM32L151RB_ATx
  + STM32L151RC_ATx
  + STM32L151V8_AHx
  + STM32L151V8_ATx
  + STM32L151VB_AHx
  + STM32L151VB_ATx
  + STM32L151VC_ATx
  + STM32L152C6_ATx
  + STM32L152C6_AUx
  + STM32L152C8_ATx
  + STM32L152C8_AUx
  + STM32L152CB_ATx
  + STM32L152CB_AUx
  + STM32L152R6_AHx
  + STM32L152R6_ATx
  + STM32L152R8_AHx
  + STM32L152R8_ATx
  + STM32L152RB_AHx
  + STM32L152RB_ATx
  + STM32L152RC_ATx
  + STM32L152V8_AHx
  + STM32L152V8_ATx
  + STM32L152VB_AHx
  + STM32L152VB_ATx
  + STM32L152VC_ATx
  + STM32L162RC_ATx
  + STM32L162VC_ATx

Support added for following hardware:

+ EasyAVR PRO v8 - <https://www.mikroe.com/easyavr-pro-v8>
+ SIBRAIN FOR ATMEGA3250 - <https://www.mikroe.com/sibrain-for-atmega3250>
+ SIBRAIN FOR ATMEGA6450 - <https://www.mikroe.com/sibrain-for-atmega6450>
+ EasyAVR v7 - <https://www.mikroe.com/easyavr>

Planet Debug:

+ Incoming update with newly released AVR boards
  • Loading branch information
MarkoZiv committed Dec 1, 2022
1 parent fd9dc13 commit 685bf78
Show file tree
Hide file tree
Showing 268 changed files with 57,645 additions and 57,143 deletions.
326 changes: 280 additions & 46 deletions CHANGELOG.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
cmake_minimum_required(VERSION 3.11)
if (${TOOLCHAIN_LANGUAGE} MATCHES "MikroC")
project(MikroSDK VERSION 2.6.0 LANGUAGES MikroC)
project(MikroSDK VERSION 2.7.0 LANGUAGES MikroC)
else()
project(MikroSDK VERSION 2.6.0 LANGUAGES C ASM)
project(MikroSDK VERSION 2.7.0 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.6.0-gold)](https://github.com/MikroElektronika/mikrosdk_v2/tree/mikroSDK-2.6.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)

---
## 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.0**
* [`FLASH1`]
* [`RAM1`]
* **v2.6.0**
* [`FLASH1`]
* [`RAM1`]
Expand Down
3,965 changes: 2,040 additions & 1,925 deletions SUPPORTED_CHIP_LIST.md

Large diffs are not rendered by default.

31 changes: 27 additions & 4 deletions api/gl/lib/src/gl_shapes.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
#include "gl_shapes.h"
#include "gl_utils.h"
#include <math.h>
#include <stdint.h>
#include <stdlib.h>
#include <stddef.h>
#include <stdbool.h>
Expand Down Expand Up @@ -683,6 +684,22 @@ static void _draw_slice_crop(gl_arc_t* arc, gl_rectangle_t* border_rect)
tg_angle_start = tan(arc->start_angle * storage);
tg_angle_end = tan(arc->end_angle * storage);

// whatsnew: IR fix for issue of bad conversion for special case
// added check if result is +Inf, or -Inf
// since cast to integer is undefined
// added max and min int instead
if (tg_angle_start > INT32_MAX) {
tg_angle_start = INT32_MAX;
} else if (tg_angle_start < INT32_MIN) {
tg_angle_start = INT32_MIN;
}

if (tg_angle_end > INT32_MAX) {
tg_angle_end = INT32_MAX;
} else if (tg_angle_end < INT32_MIN) {
tg_angle_end = INT32_MIN;
}

// finding pint A
storage = sqrt(1.0 + tg_angle_start * tg_angle_start);
x_ring_left = arc->radius / storage;
Expand All @@ -696,8 +713,11 @@ static void _draw_slice_crop(gl_arc_t* arc, gl_rectangle_t* border_rect)
if (90 < arc->start_angle && arc->start_angle<= 270)
{
x_left *= -1;
y_left *= -1;
y_ring_left *= -1;
// whatsnew: IR fix for issue no need to negate it if already is negative
if(y_left > 0) {
y_left *= -1;
y_ring_left *= -1;
}
x_ring_left *= -1;
}

Expand All @@ -720,8 +740,11 @@ static void _draw_slice_crop(gl_arc_t* arc, gl_rectangle_t* border_rect)
if (90 < arc->end_angle && arc->end_angle<= 270)
{
x_right *= -1;
y_right *= -1;
y_ring_right *= -1;
// whatsnew: IR fix for issue no need to negate it if already is negative
if(y_right > 0) {
y_right *= -1;
y_ring_right *= -1;
}
x_ring_right *= -1;
}

Expand Down
20 changes: 19 additions & 1 deletion api/vtft/lib_vtft/src/vtft_touch.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,14 +44,33 @@
// Currently used VTFT instance. Needed for TP callbacks.
static vtft_t *_current_instance = 0;

/**
* @attention @b https://github.com/MikroElektronika/mikrosdk_v2/issues/4
* @note @ref _get_active_component API fails to return adequate handler
* for @b PIC18F57Q43 MCU specifically.
* Workaround applied by creating a global variable which is further
* used in the API itself.
* The issue will be resolved in on of the following updates.
*/
#if defined(__MIKROC_AI_FOR_PIC__) && defined(PIC18F57Q43)
static vtft_screen* active_screen;
#endif

// Local Function Definitions

// Returns the frontmost active component at the given coordinates.
static vtft_active_component * __generic_ptr _get_active_component(vtft_t * instance, vtft_coord_t x, vtft_coord_t y)
{
int32_t i;
// TODO - when fixed, revert to previous state.
#if defined(__MIKROC_AI_FOR_PIC__) && defined(PIC18F57Q43)
active_screen = instance->current_screen;
vtft_component * __generic_ptr * __generic_ptr components = active_screen->components;
volatile vtft_index_t component_count = active_screen->component_count;
#else
vtft_component * __generic_ptr * __generic_ptr components = instance->current_screen->components;
vtft_index_t component_count = instance->current_screen->component_count;
#endif

for (i = component_count - 1; i >= 0; i--)
{
Expand Down Expand Up @@ -313,4 +332,3 @@ void _tp_event_handler( tp_event_t event, tp_coord_t x, tp_coord_t y, tp_touch_i
break;
}
}

26 changes: 25 additions & 1 deletion bsp/board/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,16 @@ if(${_MSDK_BOARD_NAME_} STREQUAL "BOARD_QUAIL")
set(MCU_CARD FALSE)
endif()

if(${_MSDK_BOARD_NAME_} STREQUAL "BOARD_EASYAVR_PRO_V8")
set(BOARD_PATH "board_easyavr_pro_v8")
endif()

if(${_MSDK_BOARD_NAME_} STREQUAL "BOARD_EASYAVR_V7")
set(BOARD_PATH "board_easyavr_v7")
set(MCU_CARD FALSE)
set(DIP_SOCKET TRUE)
endif()

## CLICKER BOARDS
if(${_MSDK_BOARD_NAME_} STREQUAL "STM32_M4_CLICKER")
set(BOARD_PATH "clicker_stm32_m4")
Expand Down Expand Up @@ -424,8 +434,22 @@ if (MCU_CARD)
list(APPEND INCLUDE_HEADERS_PATH_LIST include/mcu_cards/${MCU_CARD_PATH})
endif()
if(DIP_SOCKET)
list(APPEND HEADERS_LIST include/boards/${BOARD_PATH}/dip_sockets/${BOARD_DIP_SOCKET_PATH}/dip_socket.h)
# TODO
# Add appropriate dip_socket header files per MCU.
# At the moment all non AVR MCUs take one socket header file.
# e.g. if DIP40 socket on the board has both A and B sockets, socket B will be taken by default.
list(APPEND INCLUDE_HEADERS_PATH_LIST include/boards/${BOARD_PATH}/dip_sockets/${BOARD_DIP_SOCKET_PATH})
if ( (${MSDK_FILTERED_DIP_SOCKET_TYPE} MATCHES "^dip[24]0$") AND (${_MSDK_BOARD_NAME_} STREQUAL "BOARD_EASYAVR_V7") )
list(APPEND INCLUDE_HEADERS_PATH_LIST include/boards/${BOARD_PATH}/dip_sockets)
if (${MSDK_FILTERED_DIP_SOCKET_TYPE} STREQUAL "dip20")
list(APPEND HEADERS_LIST include/boards/${BOARD_PATH}/dip_sockets/dip20b/dip_socket.h)
endif()
if (${MSDK_FILTERED_DIP_SOCKET_TYPE} STREQUAL "dip40")
list(APPEND HEADERS_LIST include/boards/${BOARD_PATH}/dip_sockets/dip40b/dip_socket.h)
endif()
else()
list(APPEND HEADERS_LIST include/boards/${BOARD_PATH}/dip_sockets/${BOARD_DIP_SOCKET_PATH}/dip_socket.h)
endif()
endif()

if (SHIELD)
Expand Down
182 changes: 182 additions & 0 deletions bsp/board/include/boards/board_easyavr_pro_v8/board.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,182 @@
/****************************************************************************
**
** Copyright (C) 2022 MikroElektronika d.o.o.
** Contact: https://www.mikroe.com/contact
**
** This file is part of the mikroSDK package
**
** Commercial License Usage
**
** Licensees holding valid commercial NECTO compilers AI licenses may use this
** file in accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The MikroElektronika Company.
** For licensing terms and conditions see
** https://www.mikroe.com/legal/software-license-agreement.
** For further information use the contact form at
** https://www.mikroe.com/contact.
**
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used for
** non-commercial projects under the terms of the GNU Lesser
** General Public License version 3 as published by the Free Software
** Foundation: https://www.gnu.org/licenses/lgpl-3.0.html.
**
** The above copyright notice and this permission notice shall be
** included in all copies or substantial portions of the Software.
**
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** OF MERCHANTABILITY, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
** TO THE WARRANTIES FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
** DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
** OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
** OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
**
****************************************************************************/
/*!
* @file board.h
* @brief Main board pin mapping.
*/

#ifndef _BOARD_H_
#define _BOARD_H_

#ifdef __cplusplus
extern "C"{
#endif

// Hardware revision number
#define BOARD_REV_MAJOR (1)
#define BOARD_REV_MINOR (00)

#define BOARD_NAME "EasyAVR PRO v8"

#include "mcu_card.h"
#include "mikrobus.h"

/// Mapping
#define MIKROBUS_1 1
#define MIKROBUS_1_AN LEFT_CN_PIN_144
#define MIKROBUS_1_RST LEFT_CN_PIN_143
#define MIKROBUS_1_CS LEFT_CN_PIN_142
#define MIKROBUS_1_SCK LEFT_CN_PIN_141
#define MIKROBUS_1_MISO LEFT_CN_PIN_140
#define MIKROBUS_1_MOSI LEFT_CN_PIN_139
#define MIKROBUS_1_PWM LEFT_CN_PIN_138
#define MIKROBUS_1_RX LEFT_CN_PIN_136
#define MIKROBUS_1_INT LEFT_CN_PIN_137
#define MIKROBUS_1_TX LEFT_CN_PIN_135
#define MIKROBUS_1_SCL LEFT_CN_PIN_134
#define MIKROBUS_1_SDA LEFT_CN_PIN_133

#define MIKROBUS_2 2
#define MIKROBUS_2_AN LEFT_CN_PIN_132
#define MIKROBUS_2_RST LEFT_CN_PIN_131
#define MIKROBUS_2_CS LEFT_CN_PIN_130
#define MIKROBUS_2_SCK LEFT_CN_PIN_129
#define MIKROBUS_2_MISO LEFT_CN_PIN_128
#define MIKROBUS_2_MOSI LEFT_CN_PIN_127
#define MIKROBUS_2_PWM LEFT_CN_PIN_126
#define MIKROBUS_2_RX LEFT_CN_PIN_124
#define MIKROBUS_2_INT LEFT_CN_PIN_125
#define MIKROBUS_2_TX LEFT_CN_PIN_123
#define MIKROBUS_2_SCL LEFT_CN_PIN_122
#define MIKROBUS_2_SDA LEFT_CN_PIN_121

#define MIKROBUS_3 3
#define MIKROBUS_3_AN LEFT_CN_PIN_120
#define MIKROBUS_3_RST LEFT_CN_PIN_119
#define MIKROBUS_3_CS LEFT_CN_PIN_118
#define MIKROBUS_3_SCK LEFT_CN_PIN_117
#define MIKROBUS_3_MISO LEFT_CN_PIN_116
#define MIKROBUS_3_MOSI LEFT_CN_PIN_115
#define MIKROBUS_3_PWM LEFT_CN_PIN_114
#define MIKROBUS_3_RX LEFT_CN_PIN_112
#define MIKROBUS_3_INT LEFT_CN_PIN_113
#define MIKROBUS_3_TX LEFT_CN_PIN_111
#define MIKROBUS_3_SCL LEFT_CN_PIN_110
#define MIKROBUS_3_SDA LEFT_CN_PIN_109

#define MIKROBUS_4 4
#define MIKROBUS_4_AN LEFT_CN_PIN_108
#define MIKROBUS_4_RST LEFT_CN_PIN_107
#define MIKROBUS_4_CS LEFT_CN_PIN_106
#define MIKROBUS_4_SCK LEFT_CN_PIN_105
#define MIKROBUS_4_MISO LEFT_CN_PIN_104
#define MIKROBUS_4_MOSI LEFT_CN_PIN_103
#define MIKROBUS_4_PWM LEFT_CN_PIN_102
#define MIKROBUS_4_RX LEFT_CN_PIN_100
#define MIKROBUS_4_INT LEFT_CN_PIN_101
#define MIKROBUS_4_TX LEFT_CN_PIN_099
#define MIKROBUS_4_SCL LEFT_CN_PIN_098
#define MIKROBUS_4_SDA LEFT_CN_PIN_097

#define MIKROBUS_5 5
#define MIKROBUS_5_AN LEFT_CN_PIN_096
#define MIKROBUS_5_RST LEFT_CN_PIN_095
#define MIKROBUS_5_CS LEFT_CN_PIN_094
#define MIKROBUS_5_SCK LEFT_CN_PIN_093
#define MIKROBUS_5_MISO LEFT_CN_PIN_092
#define MIKROBUS_5_MOSI LEFT_CN_PIN_091
#define MIKROBUS_5_PWM LEFT_CN_PIN_090
#define MIKROBUS_5_RX LEFT_CN_PIN_088
#define MIKROBUS_5_INT LEFT_CN_PIN_089
#define MIKROBUS_5_TX LEFT_CN_PIN_087
#define MIKROBUS_5_SCL LEFT_CN_PIN_086
#define MIKROBUS_5_SDA LEFT_CN_PIN_085

#define USB_UART_TX RIGHT_CN_PIN_160
#define USB_UART_RX RIGHT_CN_PIN_159

#define TFT_RST LEFT_CN_PIN_025
#define TFT_CS LEFT_CN_PIN_026
#define TFT_D_C LEFT_CN_PIN_027
#define TFT_RD LEFT_CN_PIN_028
#define TFT_WR LEFT_CN_PIN_029
#define TFT_TE LEFT_CN_PIN_055
#define TFT_GPIO LEFT_CN_PIN_054
#define TFT_BPWM LEFT_CN_PIN_057
#define TFT_D0 LEFT_CN_PIN_030
#define TFT_D1 LEFT_CN_PIN_031
#define TFT_D2 LEFT_CN_PIN_032
#define TFT_D3 LEFT_CN_PIN_033
#define TFT_D4 LEFT_CN_PIN_034
#define TFT_D5 LEFT_CN_PIN_035
#define TFT_D6 LEFT_CN_PIN_036
#define TFT_D7 LEFT_CN_PIN_037
#define TFT_D8 LEFT_CN_PIN_038
#define TFT_D9 LEFT_CN_PIN_039
#define TFT_D10 LEFT_CN_PIN_040
#define TFT_D11 LEFT_CN_PIN_041
#define TFT_D12 LEFT_CN_PIN_042
#define TFT_D13 LEFT_CN_PIN_043
#define TFT_D14 LEFT_CN_PIN_044
#define TFT_D15 LEFT_CN_PIN_045

#define CTP_SDA LEFT_CN_PIN_059
#define CTP_SCL LEFT_CN_PIN_058
#define CTP_WAKE LEFT_CN_PIN_061
#define CTP_INT LEFT_CN_PIN_060
#define CTP_RST LEFT_CN_PIN_062

#define USB_UART_TX RIGHT_CN_PIN_160
#define USB_UART_RX RIGHT_CN_PIN_159

#define TFT_8BIT_DATA_PORT_CH0 LCD_TFT_8BIT_CH0
#define TFT_8BIT_DATA_PORT_CH0_MASK LCD_TFT_CH0_8BIT_MASK

#define TFT_16BIT_DATA_PORT_CH0 LCD_TFT_16BIT_CH0
#define TFT_16BIT_DATA_PORT_CH0_MASK LCD_TFT_16BIT_CH0_MASK

#define TFT_16BIT_DATA_PORT_CH1 LCD_TFT_16BIT_CH1
#define TFT_16BIT_DATA_PORT_CH1_MASK LCD_TFT_16BIT_CH1_MASK

#ifdef __cplusplus
}
#endif

#endif // _BOARD_H_
// ------------------------------------------------------------------------- END
Loading

0 comments on commit 685bf78

Please sign in to comment.