Releases: MikroElektronika/mikrosdk_v2
mikroSDK v2.11.1 released
v2.11.1
- released: 2024-06-27
Changes
- STM32 low level hal support
- dsPIC XC16 USB support
- PIC32 XC32 ETHERNET support
- Fixes
- Improvements
- NEW HARDWARE
STM32
STM32 MCUs supported!
MCU | MCU | MCU | MCU | MCU |
---|---|---|---|---|
STM32C011D6 | STM32C011F6 | STM32L4P5ZG | STM32G431RB | STM32C011J6 |
STM32C011F4 | STM32C011J4 | STM32L4P5AE | STM32L4P5AG | STM32L4P5CE |
STM32L4P5QE | STM32L4P5QG | STM32L4P5RE | STM32L4P5RG | STM32L4P5VE |
STM32L4P5ZE | STM32G431C6 | STM32G431C8 | STM32G431CB | STM32G431K6 |
STM32G431KB | STM32G431M6 | STM32G431M8 | STM32G431MB | STM32G431R6 |
STM32G431V6 | STM32G431V8 | STM32G431VB | STM32G441CB | STM32G441KB |
STM32G441RB | STM32G441VB | STM32G473CB | STM32G473CC | STM32G473CE |
STM32G473MC | STM32G473ME | STM32G473PB | STM32G473PC | STM32G473PE |
STM32G473QC | STM32G473QE | STM32G473RB | STM32G473RC | STM32G473RE |
STM32G473VC | STM32G473VE | STM32G474CB | STM32G474CC | STM32G474CE |
STM32G474MC | STM32G474ME | STM32G474PB | STM32G474PC | STM32G474PE |
STM32G474QC | STM32G474QE | STM32G474RB | STM32G474RC | STM32G474RE |
STM32G474VC | STM32G474VE | STM32G483CE | STM32G483ME | STM32G483PE |
STM32G483RE | STM32G483VE | STM32G484CE | STM32G484ME | STM32G484PE |
STM32G484RE | STM32G484VE | STM32G491CC | STM32G491CE | STM32G491KC |
STM32G491MC | STM32G491ME | STM32G491RC | STM32G491RE | STM32G491VC |
STM32G4A1CE | STM32G4A1KE | STM32G4A1ME | STM32G4A1RE | STM32G4A1VE |
STM32L4Q5CG | STM32L4Q5QG | STM32L4Q5RG | STM32L4Q5VG | STM32L4Q5ZG |
STM32C031C6 | STM32C031F4 | STM32C031F6 | STM32C031G4 | STM32C031G6 |
STM32C031K6 | STM32G051C6 | STM32G051C8 | STM32G051F6 | STM32G051F8 |
STM32G051G8 | STM32G051K6 | STM32G051K8 | STM32G061C6 | STM32G061C8 |
STM32G061F8 | STM32G061G6 | STM32G061G8 | STM32G061K6 | STM32G061K8 |
STM32G0B1CC | STM32G0B1CE | STM32G0B1KB | STM32G0B1KC | STM32G0B1KE |
STM32G0B1MC | STM32G0B1ME | STM32G0B1NE | STM32G0B1RB | STM32G0B1RC |
STM32G0B1VB | STM32G0B1VC | STM32G0B1VE | STM32G0C1CC | STM32G0C1CE |
STM32G0C1KE | STM32G0C1MC | STM32G0C1ME | STM32G0C1NE | STM32G0C1RC |
STM32G0C1VC | STM32G0C1VE | STM32L4P5CG | STM32L4P5VG | STM32G431K8 |
STM32G431R8 | STM32G441MB | STM32G473MB | STM32G473QB | STM32G473VB |
STM32G474MB | STM32G474QB | STM32G474VB | STM32G483QE | STM32G484QE |
STM32G491KE | STM32G491VE | STM32L4Q5AG | STM32C031C4 | STM32C031K4 |
STM32G051G6 | STM32G061F6 | STM32G0B1CB | STM32G0B1MB | STM32G0B1RE |
STM32G0C1KC | STM32G0C1RE |
Supported modules:
- ADC (Full module support)
- SPI (Full module support)
- UART (Full module support)
- I2C (Full module support)
- PWM (Full module support)
- GPIO (Full module support)
- OW (Full module support)
- DMA (Full module support)
- CAN (Full module support)
XC16 USB
- Third party modules supported
- TinyUSB (An open source cross-platform USB stack for embedded systems)
XC32 ETHERNET
- Third party modules supported
- CycloneTCP (An open source cross-platform USB stack for embedded systems)
- Support added for XC32 compiler
Fixes
- Added PD0 and PD1 pins connection for all GD32VF103 MCUs
- Fixed pin configuration for pins with indexes below 8 in
hal_ll_one_wire.c
implementation for GD32VF103 MCUs - Set default CAN baudrate to 125K for all architectures that have CAN module supported
- Modified error handling in ADC implementation for MKV58x MCUs to detect and notify when an unsupported resolution is attempted to be set
- Modified low-level GPIO implementation for STM32 so now PORT G pins on STM32L4Rxx MCUs can be set as inputs or outputs
- Resistive mikromedias naming fixed according to the product names
Mikromedia 3 for STM32 Resistive
changed toMikromedia 3 for STM32F4 Resistive
Mikromedia 3 for STM32 Resistive FPI
changed toMikromedia 3 for STM32F4 Resistive FPI
Mikromedia 4 for STM32 Resistive
changed toMikromedia 4 for STM32F4 Resistive
Mikromedia 5 for STM32 Resistive
changed toMikromedia 5 for STM32F4 Resistive
- Fixed values for display configuration so now it is configured as an 800x480 display istead of 480x800
Mikromedia 5 for Kinetis Resistive
Mikromedia 5 for Kinetis Resistive FPI
- Fixed regex for including an appropriate dip28 header files for the boards that have this socket
Improvements
- Added helper function in ./tp.c for simplifying code operations on PIC architecture.
- Added default CAN receive FIFO number and default filter bank number for all architectures that have CAN module supported
- Added CAN_RX and CAN_TX pins for
EasyPIC v8
,EasyPIC v8 for dsPIC30
andEasyPIC v8 for PIC24/dsPIC33
boards - Added mapping for LCD pins in board.h, lcd.h now uses these pins instead of TFT
- Changed the approach to adding new BSP
- BSP files are now included as separate cmake files per board
- Implemented an option to add all header files that are used in LVGL project into the LVGL library
- Structure typecast for GPIO changed to match other architectures
NEW HARDWARE
Support added for following hardware:
mikroSDK v2.11.0 released
v2.11.0
- released: 2024-04-02
Changes
XC32
- As of mikroSDK version
2.11.0
,XC32 v4.35
is officially supported. - All
187
PIC32 MCUs can now be used with the XC32 toolchain along with full mikroSDK functionality. - Linker scripts are included upon selecting adequate setup for your project so it can be easily edited on the fly.
- All standard modules supported (GPIO, ADC, I2C, PWM, SPI, UART, OneWire, RTC, CAN, DMA and LCD)
- Third party modules supported
- TinyUSB (An open source cross-platform USB stack for embedded system)
- LVGL (Light and Versatile Embedded Graphics Library)
- FatFs (Generic FAT Filesystem Module)
XC16
- As of mikroSDK version
2.11.0
,XC16 v2.10
is officially supported. - All
531
dsPIC/PIC24 MCUs can now be used with the XC16 toolchain along with full mikroSDK functionality. - Linker scripts are included upon selecting adequate setup for your project so it can be easily edited on the fly.
- All standard modules supported (GPIO, ADC, I2C, PWM, SPI, UART, OneWire, CAN and LCD)
- Third party modules supported
- FatFs (Generic FAT Filesystem Module)
XC8
- As of mikroSDK version
2.11.0
,XC8 v2.46
is officially supported. - Due to the complexity of mikroSDK, only
PIC18xxQ43
family of MCUs is supported. - All standard modules supported (GPIO, ADC, I2C, PWM, SPI, UART, OneWire, CAN, DMA and LCD)
- Third party modules supported
- FatFs (Generic FAT Filesystem Module)
Fixes
- Fixed
drv/lib/CMakeLists.txt
to include the appropriate subdirectories.- Previously,
lib_drv_i2c_master
andlib_drv_port
were switched. Now, the inclusion is based on their individual definitions – ensuring that each is included as intended.
- Previously,
- Fixed all low level implementations for PIC32 MCUs to accommodate the release of XC32 toolchain.
- Fixed issue with gl_text not drawing correct characters on XC compilers.
- Fixed issue with tp not detecting TP_EVENT_PRESS_UP on tft7 boards.
- Fixed wrong LCD_TFT_8BIT_CH0 port name for:
- Fixed wrong HAL_LL_I2C_MAX_SPEED_VALUE for I2CxBRG register for dsPIC devices.
- Fixed custom board inclusion into project
- Custom board is not generated in mikroSDK BSP anymore, but in
MIKROE
app data
- Custom board is not generated in mikroSDK BSP anymore, but in
Improvements
- Added doxy style help generation files for mikroSDK
- Additionally, a layout file has been added as well
- Changed directory so it can be built as bare metal
- Changed following files:
- ./CMakeLists.txt
- ./platform/CMakeLists.txt
- ./platform/conversions/lib/CMakeLists.txt
- Changed name to
Generic.Conversions
- Changed name to
- Changed following files:
delays.h
explicitly included in all files which use any delay API- Changed order of variables in ili9341.c for MikroC AI for dsPIC due to issue with W2 register.
- Changed ./hal_ll_adc.c, added setting of pin analog functionality in hal_ll_adc_read function because of special case in tp_mikroe.c where we constantly change pin configuration.
- Changed ./tsc2003.h, I2C slave address for touch controller is now defined in database.
- Updated all tests to build with XC compilers
- Additinally, added preinit routine to every test as well
NEW HARDWARE
- Mikromedia 3 for PIC Resistive
- Mikromedia 3 for PIC Resistive FPI
- Mikromedia 3 for STM32 Resistive
- Mikromedia 3 for STM32 Resistive FPI
- Mikromedia 4 for kinetis Resistive
- Mikromedia 4 for kinetis Resistive FPI
- Mikromedia 4 for STM32 Resistive
- Mikromedia 4 for STM32f2 Resistive FPI
- Mikromedia 4 for STM32f4 Resistive FPI
- Mikromedia 4 for STM32f7 Resistive
- Mikromedia 5 for kinetis Resistive
- Mikromedia 5 for kinetis Resistive FPI
- Mikromedia 5 for STM32 Resistive
- Mikromedia 5 for STM32f4 Resistive FPI
- Mikromedia 5 for STM32f7 Resistive
- Mikromedia 5 for STM32f7 Resistive FPI
- Mikromedia 7 Resistive
- Mikromedia 7 Resistive FPI
mikroSDK v2.10.2 released
v2.10.2
- released: 2024-02-19
2.10.2
Changes
2.10.2
Fixes
- Fixed an issue on TIVA, where the DMA transfer would not be realized, if the source data buffer was stored in flash memory
- Configured flash memory to allow the DMA access to the whole flash memory space
- Added guards for tim_regs_map array in dsPIC low-level PWM implementation
2.10.2
Improvements
- Removed option to choose receive buffer and filter config for FIFO1 in low level implementation for PIC18 CAN implementation
- Receive buffers are not selectable due to HW restrictions. Filter and mask configuration for FIFO1 is going to be handled once CAN over interrupts is supported
- Removed NC definition for not connected pins from MCU card headers for 61 MCU cards
- Now user will have compile time error if he tries using pin that is not routed to mikroBUS
- Added NC macro as HAL_PIN_NC to 20 PIM MCU card headers that didn't have it
- Removed display support for MCU CARD 2 FOR KINETIS with MK20 MCUs as it doesn't have TFT pins
2.10.2
NEW HARDWARE
- STM32 Nucleo-64 development board with STM32F401RE MCU
- STM32 Nucleo-64 development board with STM32F030R8 MCU
- STM32 Nucleo-64 development board with STM32L073RZ MCU
- STM32 Nucleo-64 development board with STM32L476RG MCU
- STM32 Nucleo-64 development board with STM32F070RB MCU
- STM32 Nucleo-64 development board with STM32F091RC MCU
- STM32 Nucleo-64 development board with STM32L433RC-P MCU
- Click Shield for Nucleo-64
- STM32 Nucleo-144 development board with STM32L496ZG MCU
- STM32 Nucleo-144 development board with STM32L4R5ZI MCU
- STM32 Nucleo-144 development board with STM32F412ZG MCU
mikroSDK v2.10.1 released
v2.10.1
- released: 2024-02-02
Changes
Fixes
- Fixed shield.h for shield_curiosity_nano_base_for_click_boards
- Resolved macros mismatch with board.h
- Fixed baud rate settings in low level CAN implementation for NXP
- Default baud rate changed from 500k to 125k
- Added checking in hal_ll_can_bit_timing() API if configured baud rate is the same as requested
- Fixed guards for CAN PPS pins on PIC32
- Resolved the problem where certain pins were unreachable due to undefined macros in
ifdef
- Resolved the problem where certain pins were unreachable due to undefined macros in
- Transmit FIFO initialization for CAN on PIC32 moved from
hal_ll_can_filter_init
tohal_ll_can_module_init
- Since filters are not needed for transmitting this change makes using CAN easier and more intuitive
Full Changelog: mikroSDK-2.10.0...mikroSDK-2.10.1
mikroSDK v2.10.0 released
v2.10.0
- released: 2024-01-30
Changes
New Features
Support for DMA module!
Direct Memory Access (DMA) is a module that allows peripherals,
to directly transfer data to or from memory without the constant involvement of the processor.
This enhances the efficiency and speed of data handling in embedded applications,
allowing for more real-time processing and reducing processor workload.
- Files added
- Common files
- STM32
- NXP
- TIVA
- Gigadevice
- PIC-8bit
- PIC-32bit
Support added for CAN protocol!
Controller Area Network (CAN) is a robust and widely used communication
protocol in the field of automotive and industrial applications. CAN protocol
is designed for high-speed, reliable communication between electronic
control units in a network without a host computer. It enables real-time data
exchange among different components of a system such as microcontrollers.
- Files added
- Common files
- STM32
- NXP
- TIVA
- Gigadevice
- PIC-8bit
- PIC-16bit
mikroSDK v2.9.0 released
v2.9.0
- released: 2023-10-05
2.9.0
Changes
2.9.0
New Features
- Added support for USB by implementing an already tested and community driven project - tinyUSB
- Lightweight and efficient, designed to be small in size and highly efficient in terms of memory and CPU usage
- All GCC MCUs are supported
STM32
NXP
TIVA
GD32
- Following classes added
audio
bth
cdc
dfu
hid
midi
msc
net
usbtmc
vendor
video
- Added support for ETHERNET by implementing an open-source TCP/IP protocol stack library designed for embedded systems and IoT - CycloneTCP
- Lightweight and resource-efficient in terms of memory and CPU usage
- All GCC MCUs are supported
STM32
NXP
TIVA
GD32
- Following modules added
coap
dhcp
dhcpv6
dns
dns_sd
echo
ftp
http
icecast
igmp
ipv4
ipv6
lldp
llmnr
mdns
mibs
modbus
mqtt
mqtt_sn
netbios
ppp
smtp
snmp
sntp
syslog
tftp
web_socket
- Interrupt control added for all architectures and MCUs
- Added HW initialization sequences for MikroE hardware
- Sequences added for
USB
andETHERNET
- Files added as inline interface libraries in
./middleware/hw
- 8 files in total for
ETHERNET
- 16 files in total for
USB
- 8 files in total for
- Sequences added for
- Added following test examples
- USB
cdc_msc
hid_generic_inout
midi
- ETHERNET
http_client
ftp_client
- USB
2.9.0
Improvements
- SPI low level implementation updated for all architectures
- Low level
write
andread
APIs transfer counter changed fromuint16_t
tosize_t
- Results in bigger buffers available for single data transfer
- Low level
2.9.0
Fixes
- Fixed pins for USB_UART defined in
dip_socket.h
for packages DIP20 and DIP28 for EasyPIC v8 boardUSB_UART_TX
changed fromPC4
toPC6
USB_UART_RX
changed fromPC5
toPC7
- Fixed inadequate structure access in following libraries
tft7
ili9341
tp_mikroe
2.9.0
NEW HARDWARE
mikroSDK v2.8.0 released
v2.8.0
- released: 2023-07-20
2.8.0
Changes
dsPIC
dsPIC MCUs supported!
MCU | MCU | MCU | MCU | MCU |
---|---|---|---|---|
dsPIC30F3012 | dsPIC30F3012E | dsPIC30F3013 | dsPIC30F3013E | dsPIC30F3014 |
dsPIC30F3014E | dsPIC30F4011 | dsPIC30F4011E | dsPIC30F4012 | dsPIC30F4012E |
dsPIC30F4013 | dsPIC30F4013E | dsPIC30F5011 | dsPIC30F5011E | dsPIC30F5013 |
dsPIC30F5013E | dsPIC30F5015 | dsPIC30F5015E | dsPIC30F6010 | dsPIC30F6010A |
dsPIC30F6011 | dsPIC30F6011A | dsPIC30F6012 | dsPIC30F6012A | dsPIC30F6013 |
dsPIC30F6013A | dsPIC30F6014 | dsPIC30F6014A | dsPIC30F6015 | dsPIC33EP128GM304 |
dsPIC33EP128GM306 | dsPIC33EP128GM310 | dsPIC33EP128GM604 | dsPIC33EP128GM706 | dsPIC33EP128GM710 |
dsPIC33EP128GP502 | dsPIC33EP128GP504 | dsPIC33EP128GP506 | dsPIC33EP128MC202 | dsPIC33EP128MC204 |
dsPIC33EP128MC206 | dsPIC33EP128MC502 | dsPIC33EP128MC504 | dsPIC33EP128MC506 | dsPIC33EP256GM304 |
dsPIC33EP256GM306 | dsPIC33EP256GM310 | dsPIC33EP256GM604 | dsPIC33EP256GM706 | dsPIC33EP256GM710 |
dsPIC33EP256GP502 | dsPIC33EP256GP504 | dsPIC33EP256GP506 | dsPIC33EP256MC202 | dsPIC33EP256MC204 |
dsPIC33EP256MC206 | dsPIC33EP256MC502 | dsPIC33EP256MC504 | dsPIC33EP256MC506 | dsPIC33EP256MU806 |
dsPIC33EP256MU810 | dsPIC33EP256MU814 | dsPIC33EP32GP502 | dsPIC33EP32GP503 | dsPIC33EP32GP504 |
dsPIC33EP32MC202 | dsPIC33EP32MC203 | dsPIC33EP32MC204 | dsPIC33EP32MC502 | dsPIC33EP32MC503 |
dsPIC33EP32MC504 | dsPIC33EP512GM304 | dsPIC33EP512GM306 | dsPIC33EP512GM310 | dsPIC33EP512GM604 |
dsPIC33EP512GM706 | dsPIC33EP512GM710 | dsPIC33EP512GP502 | dsPIC33EP512GP504 | dsPIC33EP512GP506 |
dsPIC33EP512GP806 | dsPIC33EP512MC202 | dsPIC33EP512MC204 | dsPIC33EP512MC206 | dsPIC33EP512MC502 |
dsPIC33EP512MC504 | dsPIC33EP512MC506 | dsPIC33EP512MC806 | dsPIC33EP512MU810 | dsPIC33EP512MU814 |
dsPIC33EP64GP502 | dsPIC33EP64GP503 | dsPIC33EP64GP504 | dsPIC33EP64GP506 | dsPIC33EP64MC202 |
dsPIC33EP64MC203 | dsPIC33EP64MC204 | dsPIC33EP64MC206 | dsPIC33EP64MC502 | dsPIC33EP64MC503 |
dsPIC33EP64MC504 | dsPIC33EP64MC506 | dsPIC33FJ128GP202 | dsPIC33FJ128GP204 | dsPIC33FJ128GP206 |
dsPIC33FJ128GP206A | dsPIC33FJ128GP306 | dsPIC33FJ128GP306A | dsPIC33FJ128GP310 | dsPIC33FJ128GP310A |
dsPIC33FJ128GP706 | dsPIC33FJ128GP706A | dsPIC33FJ128GP708 | dsPIC33FJ128GP708A | dsPIC33FJ128GP710 |
dsPIC33FJ128GP710A | dsPIC33FJ128GP802 | dsPIC33FJ128GP804 | dsPIC33FJ128MC202 | dsPIC33FJ128MC204 |
dsPIC33FJ128MC506A | dsPIC33FJ128MC510A | dsPIC33FJ128MC706A | dsPIC33FJ128MC708A | dsPIC33FJ128MC710A |
dsPIC33FJ128MC802 | dsPIC33FJ128MC804 | dsPIC33FJ16GP304 | dsPIC33FJ16MC304 | dsPIC33FJ256GP506 |
dsPIC33FJ256GP506A | dsPIC33FJ256GP510 | dsPIC33FJ256GP510A | dsPIC33FJ256GP710 | dsPIC33FJ256GP710A |
dsPIC33FJ256MC510A | dsPIC33FJ256MC710A | dsPIC33FJ32GP101 | dsPIC33FJ32GP102 | dsPIC33FJ32GP104 |
dsPIC33FJ32GP202 | dsPIC33FJ32GP204 | dsPIC33FJ32GP302 | dsPIC33FJ32GP304 | dsPIC33FJ32MC202 |
dsPIC33FJ32MC204 | dsPIC33FJ32MC302 | dsPIC33FJ32MC304 | dsPIC33FJ64GP202 | dsPIC33FJ64GP204 |
dsPIC33FJ64GP206 | dsPIC33FJ64GP206A | dsPIC33FJ64GP306 | dsPIC33FJ64GP306A | dsPIC33FJ64GP310 |
dsPIC33FJ64GP310A | dsPIC33FJ64GP706 | dsPIC33FJ64GP706A | dsPIC33FJ64GP708 | dsPIC33FJ64GP708A |
dsPIC33FJ64GP710 | dsPIC33FJ64GP710A | dsPIC33FJ64GP802 | dsPIC33FJ64GP804 | dsPIC33FJ64MC202 |
dsPIC33FJ64MC204 | dsPIC33FJ64MC506A | dsPIC33FJ64MC508A | dsPIC33FJ64MC510A | dsPIC33FJ64MC706A |
dsPIC33FJ64MC710A | dsPIC33FJ64MC802 | dsPIC33FJ64MC804 | PIC24EP128GP202 | PIC24EP128GP204 |
PIC24EP128GP206 | PIC24EP128MC202 | PIC24EP128MC204 | PIC24EP128MC206 | PIC24EP256GP202 |
PIC24EP256GP204 | PIC24EP256GP206 | PIC24EP256GU810 | PIC24EP256GU814 | PIC24EP256MC202 |
PIC24EP256MC204 | PIC24EP256MC206 | PIC24EP32GP202 | PIC24EP32GP203 | PIC24EP32GP204 |
PIC24EP32MC202 | PIC24EP32MC203 | PIC24EP32MC204 | PIC24EP512GP202 | PIC24EP512GP204 |
PIC24EP512GP206 | PIC24EP512GP806 | PIC24EP512GU810 | PIC24EP512GU814 | PIC24EP512MC202 |
PIC24EP512MC204 | PIC24EP512MC206 | PIC24EP64GP202 | PIC24EP64GP203 | PIC24EP64GP204 |
PIC24EP64GP206 | PIC24EP64MC202 | PIC24EP64MC203 | PIC24EP64MC204 | PIC24EP64MC206 |
PIC24F16KA102 | PIC24F16KA301 | PIC24F16KA302 | PIC24F16KA304 | PIC24F32KA301 |
PIC24F32KA302 | PIC24F32KA304 | PIC24FJ1024GA606 | PIC24FJ1024GA610 | PIC24FJ1024GB606 |
PIC24FJ1024GB610 | PIC24FJ128DA106 | PIC24FJ128DA110 | PIC24FJ128DA206 | PIC24FJ128DA210 |
PIC24FJ128GA006 | PIC24FJ128GA008 | PIC24FJ128GA010 | PIC24FJ128GA106 | PIC24FJ128GA108 |
PIC24FJ128GA110 | PIC24FJ128GA202 | PIC24FJ128GA204 | PIC24FJ128GA306 | PIC24FJ128GA308 |
PIC24FJ128GA310 | PIC24FJ128GA406 | PIC24FJ128GA410 | PIC24FJ128GA412 | PIC24FJ128GA606 |
PIC24FJ128GA610 | PIC24FJ128GA702 | PIC24FJ128GA704 | PIC24FJ128GA705 | PIC24FJ128GB106 |
PIC24FJ128GB108 | PIC24FJ128GB110 | PIC24FJ128GB202 | PIC24FJ128GB204 | PIC24FJ128GB206 |
PIC24FJ128GB210 | PIC24FJ128GB406 | PIC24FJ128GB410 | PIC24FJ128GB412 | PIC24FJ128GB606 |
PIC24FJ128GB610 | PIC24FJ16GA002 | PIC24FJ16GA004 | PIC24FJ192GA106 | PIC24FJ192GA108 |
PIC24FJ192GA110 | PIC24FJ192GB106 | PIC24FJ192GB108 | PIC24FJ192GB110 | PIC24FJ256DA106 |
PIC24FJ256DA110 | PIC24FJ256DA206 | PIC24FJ256DA210 | PIC24FJ256GA106 | PIC24FJ256GA108 |
PIC24FJ256GA110 | PIC24FJ256GA406 | PIC24FJ256GA410 | PIC24FJ256GA412 | PIC24FJ256GA606 |
PIC24FJ256GA610 | PIC24FJ256GA702 | PIC24FJ256GA704 | PIC24FJ256GA705 | PIC24FJ256GB106 |
PIC24FJ256GB108 | PIC24FJ256GB110 | PIC24FJ256GB206 | PIC24FJ256GB210 | PIC24FJ256GB406 |
PIC24FJ256GB410 | PIC24FJ256GB412 | PIC24FJ256GB606 | PIC24FJ256GB610 | PIC24FJ32GA002 |
PIC24FJ32GA004 | PIC24FJ32GA102 | PIC24FJ32GA104 | PIC24FJ32GB002 | PIC24FJ32GB004 |
PIC24FJ48GA002 | PIC24FJ48GA004 | PIC24FJ512GA606 | PIC24FJ512GA610 | PIC24FJ512GB606 |
PIC24FJ512GB610 | PIC24FJ64GA002 | PIC24FJ64GA004 | PIC24FJ64GA006 | PIC24FJ64GA008 |
PIC24FJ64GA010 | PIC24FJ64GA102 | PIC24FJ64GA104 | PIC24FJ64GA106 | PIC24FJ64GA108 |
PIC24FJ64GA110 | PIC24FJ64GA202 | PIC24FJ64GA204 | PIC24FJ64GA306 | PIC24FJ64GA308 |
PIC24FJ64GA310 | PIC24FJ64GA406 | PIC24FJ64GA410 | PIC24FJ64GA412 | PIC24FJ64GA702 |
PIC24FJ64GA704 | PIC24FJ64GA705 | PIC24FJ64GB002 | PIC24FJ64GB004 | PIC24FJ64GB106 |
PIC24FJ64GB108 | PIC24FJ64GB110 | PIC24FJ64GB202 | PIC24FJ64GB204 | PIC24FJ64GB406 |
PIC24FJ64GB410 | PIC24FJ64GB412 | PIC24FJ96GA006 | PIC24FJ96GA008 | PIC24FJ96GA010 |
PIC24FV16KA301 | PIC24FV16KA302 | PIC24FV16KA304 | PIC24FV32KA301 | PIC24FV32KA302 |
PIC24FV32KA304 | PIC24HJ128GP202 | PIC24HJ128GP204 | PIC24HJ128GP206 | PIC24HJ128GP206A |
PIC24HJ128GP210 | PIC24HJ128GP210A | PIC24HJ128GP306 | PIC24HJ128GP306A | PIC24HJ128GP310 |
PIC24HJ128GP310A | PIC24HJ128GP502 | PIC24HJ128GP504 | PIC24HJ128GP506 | PIC24HJ128GP506A |
PIC24HJ128GP510 | PIC24HJ128GP510A | PIC24HJ16GP304 | PIC24HJ256GP206 | PIC24HJ256GP206A |
PIC24HJ256GP210 | PIC24HJ256GP210A | PIC24HJ256GP610 | PIC24HJ256GP610A | PIC24HJ32GP202 |
PIC24HJ32GP204 | PIC24HJ32GP302 | PIC24HJ32GP304 | PIC24HJ64GP202 | PIC24HJ64GP204 |
PIC24HJ64GP206 | PIC24HJ64GP206A | PIC24HJ64GP210 | PIC24HJ64GP210A | PIC24HJ64GP502 |
PIC24HJ64GP504 | PIC24HJ64GP506 | PIC24HJ64GP506A | PIC24HJ64GP510 | PIC24HJ64GP510A |
Supported modules:
- ADC (Full module support)
- SPI (Full module support)
- UART (Full module support)
- I2C (Full module support)
- PWM (Full module support)
- GPIO (Full module support)
- OW (Full module support)
Files added:
mikroSDK v2.7.2 released
- released: 2023-03-09
Changes
New Features
- mikroSDK logger modified
- Added implementation for standard output to terminal
- mikroSDK modified to include custom boards
- Feature now allows users to add their own board definitions to mikroSDK seamlessly
- Modified file
- Graphic library improved
- Ellipse added to draw objects
Improvements
- ILI9341 setup build improved
- Setup will now be buildable only for devices which have adequate pin connections
Fixes
- Fixed HAL layer array initialization for 8-bit architectures
- Previously, MCUs with only one pin per module didn't function correctly
- Fixed for following modules:
- ADC
- I2C
- PWM
- SPI
- UART
- Fixed
uart_configure_default
APIstop_bits
previosuly set incorrectly
NEW HARDWARE
Support added for following hardware:
- ATmega328P
- Fully supported in mikroSDK
- Arduino Uno Rev3
- Fully supported in mikroSDK
- Added shield definitions for mikroBUS
- UNI Clicker added to AVR mikroSDK
Collaborators
We would like to thank the following people for contributing:
- @Nikola Hadzic
- Graphic Library
- Added and tested ellipse algorithm
- Graphic Library
mikroSDK v2.7.1 released
v2.7.1
- released: 2022-12-01
2.7.1
Changes
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
- For example, in order to include
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
- 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
- mikromedia for PIC18FK
- mikromedia for XMEGA
- mikromedia for STM32 M3
- mikromedia for STM32 M4
- mikromedia for TIVA C Series
- Mikromedia 3 for PIC32MZ Capacitive FPI with Frame
- Mikromedia 3 for PIC32MZ Capacitive FPI with Bezel
- Mikromedia 5 for PIC32MZ Capacitive FPI with Bezel
- EasyMX PRO v7a for STM32
- EasyPIC PRO v7 MCUcard with PIC18F8722
- EasyPIC PRO v7 MCUcard with PIC18F8520
All new hardware has adequate clock schemes set as well.
mikroSDK v2.7.0 released
v2.7.0
- released: 2022-12-01
2.7.0
Changes
AVR
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
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- CMakeLists.txt
- common_macros.h
- hal_ll_adc.c
- hal_ll_adc.c
- hal_ll_adc.h
- hal_ll_analog_in_map.h
- hal_ll_bit_control.h
- hal_ll_core.c
- hal_ll_core.h
- hal_ll_core_defines.h
- hal_ll_core_port.h
- hal_ll_gpio.c
- hal_ll_gpio.h
- hal_ll_gpio_constants.h
- hal_ll_gpio_port.c
- hal_ll_gpio_port.h
- hal_ll_i2c_master.c
- hal_ll_i2c_master.c
- hal_ll_i2c_master.c
- hal_ll_i2c_master.h
- hal_ll_i2c_pin_map.h
- hal_ll_one_wire.c
- hal_ll_one_wire.h
- hal_ll_pin_names.h
- hal_ll_spi_master.c
- hal_ll_spi_master.c
- hal_ll_spi_master.h
- hal_ll_spi_master_pin_map.h
- hal_ll_target.h
- hal_ll_target_names.h
- hal_ll_tim.c
- hal_ll_tim.c
- hal_ll_tim.c
- hal_ll_tim.h
- hal_ll_tim_pin_map.h
- hal_ll_uart.c
- hal_ll_uart.c
- hal_ll_uart.h
- hal_ll_uart_pin_map.h