打印
[STM8]

无法使用long类型数据

[复制链接]
1096|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huwr|  楼主 | 2014-10-31 14:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STVD + COSMIC 环境下 无法使用long类型数据
芯片是STM8S103f  
沙发
huwr|  楼主 | 2014-10-31 14:46 | 只看该作者
我定义了一个进行PI运算的 全局变量结构体结构体
typedef struct {  
         long Ref;                           // Input: reference set-point
         long Fbk;                           // Input: feedback
         long Out;                           // Output: controller output
        long Kp;                                        // Parameter: proportional loop gain
         long Ki;                            // Parameter: integral gain
         long Umax;                                // Parameter: upper saturation limit
         long Umin;                                // Parameter: lower saturation limit
         long up;                                        // Data: proportional term
         long ui;                                        // Data: integral term
         long v1;                                        // Data: pre-saturated controller output
         long i1;                                        // Data: integrator storage: ui(k-1)
         long w1;                                        // Data: saturation record: [u(k-1) - v(k-1)]
} PI_CONTROLLER;

PI_CONTROLLER PI_V;
在监控的时候发现 结构体内的所有数据都是short型 只有16位
也尝试过将long 改为 signed long          long int  但是监控时数据类型依旧是short

使用特权

评论回复
板凳
tian111| | 2014-10-31 14:47 | 只看该作者
单独定义一个long   类型的全局变量 呢

使用特权

评论回复
地板
huwr|  楼主 | 2014-10-31 14:48 | 只看该作者
若单独定义一个long   类型的全局变量 则在监控里显示正确的数据类型 能存32位数据
请问 这个是怎么回事?
可有解决办法。

使用特权

评论回复
5
huwr|  楼主 | 2014-10-31 14:49 | 只看该作者
COSMIC 好像很糟糕的样子 出现了好几个奇怪的情况 。例如 在监控时突然冒出 遇到无效 参数
还有几次 突然给出什么提示框 按确认后直接把我的.C文件彻底删除。
不知道是不是我软件设置的问题

使用特权

评论回复
6
huanghuac| | 2014-10-31 14:51 | 只看该作者
个人觉得应该是寄存器设置的问题   帮你顶一个   不错哦  

使用特权

评论回复
7
happy_10| | 2014-10-31 14:53 | 只看该作者
在stvp+cosmic的情况下,使用long型变量会造成数据不正确的情况。我也遇到过这个问题。仿真的时候,发现,long型变量之间的比较,在条件没有满足的情况下,也能被认为是“真”。使用整形变量就不存在这个问题

使用特权

评论回复
8
zhuhuis| | 2014-10-31 14:54 | 只看该作者
或者用iar测试看看

使用特权

评论回复
9
huwr|  楼主 | 2014-10-31 14:55 | 只看该作者
。正在投向IAR的怀抱中 ,不过换个环境 有些东西得修改 需要点时间
所以 想请教有没 什么方法能让我在STVD里用上long 解决这个程序先

使用特权

评论回复
10
huanghuac| | 2014-10-31 14:56 | 只看该作者
呵呵,行啊

使用特权

评论回复
11
huwr|  楼主 | 2014-10-31 14:59 | 只看该作者
那就结贴了吧,多谢大家啊

使用特权

评论回复
12
huwr|  楼主 | 2014-10-31 14:59 | 只看该作者
周末愉快,提前庆祝

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

780

主题

8627

帖子

5

粉丝