找回密码
 注册
关于网站域名变更的通知
查看: 220|回复: 2
打印 上一主题 下一主题

单片机intrins.h文件如何修改?可以循环移动4个字节的数据

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-12-3 10:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
intrins.h 这个文件,_crol_ 只能操作unsigned char 的数据,我想循环移动4个字节的数据,请问一下这个intrins.h 文件怎么改呢?还要改别的文件吗?1 T6 k% D. i# A+ Y
/*--------------------------------------------------------------------------4 X& n  R- F6 w4 S6 \
INTRINS.H! Q2 W& I% k: {. q
) v* F; x: }, K- ?
Intrinsic functions for C51., r( H. z5 D2 }
Copyright (c) 1988-2010 Keil Elektronik GmbH and ARM Germany GmbH5 t6 a" V% g4 V+ \6 e7 u
All rights reserved.3 u: V) E" U0 D, s: y
--------------------------------------------------------------------------*/. L! @, p3 N6 U* ]

4 v& b; y; ?0 D! ~- b#ifndef __INTRINS_H__
  }6 k+ J. x0 V) P% w#define __INTRINS_H__# N6 V# K+ ~  `7 p( b/ a3 m
" p- l( `, b3 s6 d0 ?* `
#pragma SAVE
* S) d& I! d6 B
; U9 ~+ [' S) x7 K( L#if defined (__CX2__)
1 ]) ^$ O% t0 y3 ?( h- E8 X#pragma FUNCTIONS(STATIC)$ e9 i0 I7 ~( @! x. ^: p
/* intrinsic functions are reentrant, but need static attribute */
# u5 l/ M8 o4 V2 N' h6 x#endif) F1 L& B; O5 r0 a0 ?' K

$ W( ]# G* s& i4 P+ Aextern void          _nop_     (void);# }1 e9 L2 P9 P3 N! I  V* ^
extern bit           _testbit_ (bit);+ u* |0 p2 F: p* U- {) e5 d( Z( P0 Z
extern unsigned char _cror_    (unsigned char, unsigned char);9 S, u/ F% V: e) M6 l
extern unsigned int  _iror_    (unsigned int,  unsigned char);" C% `1 R/ N5 G3 D0 D' A" `
extern unsigned long _lror_    (unsigned long, unsigned char);
' L' q& |& o1 [; c6 Pextern unsigned char _crol_    (unsigned char, unsigned char);, S4 J- u- H$ y3 n" B. m8 b
extern unsigned int  _irol_    (unsigned int,  unsigned char);
9 G6 |# K# [! o1 `0 Qextern unsigned long _lrol_    (unsigned long, unsigned char);/ o: C! m$ [# n* ~# j6 ?9 B3 N
extern unsigned char _chkfloat_(float);
* J0 F- T7 ~- \4 G! B4 L0 k#if defined (__CX2__)
' D3 Q) p! e% L, V: n) xextern int           abs       (int);( K4 K0 b2 n0 z
extern void          _illop_   (void);; K% b2 \8 t" O2 r- D
#endif0 Q: x3 L& E9 Q, c
#if !defined (__CX2__)
" F2 T; D3 W. E0 R" Pextern void          _push_    (unsigned char _sfr);( ^- X; {0 b* K% M
extern void          _pop_     (unsigned char _sfr);: C# b; r' G! n6 g3 X' l7 j
#endif+ _6 R6 I5 A- W: m$ M

* M0 W" q7 x0 E0 S$ _: ?- R#pragma RESTORE9 g4 U  J5 V- a0 x! y* A$ p' M; X
8 b+ m9 }) R1 p/ |; _5 I" x
#endif 9 w% Z* t; _- A
- ]1 F. U0 z6 u+ x& p. o
- O( p. A  e5 Q0 l1 O

该用户从未签到

2#
发表于 2021-12-3 10:49 | 只看该作者
  D/ d1 P0 S" @  d
不用改, _irol_    (unsigned int,  unsigned char);这个就行了

该用户从未签到

3#
发表于 2021-12-3 11:12 | 只看该作者

0 _( S2 C1 a0 A3 X) P2 L1 \用这个_lrol_,就可以对long进行操作了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-9 13:28 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表