Stap 3: Simulink - gebouw van de S-functie
Simulink is een grafische programmeertaal waar u gemakkelijk met hardware en zo goed als fysieke modellering werken kunt. MathWorks biedt steunpakket voor de meeste (alle?) van de Arduino boards Arduino boards. Maar helaas, er is geen ingebouwde ondersteuning blok voor LCD. Daarom besloten heb ik om een voor mijn eigen te maken. U hebt hiervoor, een beetje kennis van programmeren nodig en het is heel eenvoudig en hier is de stap voor stap procedure, (ik neem aan dat je hebt een beetje kennis van Matlab SImulink omgeving)
- Open Simulink en maak een nieuw project eerst. Ga nu naar de browser Simulink bibliotheek en sleep een blok genoemd is-functie builder' in het project. (Het is beschikbaar onder SImulink > gebruiker gedefinieerde functies).
- Nu het blok om het te openen tweemaal klikken en u ziet iets wat lijkt op het figuur 1. We zullen het bewerken van de eigenschappen hier om het werk van de S-functie.
- Eerst zullen we de naam van het blok. Ik heb het 'lcd_print_plain_text' genoemd.
- Nu in het tabblad 'Initialisatie' zet aantal discrete Staten = 1.
- Ga nu naar de volgende tab d.w.z. 'gegevenseigenschappen'. Hier kunnen we het instellen van de input en output poorten en hun gegevenstypen wijzigen. Ik heb een matrix van 32 tekens zoals mijn LCD 16 x 2. Dat betekent dat ik zal sturen de waarde die moet worden geschreven in LCD voor elk blok (of er enige waarde is NULL) in elke lus-cyclus.
- Als onze LCD-blok een blok van de uitgang is, zal dus er alleen invoerpoort. Ik heb een invoerpoort met de naam 'lcdinput' (verwijs figuur 2). Als er een matrix van 32 tekens, moeten we schrijven 32 in de rijen. We moeten in het type kenmerken sub tabblad gegevens, stelt u het gegevenstype van onze invoervariabele 'lcdinput' als uint8. (Zie figuur 3)
Vervolgens moeten we Ga naar het tabblad 'Libraries' en verklaren van sommige functies. In de bevat textbox de volgende code moet worden geschreven, (Zie het begeleidende tekstdocument. Het lijkt erop dat ik kan niet de code hier goed zet. Sorry daarvoor) (verwijs figuur 4)
Vervolgens zullen we Ga naar het tabblad 'output' en schrijf er de volgende code. (Zie het begeleidende tekstdocument. Het lijkt erop dat ik kan niet de code hier goed zet. Sorry daarvoor) (verwijs figuur 5)
Vervolgens zullen we Ga naar tabblad 'Discrete Update' en schrijf er de volgende code. (Zie het begeleidende tekstdocument. Het lijkt erop dat ik kan niet de code hier goed zet. Sorry daarvoor) (verwijs figuur 6)
De S-functie is eindelijk klaar om te bouwen. De knop opbouwen is gelegen op de hoek van de bovenste rihght van het venster. Vergeet niet om het aankruisvak voor 'Genereren wrapper TLC' in 'Bouwen Info'-tab gecontroleerd tijdens het genereren van de code. (Zie figuur 7)