用KEIL调试单片机C程序时,怎么监视结构体中包含的结构体的变量? 设置断点,没停一次就可以看它的值是否改变!
keil中的结构体指针问题 如果p指针的值为0,那么是不可能看到p所指向的内容的。有可能是你在调试过程中没有刷新。单步再走一步看看。这个没有为什么啊。你没有初始化吧。
Keil中如何在debug watch窗口查看结构体变量 进入debug 模式,点右下角watch1,再,输入要查看的结构体变量名。
为什么在keil里定义了结构体变量赋不了值,而同样的代码在IAR中就可以赋值。 结构体与结构体之间的赋值,在标准的ANSI C语言里是不允许的,这个楼主要明白。Keil也好,IAR也好,AVRstudio,Vc+等等的这些个IDE环境,都是基于ANSI C语言的,所不同的是,它们在C语言的基础上做了扩展,比如说 Keil C51,就扩展了 bit 这种数据类型,Avrstudio就扩展 二进制数据表示方法\"0b\",VC+扩展了结构体内允许带有函数变量,IAR则扩展了结构体相互赋值,说到这里,大概楼主就明白了吧,因为Keil没有扩展结构体相互赋值这个功能。
KEIL 如何定义全局结构体 例如这样定义结构typedef struct PURCHASE_DATA_tg{u8 chksum;u8 online[2];u8 offline[2];u8 balance[4];u8 trans_type;}PURCHASE_DATA;定义变量:PURCHASE_DATA edepdat;
KEIL如何自动提示结构体中的成员变量 Keil5>;Edit>;Configuration.>;点下,进入2113《Configuration》窗口,找到text Completion选项卡5261,打钩 Symbils afte,后面的数字是你打几个字4102后开始提示。据说工程目录有中文就不会1653提示了。
在keil C51中使用结构体的问题 楼主没有搞清楚 51的 结构2113.楼上说的虽5261然大多是废话,对你的项目可以没多4102少帮助但是至少有一点是对的1653.设置成xdata可以解决你的问题.虽然不是什么好办法.51的 ram 分外三种.内部直接寻址你的128byte 内部间接的128byte还有就是外部 ram你的51单片机有512byte那么肯定是 内部 直接 间接各128外加外部256字节你把那些大一点的数据全部改成 xdata 声明就可以了.当然如果你会控制ram大小的话.用idata 声明效率更好一点例如 unsigned char yy;写个成 unsigned char xdata yy;(你看你自己的编译结果显示 data=137,xdata=0,code=4856就应该猜测一下 xdata 干吗用的了最后 建议楼主.最好不用在keil c51里面使用printf函数(浪费啊)回去.仔细看一遍51的结构.然后看看keil c51的区别于ansi c的东西会对你有帮助如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!