找回密码
 注册
查看: 614|回复: 1
打印 上一主题 下一主题

单片机寄存器赋值问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-19 09:37 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
#include<STC15F2K60S2.h>4 R) q  e# O8 L7 S9 w$ H9 Z
#include<config.h>
7 m1 P4 t/ @" @6 `' Y6 ]4 h3 S  o //×ó3ìDòμ÷óÃéùÃ÷2 F' e! o$ Y" ]! E8 L9 x) y" A
extern void delay_time(unsigned int n );
3 I* D  C1 `& W) g. P5 Q//¶¨òå1|Äü½Å
$ M* {0 U5 D$ m//sbit D1=P0;
) u! I( K, A- `. H) A% ?. L
$ X- z) P/ l6 Y2 F! \//¶¨òå×Ö·ûòaò壬àyèçAÎaÕûDíμÄààDí  t3 N4 H. b1 l6 c) \4 O
//unsigned int a;# e0 w4 z" B" y5 C' d+ w) _
" y3 r4 t0 p! C. M6 o, a
//Ö÷oˉêy£»
/ L- r- M* ]/ P, U( e6 Dvoid main()
) ]4 n8 f- f3 D& Z$ L{               
0 x1 E0 t( \; |9 ~7 F( U        P3 = 0x00;       
: w. t  z' J* @2 d; u        delay_time(1);
+ @* @* u' n7 ^3 s        P3M0 |= 0x0C;   //sfr P3M0=0xB2;  /0000,0000 ¶Ë¿ú3ģ꽼Ä′æÆ÷0
" R5 |! W8 h% o' {; T        while(1): d! k& c% M7 u( ?$ p, d
        {  # @9 n( S* x  o" j# l
                pos = 1;
6 N- v& `8 H9 i/ e9 \                delay_time(10);# z1 }* V1 y5 x2 O  G- e) ^
                pos = 0;
4 m/ _, i( Z1 j3 n# `                delay_time(1);& y& B4 ~$ u  G
                neg = 1;
( z7 d: k$ J" C8 x2 c! F, e# S                delay_time(10);, [! V, R' ^  v3 L
                neg = 0;
  y- Y0 A1 b. j& E4 H7 y5 n                delay_time(1);
* L# n- ]! ]/ W. P- b# t. R        }0 r% H! _- v+ D
}- I& x3 y) x; I4 w9 Q# w' t' r
//′ËdelayoˉêyÖDμÄnÎaê±¼äμÄÃëêy£¬¼′n=5ê±£¬±íê¾Ñóê±5s£¬ÆäÖDn2»′óóú65535£»7 s( H, U; B3 K& w& ~
void delay_time(unsigned int n )            S) V; ?8 V+ `
{. ^) X' u! G1 [. F1 J* b
        unsigned int x;9 |9 V; e  V  T) V. x9 a& m6 o
        unsigned int y;6 c* x& C3 E- G; X, c/ R9 N1 q. m
        unsigned int z;
" e; `" ]; F( ], x        for(x=n;x>0;x--)' d& m, o6 U& b' k
                {6 ]" `6 M0 a$ z. r$ b
                        for(y=2;y>0;y--)        //′ËÎa1s£¬ê±ÖóÆμÂêÎa11.0592MHZ2 v4 O' I$ v) {2 Y) k9 i  v
                                for(z=57600;z>0;z--);
1 b# c! X) f# f) N. S                }
9 b' u8 v5 k% w5 X, H" |+ o}
. B" x3 A, z- l  m0 R' s: t以上是可以在硬件内出现想要的结果8 X. ^& F+ b) t# \1 G
#include<STC15F10x.h>
% y5 b# x. W0 W6 C1 u6 \$ X! N //×ó3ìDòμ÷óÃéùÃ÷
( h1 g/ p$ P6 a void delay_time(unsigned int n );
+ Q) g4 z/ j3 K6 {//¶¨òå1|Äü½Å2 {6 `. e) w  y  m6 l6 l) y+ @: n
//sbit D1=P0;
; N1 T7 o. a2 J/ E& ]/ o6 U
5 ]) ]3 c$ {8 X7 a& {//¶¨òå×Ö·ûòaò壬àyèçAÎaÕûDíμÄààDí
! r* V( A4 d! ~//unsigned int a;
, }$ W! e- a2 B" o! ~
/ R9 @$ _& ?4 O* o//Ö÷oˉêy£»
' |' W" ?) \0 H$ t* ^4 pvoid main()( E# b, Y. \- i, ]
{        ! Y7 y+ y+ P8 N1 N8 V5 J( W
        P3 = 0x00;       
* y4 k, G5 w& f0 A2 W# ^. b        delay_time(1);
+ i! _! @( Y" M2 @; j/ ~6 ?! l# ~        P3M0=0x01;  //sfr P3M0        =   0xB2;   /0000,0000 ¶Ë¿ú3ģ꽼Ä′æÆ÷08 p" G% G. i2 Y2 W9 L1 ]$ n
        while(1)
1 q) {0 h# d- d: J# x; Q+ z        {  
: V0 A9 E3 p7 e. z                P3=0x04;2 f  C" h- [0 Q: ^! w8 F+ z' `4 N
                delay_time(10);" f- \" P7 L1 Z( [0 Z
                P3=0x00;
. k) w7 E! v. I, q                delay_time(1);
8 b+ ]# j+ H4 n; d' o                P3=0x08;" V1 f5 Q* M% e: E' B2 s1 U9 U, a
                delay_time(10);
0 L, O$ q7 b7 Y/ S$ O                P3=0x00;; R) ?( \0 G7 _9 P# [
                delay_time(1);
  g5 n) w- j, V1 s% s) ^7 K) j        }
9 l6 r. k& v/ a' v+ X. t4 E}
5 D( e  V4 U* f//′ËdelayoˉêyÖDμÄnÎaê±¼äμÄÃëêy£¬¼′n=5ê±£¬±íê¾Ñóê±5s£¬ÆäÖDn2»′óóú65535£»
: e% i8 t: l0 ~3 {+ ]void delay_time(unsigned int n )          % d. C" W) j( _! {' R
{
) H" E3 r" I# ]        unsigned int x;9 T5 v  Z, Z# W( b1 T) b0 K! n- z
        unsigned int y;! q1 g7 `; E: W
        unsigned int z;
4 C) N% A  T0 |; `2 Y1 R        for(x=n;x>0;x--)0 G& J( f7 _6 Q/ m
                {
, z3 S& O4 M- f) j4 o                        for(y=1000;y>0;y--)        //′ËÎa1s£¬ê±ÖóÆμÂêÎa12Mhz
9 v! X; p3 R" N4 e" C                                for(z=1000;z>0;z--);
0 j: W. \3 s& d$ Q, Z* v5 ~3 P                }
2 _+ |3 |. i: O1 ?, K}
9 m0 q; V# o" }) O- Y' }不能出现结果
& i* o3 e* n  L% R) F, @; m$ b. L0 Y9 @5 X1 W3 K
想说的是  P3M0 |= 0x0C; P3M0=0x01;  两个都是置为推挽模式,有啥不一样,在寄存器的

该用户从未签到

2#
 楼主| 发表于 2020-1-19 09:41 | 只看该作者
这是推挽说明
- v% B2 k2 h9 [" K# S. B' Q

123.png (233.39 KB, 下载次数: 2)

123.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-5-23 15:44 , Processed in 0.093750 second(s), 26 queries , Gzip On.

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

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

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