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

单片机寄存器赋值问题

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
#include<STC15F2K60S2.h>- v3 ^; R. f+ [7 _
#include<config.h>
4 C0 ]  h" i3 X3 i/ A+ L //×ó3ìDòμ÷óÃéùÃ÷8 e# u9 f+ j+ l* P1 Y6 s
extern void delay_time(unsigned int n );# ^& D5 a' s, N8 ~
//¶¨òå1|Äü½Å; e( q) A& l, O  y. r5 T
//sbit D1=P0;+ R' y5 J1 Z) t" x7 k( H

) I2 t$ M* H, o/ s3 W//¶¨òå×Ö·ûòaò壬àyèçAÎaÕûDíμÄààDí  {" b4 M) G+ E& v
//unsigned int a;
2 _) N* J& d0 F2 U7 _
( S! u0 p3 B8 b- _; ^, l' S& u//Ö÷oˉêy£»7 X7 O7 E3 F3 z1 M  B. S8 R9 ]
void main()
1 P4 q+ ?0 Q0 B2 q0 T0 I5 @5 ]0 _{                ' G6 ^* o2 F4 T! u: e& X
        P3 = 0x00;       
* E; p6 W& r- j: z: ?# z        delay_time(1);
, f( w$ x0 A1 Z4 x3 v        P3M0 |= 0x0C;   //sfr P3M0=0xB2;  /0000,0000 ¶Ë¿ú3ģ꽼Ä′æÆ÷0
" Y" Y0 T7 |5 o$ ~; o" t4 V        while(1)& E$ N" }$ V( S6 `- D
        {  ' ]' D8 E3 l4 h3 U/ z! P4 `
                pos = 1;
  D: n; n$ I" s; n, y+ g) ]                delay_time(10);
2 S& [+ u6 x$ M8 S, o                pos = 0;5 o) h; A" R5 D  V3 D! I9 N4 ~
                delay_time(1);
# S+ d  M( x# i3 n( o/ G' a                neg = 1;
* Y* h* g3 M& O                delay_time(10);
7 j3 g. Y5 }4 V                neg = 0;
0 T' f( F1 X! y. `4 Y$ r                delay_time(1);( ~9 Z6 c, |) @( j3 K
        }
! c* a/ _& j8 z# R1 G3 m! Z}& T4 a* c6 B/ ~
//′ËdelayoˉêyÖDμÄnÎaê±¼äμÄÃëêy£¬¼′n=5ê±£¬±íê¾Ñóê±5s£¬ÆäÖDn2»′óóú65535£»
; w0 V% m0 l4 ]( `* G# \& W* tvoid delay_time(unsigned int n )          
3 V# ]% f$ ?9 w{
8 R8 @2 i# D2 y        unsigned int x;
6 Q9 w$ L* u6 f& [; ~: G) U8 V        unsigned int y;( x; a5 ~" ?5 g# y" J% q/ ]; N( o0 i
        unsigned int z;
1 [* m! n9 C% _0 h# ]& |% v        for(x=n;x>0;x--)
2 @; v$ q7 n1 Q! `. h7 {                {
+ u  Q; ]& ]0 G: r! l" j( y                        for(y=2;y>0;y--)        //′ËÎa1s£¬ê±ÖóÆμÂêÎa11.0592MHZ9 H# b; }: [/ @* u9 B7 D7 N! z
                                for(z=57600;z>0;z--); " u, o' L2 [( u! M4 u2 H' O- |
                }* x, m) z8 w. ?- ?7 A( d2 c8 g
}
* B9 H8 U2 U" P4 Q# H以上是可以在硬件内出现想要的结果: E9 q5 q' ~5 Q
#include<STC15F10x.h>
! D/ T0 b4 I# m  T: I, M4 t5 r: ^ //×ó3ìDòμ÷óÃéùÃ÷( f7 N% k- p( ~8 a- I4 C
void delay_time(unsigned int n );
9 U6 Y; w) y3 h: x/ Y8 w1 `: J( V- M//¶¨òå1|Äü½Å0 P: ?5 A- o/ _: h2 ?7 O
//sbit D1=P0;) E! |1 c5 @6 W9 j4 s7 Q
6 F; }; X, \+ Q/ A$ |$ |
//¶¨òå×Ö·ûòaò壬àyèçAÎaÕûDíμÄààDí
8 `, b) Y, r% _* a& L9 F//unsigned int a;
5 p% g+ e8 J  k' f: A* f
9 z  u( E  q) l/ m8 V9 Z//Ö÷oˉêy£»
5 K6 h0 Q9 r, l/ M9 Kvoid main()$ r: @- i( u7 h7 r
{        : w* N0 H) b  G4 X
        P3 = 0x00;       
! L& C- T, Z& j9 e- A$ N+ _; p        delay_time(1);/ S' }/ Q7 M" u2 y  H+ V6 ~1 i
        P3M0=0x01;  //sfr P3M0        =   0xB2;   /0000,0000 ¶Ë¿ú3ģ꽼Ä′æÆ÷0. Q, w( N& \7 a6 {6 G
        while(1)/ w: t) X2 {3 ~/ }7 u
        {  & ]& C4 R  I" a0 W/ Z% x. F" k
                P3=0x04;
3 F9 q" {$ x0 ?                delay_time(10);
, f: y8 t5 L  ]# L                P3=0x00;
5 |# f# }6 S$ c                delay_time(1);! [" g. e, z: m; m) J% i! d1 r3 K
                P3=0x08;8 i" n0 s' B6 l, d3 l
                delay_time(10);" E- H% s& b: R& |6 L( @
                P3=0x00;% g% i% {" V0 c" h3 \" |3 i$ X2 `
                delay_time(1);# k+ v1 B2 s: ?" G1 ?1 s
        }+ L5 I/ o, W1 }% ]
}9 T) K  m& C2 K, y/ G; G
//′ËdelayoˉêyÖDμÄnÎaê±¼äμÄÃëêy£¬¼′n=5ê±£¬±íê¾Ñóê±5s£¬ÆäÖDn2»′óóú65535£»1 o$ ^% V0 m5 O; E- ^
void delay_time(unsigned int n )          
/ A% F+ P3 V- @{  I' c5 Q3 ~* E7 F
        unsigned int x;9 d8 V  O! c; \6 b: @- c
        unsigned int y;' t7 j" R* p. b3 F; h% p1 F  C
        unsigned int z;
% U9 E' ]/ U) U1 M( g1 j        for(x=n;x>0;x--)
5 c9 _1 g: O3 G" \3 X- f                {
* B4 N% q4 t. d( D                        for(y=1000;y>0;y--)        //′ËÎa1s£¬ê±ÖóÆμÂêÎa12Mhz
9 d$ E' L2 R* m8 A( _+ K1 }/ Z                                for(z=1000;z>0;z--); - C& N) J! d4 I/ T: h$ \' o' M
                }
# z( ~* P' Z. B- _4 _}+ {" k/ Q/ R- `8 R
不能出现结果' F4 {/ K' J: R+ v

1 Q% r& O8 ~. j4 ~  x4 p" p想说的是  P3M0 |= 0x0C; P3M0=0x01;  两个都是置为推挽模式,有啥不一样,在寄存器的

该用户从未签到

2#
 楼主| 发表于 2020-1-19 09:41 | 只看该作者
这是推挽说明" U0 J0 q( k. l

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

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-4 02:41 , Processed in 0.078125 second(s), 26 queries , Gzip On.

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

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

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