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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
intrins.h 这个文件,_crol_ 只能操作unsigned char 的数据,我想循环移动4个字节的数据,请问一下这个intrins.h 文件怎么改呢?还要改别的文件吗?* z) d( W5 l/ N8 n4 ?% c
/*--------------------------------------------------------------------------0 c9 }9 y9 j! E# B  n
INTRINS.H
! q4 L* ^, z& ~, M, T9 `, d/ b0 f& Z5 u* h( T
Intrinsic functions for C51., D; M  X3 d1 Q0 H4 O* I
Copyright (c) 1988-2010 Keil Elektronik GmbH and ARM Germany GmbH
% M/ L) `7 R8 C1 Q4 a& d% kAll rights reserved.
( G; y  }) K) M* c5 M  o--------------------------------------------------------------------------*/
- _( x2 }2 O) u  H) h
( N/ h6 }5 s6 A; e% N8 G: i  f+ R#ifndef __INTRINS_H__
4 K4 k7 z* j, `#define __INTRINS_H__, |- v% ~: U: {4 o9 B' }" z

4 ^/ V2 `2 i7 F( w1 a# I#pragma SAVE
. s. p% Y# M3 z$ @9 f  |
2 c' L2 f5 ~+ D0 r#if defined (__CX2__)
+ F) D& `/ v5 d; Q' G#pragma FUNCTIONS(STATIC)
3 q. H1 [! G) M/* intrinsic functions are reentrant, but need static attribute */
5 s/ P0 r& ~+ s- \  v2 x#endif
- ]7 z! i7 o9 ~" o& w' X( Y
/ f$ b/ ^& P' textern void          _nop_     (void);  D0 k! t0 [2 ~6 ]) a' A' i% @9 \0 E
extern bit           _testbit_ (bit);
* j1 M3 ~! S4 W0 A+ iextern unsigned char _cror_    (unsigned char, unsigned char);: O+ b( ^/ k! `, n" K6 ]1 t2 J  P
extern unsigned int  _iror_    (unsigned int,  unsigned char);
- o# k2 n/ a8 O* @! rextern unsigned long _lror_    (unsigned long, unsigned char);+ J( R  U# g( j2 l8 a+ J
extern unsigned char _crol_    (unsigned char, unsigned char);
6 F" ?5 r% i/ K+ `) D' V3 g: Hextern unsigned int  _irol_    (unsigned int,  unsigned char);$ K3 c# X- ^  F# R4 X
extern unsigned long _lrol_    (unsigned long, unsigned char);% k. X5 ~/ N" h, L
extern unsigned char _chkfloat_(float);6 e& v, X4 ?1 C8 p: J
#if defined (__CX2__)
6 x* u  P* G# u  Qextern int           abs       (int);7 x! P- W  p9 m+ R9 `8 _! h
extern void          _illop_   (void);
/ r3 z5 u! D# f  p4 T4 Y: u* ]#endif
: A2 k1 f7 R& ]#if !defined (__CX2__)% v. _7 V: b( U& S, q5 ]+ K0 s: f% N
extern void          _push_    (unsigned char _sfr);
* [* @* V' T3 N% N( O! oextern void          _pop_     (unsigned char _sfr);" q$ R7 o: ~+ U& i
#endif3 {" V* \6 E# W: A

  C9 Z; T$ P' Y9 H  Y# Z1 |#pragma RESTORE
8 y! U- P6 s0 G  a# N2 C7 n( Q% i, D) t7 I
#endif * k( [0 V/ N0 X2 H) ^* {
4 g0 k  b: x- D1 U
4 O/ T) |$ `7 W0 Y' g. k: d

该用户从未签到

2#
发表于 2021-12-3 10:49 | 只看该作者
" O7 h5 G( C& _$ b% Z7 J9 B
不用改, _irol_    (unsigned int,  unsigned char);这个就行了

该用户从未签到

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

+ M4 a6 N4 U* ?  f) e用这个_lrol_,就可以对long进行操作了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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