AVR单片机怎么用C语言将通用寄存器的值赋给外部变量
3个回答
展开全部
这个涉及到 C语言中的嵌入式汇编代码相关:
asm(
“汇编语句”
:输出寄存器
:输入寄存器
:会被修改的寄存器
);
范例:
// 取fs 段寄存器的值(选择符)。
34 #define _fs() ({ \
35 register unsigned short __res; \
36 __asm__("mov %%fs,%%ax":"=a" (__res):); \
37 __res;})
注:关于嵌入汇编详细格式参考GNU gcc手册中[5]第4章的内容(Extensions to the C Language Family)或见参考文献[20](Using Inline Assembly with gcc), 范例摘自 LInux0.12完全释注;
asm(
“汇编语句”
:输出寄存器
:输入寄存器
:会被修改的寄存器
);
范例:
// 取fs 段寄存器的值(选择符)。
34 #define _fs() ({ \
35 register unsigned short __res; \
36 __asm__("mov %%fs,%%ax":"=a" (__res):); \
37 __res;})
注:关于嵌入汇编详细格式参考GNU gcc手册中[5]第4章的内容(Extensions to the C Language Family)或见参考文献[20](Using Inline Assembly with gcc), 范例摘自 LInux0.12完全释注;
意法半导体(中国)投资有限公司
2021-01-14 广告
2021-01-14 广告
推荐STC的抗干扰很好。用9块钱的STC89C54RD+,16K的ROM,1K的RAM。我用过的,实现你的功能不成问题。如果环境恶劣,也可以选择工业级的STC89C54RD+,14块钱。而且这个单片机带AD,10位分辨率。可以用来接你的压力...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询