问题
在matlab的simulink下使用JK触发器模块时,出现问题:Data type mismatch. Output port 1 of ‘homework2/J-K Flip-Flop/J-K Flip-Flop/Mux’ is a signal of data type ‘double’. However, it is driving a signal of data type ‘boolean’.
仿真图:

出错:

问题分析
(1)通过报错的内容翻译,是数据类型不匹配的问题。发现说:JK触发器输出端口是"double"类型的数据,但是它驱动的是"boolean"类型的数据。也就是说,JK触发器需要的驱动信号是boolean类型。
(2)这时候观察所画仿真图,发现模块"Constart"的输出端口是"double",而实际上我们希望的输入是"boolean"。

(3)所以我们需要修改Constant的输出数据类型为boolean。
解决方案
- 双击Constant模块(也可能是其它模块,找到对应的模块即可)

- 选择Signal Attributes这一栏

- 将Output data type 中的类型改为 boolean,问题就解决了。


本文探讨了在Matlab Simulink中使用JK触发器时遇到的类型不匹配问题,重点在于如何识别 Constant 模块输出数据类型错误,并提供了解决方案:修改Constant模块的Outputdatatype为boolean。
835

被折叠的 条评论
为什么被折叠?



