GCT consulting
Provide training for new engineers, students in Embedded firmware development
14/12/2018
I.MX RT1052 Training:
NXP I.MX RT1052 is lastest Cortex-M7, clocked at 600Mhz.
Built-in ram 512k byte, code ex*****on from external SPI FLASH.
In this seminar you will get to know:
How to debug RT1052 using jlink.
How to setup IDE for debugging.
How to get started to use I.MX RT SDK.
Seminar include a rt1052 demo board.
20 seats, call for booking.
04/10/2018
Have you considered using a simulator for ARM microcontroller?
My opinion:
It is nice to have but never a necessity.
In embeded development, timing and peripheral testing is the most important thing to embedded developer.
One typically spend 90% time debugging peripheral and timing issue, instead of processor CORE.
Simulator only can test out the processor CORE.
22/09/2018
Semaphore vs Mutex in REAL TIME programming
Semaphore is used for counting for producer and consumer problem.
Semaphore is for signalling availability of a resources.
Mutex is used for maintaining exclusive access to a resources.
Mutexes have the task ownership property which allows only the task acquired to release it.
Mutex follow priority inheritance protocol to avoid prioritiy inversion problem.
20/09/2018
In arm Cortex-M
Assembly instruction CPSID i
means set primask to 1 (interrupt is disabled)
CPSID f set fault mask to 1 (fault exception is disabled)
10/09/2018
An RTOS that can usually meet a deadline is a Soft Real Time OS, but if it can meet a deadline deterministically it’s a Hard Real Time OS.
Hard real time OS has following requirements:
The OS must support fixed-priority pre-emptive scheduling for tasks (both threads and processes, as applicable)
The OS must provide priority inheritance or priority-ceiling emulation for synchronization primitives.
The OS kernel must be pre-emptible.
Interrupts must have a fixed upper bound on latency.
OS system services must execute at a priority determined by the client of the service.
All services on which it is dependent must inherit that priority, and priority inversion avoidance must be applied to all shared resources used by the service
Benchmark of common RTOS
07/09/2018
State machine a very technique to implement complex software behavior in firmware.
It use in several cases:
Non-blocking coding when RTOS is not available.
Protocol parsing.
Software bit bang of common serial protocol.
05/09/2018
C PROGRAMING common practice:
Always give a default value to each global variable, because C runtime will zero out each global variable that has no initializer, value of zero may not be desirable for every variable.
04/09/2018
Basic operation of Relay
If 12V is connected, current pass through the coil will act as magnet, the metal flap above the coil will be flipped down.
The lamp will be shut off
If 12V is disconnected, the black color spring will recover the the metal flap
03/09/2018
We know that effective data rate decrease with distance traveled by signal.
A rule of thumb for RS232 is as follows:
Maximum baud rate vs (Maximum distance)
2,400 (2.4k) 120m (400ft)
4,800 (4.8K) 60m (200ft)
9,600 (9.6K) 30m (100ft)
19,200 (19.2K) 15m (50ft)
38,400 (38.4) 7.5m (25ft)
57,600 (57.6K) 5.0m (16ft)
115,200 (115.2K) 2.5m (8ft)
Rules for ISR:
Never call any RTOS API
Never sleep or block inside ISR
Never do a forever loop
Never busy wait
01/09/2018
ARM Cortex M microcontroller seminar
Introduction
8-bit microcontrollers were very popular in the past, Cortex-M is the replacement for the 8-bit market as the low-end Cortex-M chips provided ease of programming at the same time also most cost effective solution.
Target audience
software engineer who is inspired to be firmware engineer.
Electronics student who needs use MCU in FYP
This course covers:
STM32F1 series Cortex-M3 MCU firmware development for beginner.
What you will learn:
How to read data sheet of MCU
Components required to make the MCU RUN
Bare metal setup of stm32 MCU using ARM GCC and stm32 SDK (no IDE).
Generation of code with STM32CubeMX
Understand linker script
Understand startup assembly routine
Understand interrupt vector
Understand NVIC, SYSTICK
Remote debugging with GDB server using jlink and segger debugger.
How to make start using MCU in custom design board
Click here to claim your Sponsored Listing.
Location
Category
Website
Address
KL
Cyberjaya
Opening Hours
| Monday | 09:00 - 17:00 |
| Saturday | 09:00 - 17:00 |
| Sunday | 09:00 - 17:00 |