当前位置:网站首页>2837xd Code Generation - stateflow (4)
2837xd Code Generation - stateflow (4)
2022-07-02 09:37:00 【Quikk】
2837xd Génération de code——StateFlow(4)
16 ChartMise en service
InAnimationPour définir la vitesse de transfert du processus de mise en service.

16.1 Définir le type de point d'arrêt:
1)chart Je ne peux que taper Au moment de l'entréePoint d'arrêt de:

Après le point d'arrêt,Le coin inférieur gauche sera marqué en conséquence.

2)StatePoint d'interruption,Il existe trois types:I、EntréeState II、InStateMoyenne III、SortieState

Après le point d'arrêt,State2 L'identification correspondante apparaîtra dans le coin inférieur gauche , Cliquez pour voir le type de point d'arrêt :

3)Même opération, Le transfert peut également être effectué au point d'arrêt :

4)InModel Explorer Vous pouvez marquer un point d'arrêt pour l'événement :

16.2 Gestion des points d'arrêt:
Cliquez sur n'importe quel point d'arrêt , Cliquez dans la boîte de dialogue qui apparaît Breakpoints List Accès à la gestion des points d'arrêt . Cette gestion des points d'arrêt n'est pas limitée à un modèle particulier , Si vous ouvrez plusieurs modèles , Les points d'arrêt de plusieurs modèles sont affichés sur la gestion des points d'arrêt .

Interface de gestion des points d'arrêt comme ci - dessus , La routine officielle utilisée ici (Command WindowEntréesf_carVous pouvez accéder à). Sur l'interface de gestion des points d'arrêt ConditionÇa veut dire::Lorsque les conditions sont remplies, Le point d'arrêt n'entrera en vigueur que .Ça suit.C Le point d'interruption moyen est le même , On s'attend parfois à ce qu'en boucle , Combien de fois le cycle entre dans le point d'arrêt .Hits Est le nombre de fois où le point d'arrêt a été enregistré .
Les points d'arrêt peuvent être localisés plus rapidement Chart L'erreur de .
17 Watch Data
Sur la ligne de signalisation , Faites un clic droit pour ajouter Watch Data Window:

Une fois la sélection terminée,Ça va s'éjecterWatch Data WindowFenêtre de.Derrière.DEBUGC'est tout..
18 AppelezWork SpaceVariables
Le format linguistique de base de l'appel est
y=ml.x; //xBesoin deWork Space Déjà défini dans ;
Attention!:Il fautchart Le langage d'action est défini à C Action linguistique (MatlabPas de langage.)

D'autres opérations sont effectuées comme d'habitude :

Ici, vous pouvez rapidement définir la fonction de rappel du modèle ,Définir, Exemption de la définition manuelle ( Pour plus de détails sur la fonction de rappel, veuillez vous référer à SimulinkDescription):


ml Les déclarations peuvent également être surchargées :
y=ml('sin(%f)',u); //u- Oui.Work SpaceVariable de,Ici.sin La fonction peut être remplacée par n'importe quel MatlabFonctions intégrées pour
y=ml.my_sin(u); //my_sinC'est écrit par moi - mêmematlbFichiers de fonctions

19 StateFlow AppelezcCode
Écrivez séparément .cEt.h Les fichiers sont placés dans le même répertoire :

Puis entrez Configuration Parameters Pour effectuer les réglages pertinents :


Et aprèsChart Appelez dans . Parce que ce qui est introduit ici est CDocuments linguistiques, Donc le langage d'action doit être choisi CLangues.
20 2837dUtiliserChartPour construire des exemples de modèles
Voici un module de minuterie en temps réel , Il est divisé en modules d'initialisation et XINT Modules et contre - modules .

1) Les variables utilisées ici sont Data Store MemoryModule, Dans l'attribut, vous pouvez Définir le type de variable .

