AplTVY3

Z MediaWiki SPŠ a VOŠ Písek
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(wokwi)
 
(Není zobrazeno 132 mezilehlých verzí od 1 uživatele.)
Řádka 2: Řádka 2:
  
 
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
 
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''TP od roku 2016'''''
+
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''Tématický plán'''''
 
|-
 
|-
 
|
 
|
# - BOZP – řády odborných učeben
+
T0 - BOZP – řády odborných učeben
# – Popis vývoje mikropočítačové aplikace  
+
T1 – Popis vývoje mikropočítačové aplikace  
# – V/v brány, jejich vlastnosti a využití
+
T2 – V/v brány, jejich vlastnosti a využití
# – Tvorba programu pro výstupní moduly
+
T3 – Tvorba programu pro výstupní moduly
# – Vývoj mikroprocesorové aplikace – LED
+
T4 – Vývoj mikroprocesorové aplikace – LED
# – Časové zpoždění
+
T5 – Časové zpoždění
# – Vstupní moduly – tvorba programu pro vstupní moduly
+
T6 – Vstupní moduly – tvorba programu pro vstupní moduly
# – Vývoj mikroprocesorové aplikace – test vstupů
+
T7 – Vývoj mikroprocesorové aplikace – test vstupů
# – Programování aplikace
+
T8 – Programování aplikace
# – Naprogramování mikropočítače
+
T9 – Naprogramování mikropočítače
# – Vývoj mikroprocesorové aplikace – čidlo světla
+
T10 – Vývoj mikroprocesorové aplikace – čidlo světla
# – Vývoj mikroprocesorové aplikace – 7 segment
+
T11 – Vývoj mikroprocesorové aplikace – 7 segment
# – Vývoj mikroprocesorové aplikace – motory
+
T12 – Vývoj mikroprocesorové aplikace – motory
# – Vývoj mikroprocesorové aplikace – čidlo teploty
+
T13 – Vývoj mikroprocesorové aplikace – čidlo teploty
# - T17 - Opakování  
+
T14 - Opakování  
 +
 
 +
[[Soubor:PovinnaPrace_NavrhMIT_aplikace.png|150px|link=PP_-_Návrh_MIT_aplikace]]
 +
 
 +
[[Soubor:PovinnaPrace_VyvojMIT_aplikace.png|50px|link=Vývoj MIT aplikace]]
 
|}
 
|}
  
 
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
 
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''TP do roku 2016'''''
+
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''Otázky k opakování'''''
 
|-
 
|-
 
|
 
|
* T1 - BOZP – řády odborných učeben
+
# - Nakreslete vývojový diagram pro log. funkce NOT, AND, OR, XOR
** 1. pomoc [http://goo.gl/wABr1c Instruktážní video resuscitace ] z odkazem ze stránek [http://www.resuscitace.cz/%20%20 http://www.resuscitace.cz/] 
+
# - Nakreslete vývojový diagram pro log. funkci n=3 y = 1 pro i = {1,3,6,7 (4)}
** [[Soubor:Icon-youtube.gif]] [https://www.youtube.com/watch?v=LIOjlbZgyeg Resuscitace dospělých]
+
# - Nakreslete vývojový diagram pro log. funkci n=4 y = 1 pro i = {1,2,5,6,12,13 (4,11,15)}
**  Náplň činnosti v školním roce  (představa o jednotlivých odděleních )
+
# - Naprogramujte MCU pro blikání LED (blikačka)
** Povinné práce, klasifikace v předmětu
+
# - Naprogramujte MCU pro ovládání akustického měniče (bzučák)
** [[SOČ]] a jiné soutěže http://wiki.sps-pi.com/soc
+
# - Modifikujte program pro MCU ovládající křižovatku
* Elektronika
+
# - Vyberte vhodného dodavatel elektronických součástek (R,C,D,IO)
** T2 – Přehled součástek R, C, více info: [[ELT1]]
+
# - Analyzujte zapojení s MCU na UNi desce [[VYV50]]
** T3 - Měřicí přístroje univerzální  -  měření el. veličin U, R Ohmův zákon
+
# - Vyzkoušejte program pro ovládání 7segmentovky
** T4 – Polovodičové součástky - diody, tranzistory, Zenerova dioda
+
# - Vyzkoušejte program pro ovládání ss motoru a krokového motoru
** T5 – Stabilizátory  - integrované stabilizátory napětí
+
 
** T6 – Integrované obvody analogové – časovač 555
+
** T7 – Integrované obvody analogové – operační zesilovač
+
** T8 – Možnosti řízení výstupem PC dalších technických zařízení
+
* [[Vývoj MIT aplikace]]
+
** T9 – Popis robota [[NXT]], prezentace robota, ukázka aplikací
+
** T10 – Vývoj aplikace s robotem [[NXT]], zadání úloh – bludiště
+
** T11 – Realizace robotické sestavy
+
** T12 – Vývoj aplikace s robotem [[NXT]] zadání úloh – sekačka
+
** T13 – Aplikace s robotem pro plnění úkolů „rescue robot“
+
** T14 – Popis robota [[BOB]] prezentace robota Boe-Bot ukázka aplikací
+
** T15 – Vývoj aplikace s robotem [[BOB]] zadání úloh – bludiště
+
* T16 - Vývoj aplikace s robotickou rukou L601 prezentace
+
* T17 - Opakování
+
 
|}
 
|}
  
 +
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
 +
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''Domácí úkoly 2021-22:'''''
 +
|-
 +
|
  
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+
22.2
 +
dle návodu na http://wiki.sps-pi.cz/index.php/IBM-IoT#postup si nainstalujte v cloudu nebo lokálně  Node-RED.  Odevzdejte výsledné PrtScr dle vzoru v příloze (samozřejmě s vašimi údaji "d:org:device_type:device_ID";  např.: "d:3yaaz5:wemos:metostanice";
  
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 25em"
+
1.3. V [[Tinkercad]]u vyzkoušejte postupně zapojení s LED, Button, LDR, 18B20, TMP35 ......tak, aby zjištěná hodnota výstupní proměnné nebo její stav byla vyposílána na seriový port (monitor). Lze otestovat i s [[ESP8266]] v [[Wokwi]]. [https://youtu.be/L1A_yhO9Fo4 YT: Arduino Online Simulator Free Arduino and ESP32 by Wokwi ]  Odevzdejte všechny výsledné PrtScr.
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''AplTVY3'''''
+
     
 +
 
 +
