Mikroszámítógépek a járműtechnikában
12. sz. melléklet
Switch konvertálása decimális formába// A program beolvassa SW5 8 bites állását kiírja a virtuális LCD kijelzőre | |
// decimális szám formában Dr K. Gyenes 2009/08/30 | |
#include "compiler_defs.h" | // Compiler dependent macros |
#include "C8051F020_defs.h" | // SFR declarations |
#include "TS_vInterface.h" | // ToolStick Virtual Tools Interface |
typedef unsigned char byte; | |
typedef unsigned int word; | |
// Function Prototypes | |
void PORT_Init(void); | |
void LCD_Init(void); |
|
void nr_out(byte x); |
|
void delay(byte k); |
|
// ==== Main Routine ==== | |
void main (void) |
|
{ | |
byte nr,nr_old; |
|
WDTCN = 0xDE; |
// Disable Watchdog Timer |
WDTCN = 0xAD; |
|
PORT_Init(); |
// Initialize port I/O pins |
SilabsInit020 (); |
// Call this init function in the |
P5 |= 0x10; |
// LED1 ON |
LCD_Init (); |
// Initialize LCD |
nr = ~P4; | // Get SW5 |
nr_old = nr; |
|
nr_out(nr); |
|
while (1) |
// Endless working loop |
{ | |
nr = ~P4; |
// Get SW5 |
if (nr^nr_old) |
// SW4 changed |
{ | |
nr_old = nr; | |
LCD_ControlWrite(0x01); | // Clear LCD |
nr_out(nr); |
|
} | |
} | |
} | |
// ==== End of Main==== | |
void PORT_Init(void) |
|
{ | |
P5 = 0x0F; |
// Clear port P5[7:4] (Switch off LEDs). |
P74OUT = 0x08; |
// P5[7:4] - LEDs D1-D4, setup as |
P3 |= 0x80; | // Set P3.7 to 1 |
P3MDOUT = 0x80; |
// P3.7 push-pull output |
XBR2 = 0x40; |
// Enable crossbar |
} | |
void LCD_Init(void) |
|
{ | |
LCD_ControlWrite(0x0C); | // Display ON, Cursor OFF |
LCD_ControlWrite(0x01); | // Clear LCD |
LCD_ControlWrite(0x06); | // Entry mode increment without shift |
} | |
void nr_out(byte x) |
|
{ | |
byte n10, n100; |
|
n100 = x / 100; |
// hundreds : 0,1,2 |
LCD_DataWrite(n100+48); | // Write out char |
x -= 100 * n100; |
|
n10 = x / 10; |
// tens |
LCD_DataWrite(n10+48); | |
n10 = x % 10; |
// ones |
LCD_DataWrite(n10+48); | |
} | |
void delay(byte k) |
|
{ | |
volatile word i,j; | |
for (j=0; j < k; j++); | |
for (i=0; i < 40000; i++); | |
} | |
// ==== End of Module ==== |
Tartalomjegyzék
- Mikroszámítógépek a járműtechnikában
- Impresszum
- Köszönetnyilvánítás
- 1. Ajánlás
- 2. Bevezetés
- 3. A számítástechnika fejlődése (történeti áttekintés)
- 4. Mikroszámítógép-generációk
- 5. Integrált áramkör előállítása
- 6. Aritmetikai műveletek a mikroszámítógépekben
- 7. Az analóg jelek átalakítása
- 8. Kommunikáció a mikroszámítógéppel
- 9. A mikroszámítógép hardverfelépítése
- 10. Az utasítások felépítése
- 11. Megszakítások
- 12. A programfejlesztő környezet
- 13. A mikroszámítógépek programozása
- 14. Az assembler program készítése
- 15. C program készítése
- 16. Az Arduino mikrogép
- 17. Mellékletek
- 1. sz. melléklet • Az ütemjel-generáló assembler program forráskódja
- 2. sz. melléklet • A program G1 gomb ismételt lenyomására ki-be kapcsolja a LED1 lámpát
- 3. sz. melléklet • A program 1 sec idővel villogtatja LED1 lámpát
- 4. sz. melléklet • Megszakítás kiváltása
- 5. sz. melléklet • A/D konverzió
- 6. sz. melléklet • Timer0 villogtatja a négy LED-lámpát
- 7. sz. melléklet • A program a processzor hőmérsékletét méri és a virtuális LCD-re írja
- 8. sz. melléklet • A programbillentyű kezelést valósít meg
- 9. sz. melléklet • Az UART programozása
- 10. sz. melléklet • D/A konverter virtuális oszcilloszkópra
- 11. sz. melléklet • PWM jel generálása
- 12. sz. melléklet • Switch konvertálása decimális formába
- 13. sz. melléklet • Az Arduino szintaktikája
- 14. sz. melléklet • Az Arduino beépített függvényei
- 1. sz. melléklet • Az ütemjel-generáló assembler program forráskódja
- 18. Példatár
- 19. Irodalom
Kiadó: Akadémiai Kiadó
Online megjelenés éve: 2021
ISBN: 978 963 454 711 2
A kötet elsősorban a BME Közlekedésmérnöki Kar mesterszakos hallgatói számára készült az azonos nevű tárgy segédleteként, de hasznos lehet a logisztika, elektrotechnika és számítástechnika témái iránt érdeklődő hallgatók számára is. A szerző azoknak a mechatronika, elektronika és számítástechnika iránt elkötelezett hallgatóknak ajánlja, akik TDK-munkát készítenek, de hasznos lehet a diplomamunkát írók és az államvizsgára felkészülők számára is.
Hivatkozás: https://mersz.hu/gyenes-mechatronika-es-mikroszamitogepek//
BibTeXEndNoteMendeleyZotero