STM32 HAL library realizes FreeRTOS+FreeModbus (slave)

Software preparation: FreeModbus source code: Source code address of FreeModbus master and slave Development tools: Keilv5 and CubeMX Hardware platform: STM32F407VET6 (with RS485 interface) 1. Generate Keil project with CubeMX: Skip other basic parts. Here are some points that need attention. Configure the system debugging pin and select the ...

Posted by Dvorak on Tue, 08 Feb 2022 00:53:16 +0100

#GCC programming # signal in Linux

SIGNAL Signals appeared in early Unix, and the early signal model is unreliable. BSD and System V extend the early signals respectively, but they are incompatible with each other. POSIX unifies the above two models, thus providing a reliable signal model. 1. Basic concept of signal It is used for communication between processes. It can inter ...

Posted by seriousdamage on Wed, 02 Feb 2022 08:23:48 +0100

QT embedded Linux arm porting

1, Environmental preparation Compilation environment: Ubuntu 20 . 04 (Download address: https://ubuntu.com/download/desktop) QT Source code( QT5.9.5 Download address: https://download.qt.io/archive/qt/5.9/5.9.5/) Cross compiler( arm-2014.05) 2, Compilation preparation 1.decompression qt Source code 2.Configure the path of the cross compiler ...

Posted by designxperts on Tue, 01 Feb 2022 20:59:03 +0100

Interrupt system and external interrupt application of CC2530

1. Related concepts of interruption The main interaction modes between the kernel and peripherals: polling and interrupt The way of polling seems fair, but the actual work efficiency is very low and can not respond to emergencies in time The interrupt system makes the kernel have the ability to deal with sudden conditions interrupt ...

Posted by james_creasy on Tue, 01 Feb 2022 19:13:38 +0100

Python light application: connect Internet of things platform and control device hardware

  1. Foreword Python is a very easy-to-use explanatory language. Its main features are as follows: Easy to learn and useScalable and portableRich third-party library It is precisely because of these characteristics that Python is widely used in some scenes with simple logic and complex functions. In recent years, with the rapid development ...

Posted by rheroux on Tue, 01 Feb 2022 14:55:26 +0100

Comprehensive experimental report of single chip microcomputer-06 | design of digital thermometer

1, Purpose and task of the experiment 1. Familiar with the characteristics and working principle of single bus and DS18B20 sensor. 2. Master the hardware structure and program design method of digital thermometer. 2, Introduction to experimental principle ZSC-1 experimental box is equipped with DS18B20 digital temperature sensor, LED nixie ...

Posted by nano on Mon, 31 Jan 2022 17:39:19 +0100

Implementation of two-dimensional FFT and IFFT in TMS320C6455

reference material: Rafael C. Gonzalez, Richard E. Woods, digital image processing (Third Edition) 4.11, Supporting book resourcesAlan V.Oppenheim, Ronald W.Schafer, discrete time signal processing (Third Edition) 9.5SPRUEB8B - TMS320C64x+ DSP Little-Endian DSP Library Programmer's ReferenceCCS Doc, 7.8 Image Analyzer Introduction to FFT ...

Posted by dhimok on Mon, 31 Jan 2022 10:10:21 +0100

freertos critical section protection

Fundamentals of interruption Nesting: Nested vector interrupt controller NVIC (nested vector interrupt controller) is tightly coupled with the kernel. It provides the following functions: nested interrupt support, vector interrupt support, dynamic priority adjustment support, greatly shortening interrupt delay and shielding interrupt. Al ...

Posted by Pyro4816 on Mon, 31 Jan 2022 05:48:45 +0100

Reentrant and non reentrant

Reentrant and non reentrant Reprint: https://www.cnblogs.com/reality-soul/p/6140932.html It is mainly used in multitasking environment. A reentrant function is simply a function that can be interrupted, that is, it can be interrupted at any time when the function is executed, transferred to OS scheduling to execute another piece of code, and th ...

Posted by Jedi Legend on Sun, 30 Jan 2022 23:45:23 +0100

Notes on 30 days homemade operating system -- Day7

1. Get key code There is little difference between mouse and keyboard in code implementation, so we can imitate the other as long as we complete one of them. Because after pressing a key before, nothing else can be done. Modify init inthandler21 function in C #define PORT_KEYDAT 0x0060 / / the device number is specified by IBM. For detail ...

Posted by mgoerz on Sun, 30 Jan 2022 19:53:06 +0100