完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
美好的一天!
我正在尝试将寄存器值分配给COSMIC C中的变量。我先尝试了一种显而易见的方法,但它不起作用: uint8_t test = 0; ... test = CLK-> SWCR; //从stm8s.h定义 和 uint8_t test = 0; ... test = CLK_SWCR; //从''C: Program Files COSMIC CXSTM8_32K Hstm8 iostm8s.h'中定义 当我在调试模式下运行程序并为'test'变量创建监视时,它始终为零。 有什么不对? 提前致谢! 以上来自于谷歌翻译 以下为原文 Good day! I'm trying to assign register value to a variable in COSMIC C. I've tried the obvious way first, but it doesn't work: uint8_t test = 0; ... test = CLK->SWCR; // define from stm8s.h and uint8_t test = 0; ... test = CLK_SWCR; // define from ''C:Program FilesCOSMICCXSTM8_32KHstm8iostm8s.h'' When I run my program in Debug mode and create a watch for 'test' variable it is always zero. What can be wrong? Thanks in advance! |
|
相关推荐
1个回答
|
|
嗨,
一种可能性是你的变量''test''被优化掉了:将volatile作为最小值声明。 还要检查您正在读取的硬件寄存器实际上是否包含零。 希望能帮助到你。 卢卡 以上来自于谷歌翻译 以下为原文 Hi, one possibility is that your variable ''test'' is optimized away: declare it volatile as a minimum. Also check that the hardware register you are reading does not actually contain zero. Hope it helps. Luca |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2448 浏览 1 评论
3157 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1724 浏览 1 评论
3542 浏览 6 评论
5902 浏览 21 评论
881浏览 4评论
1257浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
525浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1241浏览 3评论
1296浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-27 12:21 , Processed in 1.131083 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号