2)Module d'initialisation.InitialisationKEY Utilisé comme interruption externe ,J'allais l'utiliser.LED La lampe indique le processus d'initialisation ,Mais ça a échoué..La raison en est que: Le Code généré sera GPIO Les deux instructions de stepLa fonction fonctionne. Ce qui nous vient à l'esprit , Ajouter des fonctions allumées et éteintes directement dans le module d'initialisation . Parce que le Code ajouté au module d'initialisation est toujours placé à l'arrière de la fonction d'initialisation .Par exemple: Si le Code généré est utilisé GPIO0En tant queI/OUtiliser, Alors assurez - vous d'initialiser dans le module d'initialisation . Dans le Code d'initialisation, les bits peuvent être utilisés directement pour GPIO L'assignation du port fonctionne . Mais les étapes suivantes doivent être utilisées pour GPIO0.( Ceci garantit que l'initialisation ).

3) Module de fonction d'interruption externe , Ici, les deux fonctions d'interruption fonctionnent de la même façon . Tout est dans la fonction d'interruption ,Oui.(0-1Cycle) La valeur de est stockée dans la variable (XINT1、XINT2)Moyenne. Si la dernière exécution XINTFonctions,Ce qui est stocké0, Alors la prochaine exécution sera stockée 1. Il en résulte un bord ascendant de l'impulsion . Le bord de descente correspondant peut être généré . Ce signal de bord peut être utilisé comme ChartLes événements de.


4)Chart Le module réalise la fonction de comptage ,Peut êtreXINT1、XINT2 Démarrer et réinitialiser les comptes séparément .Ici.TIC Un événement est un événement qui se produit par étapes 0、1Séquence, Si l'étape est réglée à 0.01,Alors quand vous exécutez100Une foisTICÉvénements. On peut penser que c'est passé 1Secondes.Passe.60sJuste...minDésigné comme+1.Parce queccsUtilisercCode Drive,Donc icichart Le langage d'action doit être choisi cLangues.


5)Résultats expérimentaux. Ça s'ouvre ici SCI_AEn mode Simulation, Puis appuyez sur la touche pour entrer Running:


边栏推荐
- Read Day6 30 minutes before going to bed every day_ Day6_ Date_ Calendar_ LocalDate_ TimeStamp_ LocalTime
- What are the waiting methods of selenium
- 三相并网逆变器PI控制——离网模式
- Mathematics in machine learning -- point estimation (I): basic knowledge
- Customize redis connection pool
- hystrix 实现请求合并
- 逆变器simulink模型——处理器在环测试(PIL)
- Oracle delete tablespace and user
- 破茧|一文说透什么是真正的云原生
- Ora-12514 problem solving method
猜你喜欢

kinect dk 获取CV::Mat格式的彩色RGB图像(openpose中使用)

Knowledge points are very detailed (code is annotated) number structure (C language) -- Chapter 3, stack and queue

一次聊天勾起的回忆

微服务实战|微服务网关Zuul入门与实战

一篇详解带你再次重现《统计学习方法》——第二章、感知机模型

Chrome视频下载插件–Video Downloader for Chrome

微服务实战|原生态实现服务的发现与调用

Idea view bytecode configuration
![[go practical basis] gin efficient artifact, how to bind parameters to structures](/img/c4/44b3bda826bd20757cc5afcc5d26a9.png)
[go practical basis] gin efficient artifact, how to bind parameters to structures

Solutions to Chinese garbled code in CMD window
随机推荐
自定義Redis連接池
Oracle modifies tablespace names and data files
Knowledge points are very detailed (code is annotated) number structure (C language) -- Chapter 3, stack and queue
QT信号槽总结-connect函数错误用法
Typora安装包分享
自定义Redis连接池
JDBC回顾
web安全与防御
Read 30 minutes before going to bed every day_ day4_ Files
Typora installation package sharing
Redis installation and deployment (windows/linux)
Beats (filebeat, metricbeat), kibana, logstack tutorial of elastic stack
How to use pyqt5 to make a sensitive word detection tool
Activity的创建和跳转
Chrome视频下载插件–Video Downloader for Chrome
微服务实战|负载均衡组件及源码分析
Knife4j 2.X版本文件上传无选择文件控件问题解决
Enterprise level SaaS CRM implementation
zk配置中心---Config Toolkit配置与使用
Oracle delete tablespace and user