|}
 +
 
 +
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
 +
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''Domácí úkoly 2020-21:'''''
 
|-
 
|-
| colspan="2" style="text-align: center;" | {{#TwitterFBLike:|small}}
 
|- style="vertical-align: top;"
 
||
 
|- style="vertical-align: top;"
 
 
|
 
|
Navazuje na výuku:
 
||
 
* [[AplTVY2|AplTVY 2.roč]]
 
* ex [http://old.sps-pi.cz/AplTVY2-ukoly B3 úkoly do výuky]
 
  
|- style="vertical-align: top;"
+
14.9.
|
+
Dohledat SP z předmětů HW a PRAI, přinést sešit
Výuka:
+
||
+
v učebně [[D07]] 2 hodiny týdně a směřuje  k úspěchům v [[SOČ]] a přípravou na [[Maturitní práce]]
+
  
|- style="vertical-align: top;"
+
od pondělí 12.10.2020 zítra (a příští týden skupina PSP) se koná dle rozvrhu prezenční výuka předmětu "praktická cvičení" v PC učebně VYT5.  ​Kdyby jste se (z nějakých důvodů) nemohli dostavit, budu rád, když se zúčastníte výuky alespoň distančně a budete mít na svých PC nainstalován program Deeds (testování seminární práce na návrh SLO) a IDE (vývojové prostředí) pro tvorbu programu v JSA (jazyk symbolických adres - assembler) procesoru 8051 (např. MCU 8051 IDE, EdSIM51, Ride..............) a pro skupinu PSP také IDE pro ATmega328 (je v Arduinu).  Výuka poběží tedy paralelně a do třídní knihy zapíši absenci jen těm, kteří nebudu ani prezenčně (určitě upřednostňuji) a ani distančně na vyučování.
| '''Vývoj''' || mikroprocesorových aplikací
+
|- style="vertical-align: top;"
+
| '''[[Robotika]]:''' || Vývoj aplikace s robotem (či realizace nového) [[NXT]] (NXT-G, BricxCC, Robot C) [[BOB]] s robotickou rukou L601 [[ROR]] robotem [[Ju-Ju]]
+
  
|- style="vertical-align: top;"
 
|'''Povinná práce:'''
 
||
 
[[Soubor:PovinnaPrace_VyvojMIT_aplikace.png|[[Vývoj MIT aplikace]]]]
 
  
'''Odevzdání  do:''' příslušného adresáře  [ftp://obelix.sps-pi.cz/n/janousek/Temp zde]
+
7.12.
 +
V odpovědi odevzdejte PrtScr ukázky nepřímého adresování v libovolném IDE, t.j úkolem je uskutečnit zápis dat do místa v RAM, kde nelze použít přímé adresování. V případě použití MCU8051IDE je úkolem uložit číslo na adresu 80h.
  
|- style="vertical-align: top;"
+
21.12.
 +
Nakreslit blok. schéma CPU s jádrem AVR včetně
 +
popisu funkce jednotlivých částí (obr. ve stylu jako v příloze). Pozor CPU ne MCU!
 +
pozn. DÚ jen pro ty, kteří nejsou spokojeni se známkou z dnešního testu.
  
| '''Úkoly:'''
+
18.1.
||
+
V odpovědi odevzdejte PrtScr ukázky práce s aritmetickou operací ADD. Příklady: -84 +60, -84+100, 84+100, -84-100 atd. Sledujte hlavně C a OV.
# Zopakovat látku z [[MIT]] [[ELT2]] [[INS2]]
+
# Při hodinách používat sešit z předmětu [[PRA]] (lze pokračovat)
+
# Vybrat si ročníkovou povinnou práci z témat [[Zajímavá zapojení s MCU|zde]]
+
# Po každém splněném úkolu z hodin provést zápis do deníku předmětu [[PRA|PRA,PRC]] a odevzdat do adresáře [ftp://obelix.sps-pi.cz/n/janousek/Temp/ zde], ke stažení [[Soubor:Icon-doc.gif]][[:Soubor:Trida_PoradoveCislo_Prijmeni_Jméno_Verze_NazevUkolu.doc|předloha]], a [[Soubor:Icon-doc.gif]] [[:Soubor:C4_07_Novak_Jan_v01_NXT.doc|vzor]]
+
  
|- style="vertical-align: top;"
+
22.2.
| '''Užitečné odkazy:'''
+
odevzdejte minimálně jedno řešení z úkolů:
 +
1) vyzkoušení log. funkcí v asm (ANL, ORL, XRL, CPL) - natočit videoscreen testování programu (MT, OBS, Bandicam)
 +
2) bin čítač s omezením do 500us (videscreen)
 +
3) desítkový čítač 0->9 (videscreen)
 +
4) desítkový čítač 00 -> 99 (videscreen)
 +
5) modifikované *.ino pro DHT11 + json
 +
6) přidané zařízení (PrtScr)
 +
7) nastavení CloudFoundry apps/services (PrtScr)
 +
8) nastavení Node-Red pro DHT11
 +
 
 +
15.3.Test-PRA3rPSPv01
 +
 
 +
31.3.Odevzdejte řešení ukazující využití zpoždění s dvěma (alt. 3mi) registry v IDE pro MCU ATmeg328
 +
 
 +
7.6.2021: program v asm pro blikání LED o f = 5Hz.
 +
 
 +
21.6.2021: program v asm, kde po zmáčknutí tlačítka připojené na pin 2. LED na pinu 13 3x zabliká a opět čeká na aktivaci od tlačítka
 +
 
 +
 
 +
SW: MS Teams, Deeds, MCU 8051 IDE, zdroj info: http://wiki.sps-pi.cz/AplTVY3​
 +
 
 +
Pozn.: [[Domácí úkoly|Jak odevzdávat domácí úkoly]]
 +
|}
 +
 
 +
 
 +
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
 +
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''Domácí úkoly 2019-20:'''''
 +
|-
 
|
 
