Linux kernel and Driver Development
Development boards with all their peripherals offer possibilities to create systems which are expanded beyond the edges of the board. To make use of the system expansions we have to put various modules into work. To make them work we develop drivers which are a set of APIs and functions configuring a certain module. Using Nucleo boards and Discovery boards we developed many drivers using C programming language for GPIO peripherals which are a backbone to developing complex light switching systems or systems implementing mechanical switches and push buttons. Other communication protocols like UART/USART, SPI, I2C are very useful too. We implement USART as a most common serial communication technique. We install GPS receivers in our cars using USART communication so that our employers can easily find the clients’ houses when they need to connect him to our network. Offering TV solutions through android boxes are not interrupted when a firmware update is needed. In the design we have a SD Card and MMC card slot used for firmware updates. These slots make use of the SPI communication. With the ADC and DAC modules we are able to switch between analog and digital signals. Sensors mean nothing if we cannot interpret the signal into readable data. By attaching a light sensor we can see how well is the room lighted, and if there is no sunlight reaching the room we can give a command to the lamps to turn on.
Practical use cases
Other communication protocols like UART/USART, SPI, I2C are very useful too. We implement USART as a most common serial communication technique. We install GPS receivers in our cars using USART communication so that our employers can easily find the clients’ houses when they need to connect him to our network. Offering TV solutions through android boxes are not interrupted when a firmware update is needed. In the design we have a SD Card and MMC card slot used for firmware updates. These slots make use of the SPI communication. With the ADC and DAC modules we are able to switch between analog and digital signals. Sensors mean nothing if we cannot interpret the signal into readable data. By attaching a light sensor we can see how well is the room lighted, and if there is no sunlight reaching the room we can give a command to the lamps to turn on.