Programare Sisteme Încorporate
© Continental AG

Programare Sisteme Încorporate

Maşinile fac parte din viaţa noastră de zi cu zi. Sistemele încorporate fac parte din fiecare maşină. C şi microcontrolerele fac parte din toate sistemele incorporate.

Programare Embedded C

 

Limbajul C permite accesul direct la memorie, introducerea secvenţelor în limbaj de asamblare şi facilitează încapsularea datelor, fiind soluţia optimă pentru sistemele embedded

 

TEME

Bazele matematice ale programării embedded

Conversii între diferite baze de numeraţie;

Reprezentarea datelor în calculator;

Elemente de logică booleană;

Ecuaţia dreptei şi interpolarea liniară;

Operaţii de bază cu vectori şi matrice;

Reprezentarea numerelor în memoria calculatorului: Little Endian vs. Big Endian;

Opţional: Coduri pentru detecţia erorilor.

 

Introducere în limbajul C

Ce este un limbaj de programare ?

Ce este un compilator ?

Limbajul de programare C. Avantaje.

Limbajul C, sintaxa şi concepte.

Structura unui program în C.

 

Paşii de compilare a unui program

Fazele de compilare;

Compilarea proiectelor multifişier;

Fişiere header;

Procesul de linkeditare;

Creearea unui fişier executabil;

Depanarea unui program scris în limbajul C;

Evaluarea şi rularea unui program scris în limbajul C.

 

Tipuri de date şi variabile

Tipuri de date;

Conversii de tipuri de date;

Definirea tipurilor de date. Structuri;

Tipurile de date: Uniune vs. Struct;

Iniţializarea variabilelor;

Declaraţii externe;

Operanzi şi operatori. Operatori pe bit, expresii matematice.

 

Instrucţiuni de control al fluxului programului

Instrucţiuni de control;

Funcţii;

Rezolvarea unei probleme prin împărţirea în funcţii.

 

Tablouri, Pointeri & Şiruri de caractere

Tablouri;

Iniţializarea tablourilor;

Pointeri, Adrese şi spatiul de memorie;

Aritmetica pointerilor;

Şiruri de caractere şi şiruri constante de caractere.

 

Alocarea memoriei

Organizarea memoriei, clase de stocare a memoriei;

Transmiterea parametrilor prin adresa;

Transmiterea tablourilor ca parametru.

 

BIBLIOGRAFIE

[1] Bazele matematice ale calculatoarelor, Florian Mircea Boian, Liana Bozga, Presa Universitară Clujeana, 2000

[2]The C Programming Language (2nd edition), Brian W. Kernighan, Dennis M. Ritchie, Prentice Hall Software Series, 1988

[3]Limbajele C si C++ pentru începatori Vol. I (p.1 si 2) - Limbajul C, Liviu Negrescu, Editura Albastra, 2009

Microcontrolere

 

Microcontrolerele sunt prezente în sistemele electronice ale maşinilor, oferind o capacitate de interfaţare, procesare, stocare şi transfer de date ajustată cerinţelor fiecărui sistem.

 

TEME

Sisteme încorporate, generalităţi

Ce este un sistem încorporat?

Ce este un microcontroler?

Cum se dezvolta o aplicaţie software pentru sisteme încorporate?

Sisteme de operare în timp real, generalităţi: scheduler de task-uri, comunicarea între task-uri, întreruperi.

 

Arhitectura microcontrolerelor

Introducere;

Unitatea centrală de procesare (CPU), registre şi fanioane;

Interfaţa externă;

Circuitul de reset;

Semnal de tact: frecvenţa şi performanţa, prescalare, circuit cu calare pe faza (PLL);

Memoria microcontrolerelor (RAM, ROM). Aspecte referitoare la stiva;

Intrări / Ieşiri digitale. Nivelul fizic şi nivelul logic al semnalelor electrice;

Timere (incluzind Intrări de captură, Ieşiri de comparare, timerul de Watchdog);

Conversii analog - numerice şi numeric - analogice;

Semnalul PWM - impulsuri modulate în durată;

Întreruperi (tipuri, utilizarea întreruperilor, arbitrarea întreruperilor, mascarea întreruperilor);

Magistrale (de date şi de adrese). Spaţiul de adresare. Muliplexarea adreselor şi datelor;

Interfeţe de comunicare serială (CAN, I2C, SPI etc.);

Regimuri de consum de putere.

 

Instrumentarea sistemelor încorporate

Simulatoare şi Emulatoare;

Debuggere;

Utilizarea osciloscopului.

 

BIBLIOGRAFIE

[1] Embedded C, Michael J. Pont , Addison Wesley, 2002

[2] First Steps with Embedded Systems, Byte Craft Limited, 2002