|
*[ftp://obelix.sps-pi.cz/janousek/mikroLAB N:/janousek/mikroLAB]
 
  
|- style="vertical-align: top;"
+
1. Postupně v aplikaci [https://www.tinkercad.com/learn/project-gallery;collectionId=OMOZACHJ9IR8LRE TinkerCad] vyzkoušejte úkoly tak, aby jste zvládli (např. u praktické maturity) zapojit na [[KNP]] a naprogramovat mikroprocesorovou aplikaci s LED, RGB, tlačítkem, potenciometrem, PIR, LDR, čidle teploty, PING, servem, krokovým motorem atd. Každý úspěšný experiment zpracujte v postupně rozšiřující dokumentaci. Mikroprocesor lze použit: [[Arduino]], [[PICAXE]], [[8051]] apod.
|'''SW:'''
+
 
 +
[[Soubor:LearnArduino.png|link=https://1url.cz/kzWKG]]
 +
 
 +
2. Podívejte se na výsledky letošního školního a krajského kola SOČ [[SOČ 2020]]
 +
3. Do odpovědi na tento úkol zkopírujte link na video prezentaci SOČ práce, která vás nejvíce zaujala.
 +
Pozn.: Soutěží se v 18ti vědních oborech. Letos museli soutěžící natočit video o své práci a umístit na YT. (vyhledávací slova: Středoškolská odborná činnost a číslo oboru (10, 18 ....)) . Např. pro obor Elektrotechnika: Středoškolská odborná činnost 10 (https://bit.ly/2yaQ9m7) nebo pro obor Informatika: Středoškolská odborná činnost 18 (https://bit.ly/2Sj8wME)
 +
4. Nakreslete blokové schéma mikroprocesorové aplikace, kterou dokážete sestavit na KNP a naprogramovat (MCU, vstupní čidla, výstupní moduly). Zde v odpovědi odevzdejte PrtScr.
 +
 
 +
|}
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
 +
 
 +
== Cvičení ==
 +
 
 +
{{#widget:YouTube|id=8yAOTUY9t10|height=270|width=360|Popis|right}}
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
<Gallery>
 +
Soubor:Stabilizovany_zdroj_+5V.jpg|Stabilizovaný zdroj +5V
 +
Soubor:PICAXE-vyv-diagram_01.jpg|[[PICAXE]] - Blik
 +
Soubor:PICAXE-vyv-diagram.jpg|2x IN, 2 x OUT
 +
</gallery>
 +
 
 +
=== [https://www.tinkercad.com TinkerCAD] ===
 +
 
 +
[[Soubor:LearnArduino.png|right|link=https://1url.cz/kzWKG]]
 +
 
 +
<gallery>
 +
Soubor:tinkercad02.jpg|https://www.tinkercad.com
 +
Soubor:tinkercad03.jpg
 +
Soubor:tinkercad09.jpg
 +
Soubor:tinkercad10.jpg
 +
</gallery>
 +
 
 +
=== [[Atmel Studio]] ===
 +
 
 +
[[Soubor:Atmel-studio.png|IDE|100px]] [[Soubor:Atmel-studio_1.png|IDE|300px]]
 +
 
 +
[https://www.microchip.com/en-us/tools-resources/develop/microchip-studio#Downloads download]
 +
 
 +
=== [https://wokwi.com/ wokwi] ===
 +
 
 +
<gallery>
 +
Soubor:wokwi_AVR_01.jpg|[https://wokwi.com/projects/392695146694098945 7segment]
 +
</gallery>
 +
 
 +
=== Ovládání 7segmentovky s [[ATmega328]] na desce [[Arduino]] ===
 +
 
 +
<Gallery>
 +
Soubor:ARD21-sch.png|[[ARD21]][[:Soubor:ARD21-pcb.png|PCB]]
 +
Soubor:Multifunctional Expansion Board.png|[[:Soubor:MFEB-schematic.png|schéma]] + [[:Soubor:MFEB-example.pdf|příklady]]
 +
</Gallery>
 +
 
 +
=== Popis zapojení a funkce uni desky [[VYV50]] ===
 +
<Gallery>
 +
soubor:VYV-deska-AVR-ATmega16-07.jpg|UNI deska [[VYV50]]
 +
Soubor:proficad-RD2KIT-01.png|kreslení blokových schémat v [[ProfiCAD]]
 +
</Gallery>
 +
 
 +
[[Soubor:Arduino-ATmega328Pinout.png|400px|ATmega328 Pinout]]
 +
[[Soubor:ATmega328Pinout.png|400px|ATmega328 Pinout]]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
==== Assembly via Arduino ====
 +
 
 +
[[Soubor:Anas_Kuzechie_Projects.png|300px|link=https://akuzechie.blogspot.com/|Anas Kuzechie Projects]]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
====How to Flash or Program Arduino from Atmel Studio?====
 +
 
 +
https://www.arnabkumardas.com/platforms/atmel/how-to-flash-or-program-arduino-from-atmel-studio/
 +
 
 +
[[Soubor:HowtoFlash.png|link=https://www.arnabkumardas.com/platforms/atmel/how-to-flash-or-program-arduino-from-atmel-studio/]]
 +
 
 +
 
 +
[[Soubor:SetAtmmelStudio.png|400px|nastavení Atmmel Studia - Send to Arduino]]
 +
 
 +
text k vyplnění:
 +
Send to Arduino UNO
 +
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe
 +
-C "C:\Program Files (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf" -p atmega328p -c arduino -P COM3 -b 115200 -U flash:w:"$(ProjectDir)Debug\$(TargetName).hex":i
 +
 
 +
[[Soubor:SetAtmmelStudio-IDE.png|400px|export z Arduino IDE]]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
=== [http://rjhcoding.com/ rjhcoding] ===
 +
 
 +
[[Soubor:rjhcoding.jpg|link=http://rjhcoding.com/]]
 +
 
 +
* [http://rjhcoding.com/avr-asm-light-an-led.php Example Program #1: LED]
 +
* [http://rjhcoding.com/avr-asm-registers.php Working With Registers R0-R31]
 +
* [http://rjhcoding.com/avr-asm-led-blink.php Example Program #3: Blink]
 +
* [http://rjhcoding.com/avr-asm-sreg.php The Status Register]
 +
* [http://rjhcoding.com/avr-asm-program-flow.php Conditional Branching]
 +
* [http://rjhcoding.com/avr-asm-delay-subroutine.php Example Program #4: Delay Subroutine]
 +
* [http://rjhcoding.com/avr-asm-io.php Working With I/O Registers]
 +
* [http://rjhcoding.com/avr-asm-sram.php Working With Extended I/O And SRAM]
 +
* [http://rjhcoding.com/avr-asm-pm.php Loading Data from Program Memory]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
[[Soubor:AVRdelay.png|500px|link=http://darcy.rsgc.on.ca/ACES/TEI4M/AVRdelay.html]]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
=== Blink in C ===
 +
https://wokwi.com/projects/354469641572834305
 +
[[Soubor:atmega328p-blink_C.png|200px|right]]
 +
 
 +
<source lang="c">
 +
 
 +
//#include <avr/io.h>  //iom328p.h
 +
#include <util/delay.h>
 +
   
 +
int main(){   
 +
        _SFR_IO8(0x0A) = 0xFF; // #define DDRD _SFR_IO8(0x0A)
 +
                              // DDRB = 0xFF;
 +
        _SFR_IO8(0x0B) = 0x00; // PORTD= 0x00;
 +
 
 +
while(1){ 
 +
          PORTD |= (1 << PD0);
 +
          PORTD |= (1 << PD2) | (1 << PD1);
 +
          PORTD ^= (1 << PD3);
 +
          PORTD |= (1 << PD5) & ~(1 << PD4);
 +
          _delay_ms(1000);
 +
         
 +
          PORTD &= ~(1 << PD0);
 +
          PORTD &= ~(1 << PD2) & ~(1 << PD1); 
 +
         
 +
          PORTD ^= (1 << PD5) ^ (1 << PD4);
 +
          _delay_ms(1000);
 +
  } 
 +
    return 0;
 +
}
 +
</source>
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
=== Blink with Timer ===
 +
https://wokwi.com/projects/354046396997507073    https://wokwi.com/projects/354556802672660481
 +
 
 +
[[Soubor:atmega328p-timers1.gif|200px|right]]
 +
 
 +
{|
 +
|-
 
|
 
|
*[http://www.screentoaster.com/record  screentoaster]  videoprezentace rychle a jednoduše        [http://technet.idnes.cz/navod-jako-videoprezentace-rychle-a-jednoduse-nauci-vas-to-screentoaster-1ln-/sw_internet.asp?c=A090817_201240_sw_internet_dvr  návod]
+
<source lang="asm">
*[http://www.wpanorama.com/wpanorama.php?r=1253989723  WPanorama]  tvorba panoramatických snímků  [http://technet.idnes.cz/vytvorte-fotogalerie-s-moznosti-vystavit-je-na-web-ci-denicek-pro-diabetika-173-/software.asp?c=A090819_183038_software_dvr  popis]
+
;https://www.hackster.io/yeshvanth_muniraj/arduino-blink-example-in-assembly-using-timer-counter1-e2a327
*[http://sourceforge.net/projects/pdfcreator/ PDFCreator]    [http://lorenc.info/navod-na-instalaci-PDFCreatoru.htm návod na  istalaci]      [http://lorenc.info/spojeni-pdf-dokumentu-v-pdfcreatoru.htm spojení více  doc a pdf]
+
;https://wokwi.com/projects/354046396997507073
 +
;funkční ;sbi PORTB,5 zde nefunguje
 +
#define __SFR_OFFSET 0x20
 +
#include "avr/io.h"
 +
.global main
  
 +
main: rcall setup    // zavolání funkce setup
  
 +
loop:
 +
    COM R17          ; Complement R17 register
 +
    STS PORTD, R17    ; Toggle the LED output
 +
    rcall delay
 +
    rjmp loop
 +
 +
delay:
 +
  LDI R16, 0xC2
 +
  STS TCNT1H, R16  ; Writing 0xC2 into TCNT1H (8-bit)
 +
  LDI R16, 0xF7
 +
  STS TCNT1L, R16  ; Writing 0xF7 into TCNT1H (8-bit)
 +
  LDI R16, 0x05
 +
  STS TCCR1B, R16  ; Writing 0x05 into TCCR1B
 +
 +
L:LDS R0, TIFR1    ; Load the value of TIFR1 into R0
 +
  SBRS R0, 0        ; Skip the next statement if overflow has occured.
 +
  RJMP L            ; Loop until overflow occurs.
 +
 
 +
  LDI R16, 0x00
 +
  STS TCCR1B, R16  ; Stop the Timer/Counter1
 +
  LDI R16, 0x01
 +
  STS TIFR1, R16    ; Clear the overflow flag by writing 1 to it
 +
  ret
 +
 +
setup: 
 +
      LDI R16, 0xFF    ; Setting bits of PORTD as output
 +
      STS DDRD, R16
 +
      LDI R17, 0x55
 +
      STS PORTD, R17    ; Writing 0 to PORTD
 +
      ret
 +
</source>
 +
|
 +
<source lang="c">
 +
//https://wokwi.com/projects/354556802672660481
 +
 +
#include <avr/io.h>  //iom328p.h
 +
#include <util/delay.h>
 +
   
 +
int main(){   
 +
        DDRD = 0xFF; // #define DDRD _SFR_IO8(0x0A)
 +
        PORTD= 0x55;
 +
 +
while(1){ 
 +
          PORTB ^= (1 << PD5);
 +
          PORTD = ~PORTD;
 +
          delay();
 +
        } 
 +
    return 0;
 +
}
 +
 +
int delay(){
 +
  TCNT1H =  0xC2;
 +
  TCNT1L =  0xF7;
 +
  TCCR1B =  0x05; //prescaler 1024
 +
  while (!(TIFR1 & (1<< TOV1)));
 +
  TCCR1B =  0x00;
 +
  TIFR1 =  0x01; 
 +
}
 +
 
 +
</source>
 +
|-
 
|}
 
|}
  
== Témata na cvičení od roku 2016 ==
+
=== [https://www.arxterra.com/9-atmega328p-timers/ Interrupts and 16-bit Timer/Counter 1: ATmega328P Timing Subsystems] ===
 +
 
 +
https://www.arxterra.com/9-atmega328p-timers/
 +
 
 +
[[Soubor:atmega328p-timers3.png|600px|link:https://www.arxterra.com/9-atmega328p-timers/]]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
===[https://www.youtube.com/watch?v=B-BsqpgtQWI IO interface of AVR]===
 +
 
 +
[[Soubor:IO_interface.jpg|500px|link=https://www.youtube.com/watch?v=B-BsqpgtQWI]]
 +
 
 +
{{#widget:YouTube|id=B-BsqpgtQWI|height=270|width=360|IO interface of AVR|right}}
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
=== AVR Interrupts ===
 +
 
 +
{{#widget:YouTube|id=zViw6mMzEoA|height=270|width=360|AVR Interrupts|right}}
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
=== www ===
 +
 
 +
* [https://www.spshronov.cz/eusoubory2/dum_atmega32.pdf SPS Hronov - Atmega32]
 +
* [https://www.hackster.io/yeshvanth_muniraj/arduino-blink-example-in-assembly-using-timer-counter1-e2a327 Arduino Blink Example in Assembly using Timer/Counter1]
 +
* [https://www.hackster.io/yeshvanth_muniraj/accessing-i-o-in-atmega328p-arduino-using-assembly-and-c-10e063#toc-sts---store-direct-to-data-space-5 Accessing I/O in ATmega328P (Arduino) using Assembly and C]
 +
* [http://www.elektromys.eu/clanky/avr_timer1/clanek.html Čítač / časovač 1 nejen na Attiny]
 +
* [http://www.8bit-era.cz/arduino-timer-interrupts-calculator.html Arduino Timer Interrupts Calculator]
 +
* [https://www.arduinoslovakia.eu/application/timer-calculator AVR Timer Interrupts Calculator (slovakia)]
 +
* [http://www.avr-asm-tutorial.net/avr_en/micro_beginner/4_Led_Timer/4_Led_Timer.html Lecture 4: Blinking a LED with a timer]
 +
* [https://svetelektro.com/clanky/pokrocile-programovanie-mikropocitacov-v-jazyku-c-diel-c1-763/ Pokročilé programovanie mikropočítačov v jazyku C. Diel č.1]
 +
 
 +
---------------------------------------------------------------------------------------------------------------
 +
 
 +
 
 +
 
 +
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
 +
 
 +
'''== Archiv =='''
 +
 
 +
=== [[MCU]]: [[8051]]: ===
 +
 
 +
<gallery>
 +
Soubor:MCU-8051-IDE-screen.png|IDE: [[MCU 8051 IDE]]  pro vývoj aplikací v asm/C
 +
Soubor:juego de instrucciones MCS-51.jpg|[http://www.alciro.org/alciro/microcontroladores-8051_24/guia-referencia-microcontroladores-8051_232.htm Instrucciones]
 +
Soubor:EDSIM-screen.png|[https://www.edsim51.com/ EdSim51]
 +
Soubor:ATM13.png|HW: [[ATM13|UNI board s 89S52]]
 +
Soubor:D10_HW_presto.jpg|Programátor: [[PRESTO]] SW: [[UP]]
 +
Soubor:D10_HW_USBasp.jpg|Programátor: [http://goo.gl/Ioozyz USBasp] SW: [[ProgISP]]
 +
</gallery>
 +
 
 +
=== Modifikace programu s 8051 ===
 
<Gallery>
 
<Gallery>
Soubor:PIC_counter.jpg|[[PIC]]85 2 digit Up/Down Counter
+
Soubor:Traffic_Light_auc.png|Křižovatka AUC
Soubor:D10_HW_picaxe_01.jpg|[[PICAXE]] - vývojová deska
+
Soubor:MCU-8051-IDE-screen.png|IDE: [[MCU 8051 IDE]] pro vývoj aplikací v asm/C
Soubor:PICAXE-vyv-diagram_02.jpg|[[PICAXE]] - vývojový diagram
+
Soubor:VYV50_LED_Traffic_Light2.jpg
Soubor:ProfiCAD_PICAXE.png|[[PICAXE]] - blokové schéma
+
</Gallery>
Soubor:Umik-blok-schema.png|[[Umík]] - blokové schéma
+
 
Soubor:Umik-popis.png|[[Umík]] - popis
+
<source lang="asm">
 +
loop:  
 +
mov P0,#01010011            ;modifikovat dle LED
 +
mov P2,#11001100            ;modifikovat dle LED
 +
acall delay
 +
.
 +
.
 +
.
 +
sjmp loop
 +
 
 +
delay: mov R0,#255d            ;podprogram zpoždění
 +
skok2: mov R1,#5d
 +
skok1: mov R2,#5d
 +
skok: djnz R2,skok
 +
djnz R1,skok1
 +
djnz R0,skok2
 +
ret                      ;návrat z podprogramu
 +
 
 +
end
 +
</source>
 +
 
 +
=== Objednávka součástek ===
 +
[[soubor:prehled_soucastek.png|400px]]
 +
* Prodejci součástek:
 +
** [http://www.gme.cz/ GME]  Doporučujeme tuto společnost s prodejnami v Praze, Brně, Ostravě, Plzni a zásilkovým prodejem.
 +
** [http://www.tme.cz/TME TME] zásilkový prodej.
 +
** [http://www.soselectronic.cz/ SOS Electronic] zásilkový prodej.
 +
** [http://www.ges.cz/ GES Electronic] Společnost s prodejnami a zásilkovým prodejem.
 +
** [http://www.farnell.com Farnell] [http://www.rothsware.cz/web/farnell/ zastoupení]
  
 
== Témata na cvičení do roku 2016 ==
 
== Témata na cvičení do roku 2016 ==
Řádka 140: Řádka 447:
 
Soubor:Registrace_OP01.jpg|[[Registrace na odborné praxe]]
 
Soubor:Registrace_OP01.jpg|[[Registrace na odborné praxe]]
 
Soubor:Logo.JPG|[[LOGO]]
 
Soubor:Logo.JPG|[[LOGO]]
Soubor:AVR-PRG-01.jpg|[[AVR]] s [[Vývojová deska ATMEL včetně AVR ATmega16 v2|Vývojovou deskou]]
 
Soubor:PIC_counter.jpg|[[PIC]]85 2 digit Up/Down Counter
 
 
Soubor:boebot.jpg|[[BOB]]
 
Soubor:boebot.jpg|[[BOB]]
 
Soubor:MOB03_05.png|[[Mobilní robot]]
 
Soubor:MOB03_05.png|[[Mobilní robot]]
Řádka 151: Řádka 456:
 
</Gallery>
 
</Gallery>
  
<gallery>
 
Soubor:D10_HW_picaxe_01.jpg|[[PICAXE]] - vývojová deska
 
Soubor:PICAXE-vyv-diagram_02.jpg|[[PICAXE]] - vývojový diagram
 
Soubor:ProfiCAD_PICAXE.png|[[PICAXE]] - blokové schéma
 
Soubor:Umik-blok-schema.png|[[Umík]] - blokové schéma
 
Soubor:Umik-popis.png|[[Umík]] - popis
 
  
 +
---------------------------------------------------------------------------------------------------------------
  
</gallery>
+
=== Otázky k opakování do roku 2016 ===
 
+
== Literatura ==
+
 
+
<gallery>
+
Soubor:Arduino-itnetwork.png|[http://www.itnetwork.cz/mikrokontroler-arduino-tutorialy|Arduino tutorial]
+
Soubor:Robot-arduino_RCB_car.png|[http://www.josefnav.cz/RCB.html|Control Boards by josefnav.cz]
+
</gallery>
+
 
+
== White Board ==
+
 
+
<gallery>
+
Soubor:AplTVY3_Board_01.jpg
+
Soubor:AplTVY3_Board_02.jpg
+
Soubor:AplTVY3_Board_03.jpg
+
Soubor:AplTVY3_Board_04.jpg
+
Soubor:AplTVY3_Board_05.jpg
+
Soubor:AplTVY3_Board_06.jpg
+
Soubor:AplTVY3_Board_07.jpg
+
Soubor:AplTVY3_Board_09.jpg
+
 
+
</gallery>
+
 
+
== Otázky k opakování od roku 2016==
+
 
+
  
 +
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 35em"
 +
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''TP do roku 2016'''''
 +
|-
 +
|
 +
* T1 - BOZP – řády odborných učeben
 +
** 1. pomoc [http://goo.gl/wABr1c Instruktážní video resuscitace ] z odkazem ze stránek [http://www.resuscitace.cz/%20%20 http://www.resuscitace.cz/] 
 +
** [[Soubor:Icon-youtube.gif]] [https://www.youtube.com/watch?v=LIOjlbZgyeg Resuscitace dospělých]
 +
**  Náplň činnosti v školním roce  (představa o jednotlivých odděleních )
 +
** Povinné práce, klasifikace v předmětu
 +
** [[SOČ]] a jiné soutěže http://wiki.sps-pi.com/soc
 +
* Elektronika
 +
** T2 – Přehled součástek R, C, více info: [[ELT1]]
 +
** T3 - Měřicí přístroje univerzální  -  měření el. veličin U, R Ohmův zákon
 +
** T4 – Polovodičové součástky - diody, tranzistory, Zenerova dioda
 +
** T5 – Stabilizátory  -  integrované stabilizátory napětí
 +
** T6 – Integrované obvody analogové – časovač 555
 +
** T7 – Integrované obvody analogové – operační zesilovač
 +
** T8 – Možnosti řízení výstupem PC dalších technických zařízení
 +
* [[Vývoj MIT aplikace]]
 +
** T9 – Popis robota [[NXT]], prezentace robota, ukázka aplikací
 +
** T10 – Vývoj aplikace s robotem [[NXT]], zadání úloh – bludiště
 +
** T11 – Realizace robotické sestavy
 +
** T12 – Vývoj aplikace s robotem [[NXT]] zadání úloh – sekačka
 +
** T13 – Aplikace s robotem pro plnění úkolů „rescue robot“
 +
** T14 – Popis robota [[BOB]] prezentace robota Boe-Bot ukázka aplikací
 +
** T15 – Vývoj aplikace s robotem [[BOB]] zadání úloh – bludiště
 +
* T16 - Vývoj aplikace s robotickou rukou L601 prezentace
 +
* T17 - Opakování
 +
|}
  
 
== Otázky k opakování do roku 2016==
 
== Otázky k opakování do roku 2016==
 
 
===HW===
 
===HW===
 
# Navrhněte napájecí zdroj pro napájení mikroprocesorové aplikace
 
# Navrhněte napájecí zdroj pro napájení mikroprocesorové aplikace
Řádka 202: Řádka 506:
 
# Popište postup vývoje mikroprocesorové aplikace
 
# Popište postup vývoje mikroprocesorové aplikace
  
== Inspirace ==
+
== White Board do roku 2016 ==
  
[http://projects.adamh.cz/ projects.adamh.cz]
+
<gallery>
 +
Soubor:AplTVY3_Board_01.jpg
 +
Soubor:AplTVY3_Board_02.jpg
 +
Soubor:AplTVY3_Board_03.jpg
 +
Soubor:AplTVY3_Board_04.jpg
 +
Soubor:AplTVY3_Board_05.jpg
 +
Soubor:AplTVY3_Board_06.jpg
 +
Soubor:AplTVY3_Board_07.jpg
 +
Soubor:AplTVY3_Board_09.jpg
 +
</gallery>
  
 +
== Inspirace ==
  
 
+
[http://projects.adamh.cz/ projects.adamh.cz]
== Archiv ==
+
 
+
[[APLTVY3 - archiv]]
+

Aktuální verze z 18. 3. 2024, 13:42

AplTVY
Tématický plán
T0 - BOZP – řády odborných učeben
T1 – Popis vývoje mikropočítačové aplikace 
T2 – V/v brány, jejich vlastnosti a využití
T3 – Tvorba programu pro výstupní moduly
T4 – Vývoj mikroprocesorové aplikace – LED
T5 – Časové zpoždění
T6 – Vstupní moduly – tvorba programu pro vstupní moduly
T7 – Vývoj mikroprocesorové aplikace – test vstupů
T8 – Programování aplikace
T9 – Naprogramování mikropočítače
T10 – Vývoj mikroprocesorové aplikace – čidlo světla
T11 – Vývoj mikroprocesorové aplikace – 7 segment
T12 – Vývoj mikroprocesorové aplikace – motory
T13 – Vývoj mikroprocesorové aplikace – čidlo teploty
T14 - Opakování 

PovinnaPrace NavrhMIT aplikace.png

PovinnaPrace VyvojMIT aplikace.png

Otázky k opakování
  1. - Nakreslete vývojový diagram pro log. funkce NOT, AND, OR, XOR
  2. - Nakreslete vývojový diagram pro log. funkci n=3 y = 1 pro i = {1,3,6,7 (4)}
  3. - Nakreslete vývojový diagram pro log. funkci n=4 y = 1 pro i = {1,2,5,6,12,13 (4,11,15)}
  4. - Naprogramujte MCU pro blikání LED (blikačka)
  5. - Naprogramujte MCU pro ovládání akustického měniče (bzučák)
  6. - Modifikujte program pro MCU ovládající křižovatku
  7. - Vyberte vhodného dodavatel elektronických součástek (R,C,D,IO)
  8. - Analyzujte zapojení s MCU na UNi desce VYV50
  9. - Vyzkoušejte program pro ovládání 7segmentovky
  10. - Vyzkoušejte program pro ovládání ss motoru a krokového motoru
Domácí úkoly 2021-22:

22.2 dle návodu na http://wiki.sps-pi.cz/index.php/IBM-IoT#postup si nainstalujte v cloudu nebo lokálně Node-RED. Odevzdejte výsledné PrtScr dle vzoru v příloze (samozřejmě s vašimi údaji "d:org:device_type:device_ID"; např.: "d:3yaaz5:wemos:metostanice";

1.3. V Tinkercadu vyzkoušejte postupně zapojení s LED, Button, LDR, 18B20, TMP35 ......tak, aby zjištěná hodnota výstupní proměnné nebo její stav byla vyposílána na seriový port (monitor). Lze otestovat i s ESP8266 v Wokwi. YT: Arduino Online Simulator Free Arduino and ESP32 by Wokwi Odevzdejte všechny výsledné PrtScr.


Domácí úkoly 2020-21:

14.9. Dohledat SP z předmětů HW a PRAI, přinést sešit

od pondělí 12.10.2020 zítra (a příští týden skupina PSP) se koná dle rozvrhu prezenční výuka předmětu "praktická cvičení" v PC učebně VYT5. ​Kdyby jste se (z nějakých důvodů) nemohli dostavit, budu rád, když se zúčastníte výuky alespoň distančně a budete mít na svých PC nainstalován program Deeds (testování seminární práce na návrh SLO) a IDE (vývojové prostředí) pro tvorbu programu v JSA (jazyk symbolických adres - assembler) procesoru 8051 (např. MCU 8051 IDE, EdSIM51, Ride..............) a pro skupinu PSP také IDE pro ATmega328 (je v Arduinu). Výuka poběží tedy paralelně a do třídní knihy zapíši absenci jen těm, kteří nebudu ani prezenčně (určitě upřednostňuji) a ani distančně na vyučování.


7.12. V odpovědi odevzdejte PrtScr ukázky nepřímého adresování v libovolném IDE, t.j úkolem je uskutečnit zápis dat do místa v RAM, kde nelze použít přímé adresování. V případě použití MCU8051IDE je úkolem uložit číslo na adresu 80h.

21.12. Nakreslit blok. schéma CPU s jádrem AVR včetně popisu funkce jednotlivých částí (obr. ve stylu jako v příloze). Pozor CPU ne MCU! pozn. DÚ jen pro ty, kteří nejsou spokojeni se známkou z dnešního testu.

18.1. V odpovědi odevzdejte PrtScr ukázky práce s aritmetickou operací ADD. Příklady: -84 +60, -84+100, 84+100, -84-100 atd. Sledujte hlavně C a OV.

22.2. odevzdejte minimálně jedno řešení z úkolů: 1) vyzkoušení log. funkcí v asm (ANL, ORL, XRL, CPL) - natočit videoscreen testování programu (MT, OBS, Bandicam) 2) bin čítač s omezením do 500us (videscreen) 3) desítkový čítač 0->9 (videscreen) 4) desítkový čítač 00 -> 99 (videscreen) 5) modifikované *.ino pro DHT11 + json 6) přidané zařízení (PrtScr) 7) nastavení CloudFoundry apps/services (PrtScr) 8) nastavení Node-Red pro DHT11

15.3.Test-PRA3rPSPv01

31.3.Odevzdejte řešení ukazující využití zpoždění s dvěma (alt. 3mi) registry v IDE pro MCU ATmeg328

7.6.2021: program v asm pro blikání LED o f = 5Hz.

21.6.2021: program v asm, kde po zmáčknutí tlačítka připojené na pin 2. LED na pinu 13 3x zabliká a opět čeká na aktivaci od tlačítka


SW: MS Teams, Deeds, MCU 8051 IDE, zdroj info: http://wiki.sps-pi.cz/AplTVY3​

Pozn.: Jak odevzdávat domácí úkoly


Domácí úkoly 2019-20:

1. Postupně v aplikaci TinkerCad vyzkoušejte úkoly tak, aby jste zvládli (např. u praktické maturity) zapojit na KNP a naprogramovat mikroprocesorovou aplikaci s LED, RGB, tlačítkem, potenciometrem, PIR, LDR, čidle teploty, PING, servem, krokovým motorem atd. Každý úspěšný experiment zpracujte v postupně rozšiřující dokumentaci. Mikroprocesor lze použit: Arduino, PICAXE, 8051 apod.

LearnArduino.png

2. Podívejte se na výsledky letošního školního a krajského kola SOČ SOČ 2020 3. Do odpovědi na tento úkol zkopírujte link na video prezentaci SOČ práce, která vás nejvíce zaujala. Pozn.: Soutěží se v 18ti vědních oborech. Letos museli soutěžící natočit video o své práci a umístit na YT. (vyhledávací slova: Středoškolská odborná činnost a číslo oboru (10, 18 ....)) . Např. pro obor Elektrotechnika: Středoškolská odborná činnost 10 (https://bit.ly/2yaQ9m7) nebo pro obor Informatika: Středoškolská odborná činnost 18 (https://bit.ly/2Sj8wME) 4. Nakreslete blokové schéma mikroprocesorové aplikace, kterou dokážete sestavit na KNP a naprogramovat (MCU, vstupní čidla, výstupní moduly). Zde v odpovědi odevzdejte PrtScr.




















Obsah

Cvičení


TinkerCAD

LearnArduino.png

Atmel Studio

IDE IDE

download

wokwi

Ovládání 7segmentovky s ATmega328 na desce Arduino

Popis zapojení a funkce uni desky VYV50

ATmega328 Pinout ATmega328 Pinout


Assembly via Arduino

Anas Kuzechie Projects


How to Flash or Program Arduino from Atmel Studio?

https://www.arnabkumardas.com/platforms/atmel/how-to-flash-or-program-arduino-from-atmel-studio/

HowtoFlash.png


nastavení Atmmel Studia - Send to Arduino

text k vyplnění: 
Send to Arduino UNO
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe 
-C "C:\Program Files (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf" -p atmega328p -c arduino -P COM3 -b 115200 -U flash:w:"$(ProjectDir)Debug\$(TargetName).hex":i

export z Arduino IDE


rjhcoding

Rjhcoding.jpg


AVRdelay.png


Blink in C

https://wokwi.com/projects/354469641572834305

Atmega328p-blink C.png
//#include <avr/io.h>  //iom328p.h 
#include <util/delay.h> 
 
int main(){    
        _SFR_IO8(0x0A) = 0xFF; // #define DDRD _SFR_IO8(0x0A) 
                               // DDRB = 0xFF;
        _SFR_IO8(0x0B) = 0x00; // PORTD= 0x00;
 
while(1){  
          PORTD |= (1 << PD0);
          PORTD |= (1 << PD2) | (1 << PD1); 
          PORTD ^= (1 << PD3);
          PORTD |= (1 << PD5) & ~(1 << PD4); 
          _delay_ms(1000);
 
          PORTD &= ~(1 << PD0);
          PORTD &= ~(1 << PD2) & ~(1 << PD1);  
 
          PORTD ^= (1 << PD5) ^ (1 << PD4);
          _delay_ms(1000);
  }  
    return 0;
}

Blink with Timer

https://wokwi.com/projects/354046396997507073 https://wokwi.com/projects/354556802672660481

Atmega328p-timers1.gif
;https://www.hackster.io/yeshvanth_muniraj/arduino-blink-example-in-assembly-using-timer-counter1-e2a327
;https://wokwi.com/projects/354046396997507073
;funkční ;sbi PORTB,5 zde nefunguje
#define __SFR_OFFSET 0x20
#include "avr/io.h"
.global main
 
main: rcall setup     // zavolání funkce setup
 
loop:
    COM R17           ; Complement R17 register
    STS PORTD, R17    ; Toggle the LED output
    rcall delay
    rjmp loop
 
delay:
  LDI R16, 0xC2
  STS TCNT1H, R16   ; Writing 0xC2 into TCNT1H (8-bit)
  LDI R16, 0xF7
  STS TCNT1L, R16   ; Writing 0xF7 into TCNT1H (8-bit)
  LDI R16, 0x05
  STS TCCR1B, R16   ; Writing 0x05 into TCCR1B
 
L:LDS R0, TIFR1     ; Load the value of TIFR1 into R0
  SBRS R0, 0        ; Skip the next statement if overflow has occured. 
  RJMP L            ; Loop until overflow occurs.
 
  LDI R16, 0x00
  STS TCCR1B, R16   ; Stop the Timer/Counter1
  LDI R16, 0x01
  STS TIFR1, R16    ; Clear the overflow flag by writing 1 to it
  ret
 
setup:  
      LDI R16, 0xFF     ; Setting bits of PORTD as output
      STS DDRD, R16
      LDI R17, 0x55
      STS PORTD, R17    ; Writing 0 to PORTD
      ret
//https://wokwi.com/projects/354556802672660481
 
#include <avr/io.h>  //iom328p.h 
#include <util/delay.h> 
 
int main(){    
        DDRD = 0xFF; // #define DDRD _SFR_IO8(0x0A) 
        PORTD= 0x55;
 
while(1){  
          PORTB ^= (1 << PD5);
          PORTD = ~PORTD;
          delay();
        }  
    return 0;
}
 
int delay(){
  TCNT1H =  0xC2; 
  TCNT1L =  0xF7; 
  TCCR1B =  0x05; //prescaler 1024
  while (!(TIFR1 & (1<< TOV1)));
  TCCR1B =  0x00; 
  TIFR1 =  0x01;  
}

Interrupts and 16-bit Timer/Counter 1: ATmega328P Timing Subsystems

https://www.arxterra.com/9-atmega328p-timers/

link:https://www.arxterra.com/9-atmega328p-timers/


IO interface of AVR

IO interface.jpg


AVR Interrupts


www
































== Archiv ==

MCU: 8051:

Modifikace programu s 8051

loop:		  
	mov P0,#01010011             ;modifikovat dle LED
	mov P2,#11001100             ;modifikovat dle LED
	acall delay
	.
	.
	. 
	sjmp loop
 
delay:	mov R0,#255d             ;podprogram zpoždění
skok2:	mov R1,#5d
skok1:	mov R2,#5d
skok:	djnz R2,skok
	djnz R1,skok1
	djnz R0,skok2
	ret                      ;návrat z podprogramu
 
	end

Objednávka součástek

Prehled soucastek.png

  • Prodejci součástek:

Témata na cvičení do roku 2016

ELE:

MIT:

Bonus:



Otázky k opakování do roku 2016

TP do roku 2016
  • T1 - BOZP – řády odborných učeben
  • Elektronika
    • T2 – Přehled součástek R, C, více info: ELT1
    • T3 - Měřicí přístroje univerzální - měření el. veličin U, R Ohmův zákon
    • T4 – Polovodičové součástky - diody, tranzistory, Zenerova dioda
    • T5 – Stabilizátory - integrované stabilizátory napětí
    • T6 – Integrované obvody analogové – časovač 555
    • T7 – Integrované obvody analogové – operační zesilovač
    • T8 – Možnosti řízení výstupem PC dalších technických zařízení
  • Vývoj MIT aplikace
    • T9 – Popis robota NXT, prezentace robota, ukázka aplikací
    • T10 – Vývoj aplikace s robotem NXT, zadání úloh – bludiště
    • T11 – Realizace robotické sestavy
    • T12 – Vývoj aplikace s robotem NXT zadání úloh – sekačka
    • T13 – Aplikace s robotem pro plnění úkolů „rescue robot“
    • T14 – Popis robota BOB prezentace robota Boe-Bot ukázka aplikací
    • T15 – Vývoj aplikace s robotem BOB zadání úloh – bludiště
  • T16 - Vývoj aplikace s robotickou rukou L601 prezentace
  • T17 - Opakování

Otázky k opakování do roku 2016

HW

  1. Navrhněte napájecí zdroj pro napájení mikroprocesorové aplikace
  2. Otestuje AKO s časovačem 555
  3. Popište funkci operačního zesilovače
  4. Proveďte návrh schéma zapojení s blikající LED (klasické řešení versus mikroprocesorové)
  5. Navrhněte připojení 7segmentovky k MCU

SW

  1. Napište program pro blikání jedné (a více) LED
  2. Připojte a otestujte čidlo dotyku (vzdálenosti, světla) s MCU
  3. Napište program pro test funkčnosti čidla světla
  4. Navrhněte a otestujte aplikaci ovládající motor (stejnosměrný, krokový)
  5. Popište postup vývoje mikroprocesorové aplikace

White Board do roku 2016

Inspirace

projects.adamh.cz

Osobní nástroje
Jmenné prostory
Varianty
Akce
Rychlá navigace
NEJ aktivity
Nejlepší předměty
Nejlepší MCU
SW-HW
Ostatní
Utility
Nástroje
Tisk/export