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

我是一个刚刚学单片机的菜鸡。 想用8*8点阵屏写两个字

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
我是一个刚刚学单片机的菜鸡。 想用8*8点阵屏写两个字,然后跟着视频自己摸索着写出的代码。整改后,虽然没有错误了但是有两个警告。下载到单片机后,没有得到理想的结果。自己搞了很久也没有搞明白,所以请各位大神帮帮我!7 Q2 E) a3 u% g/ S6 i
. I! f. [& Q8 \4 x1 h7 d
我用的是74hc595芯片控制点阵屏。这是警告内容:. _, j# ^7 x; Y% f8 `0 B
. B/ b8 @" }8 t( k8 H( B$ w& }8 O
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
* o+ o; O- W7 q7 M! v$ o    SEGMENT: ?PR?_SEND_BYTE?FUZATUXING3 B, q6 @5 {4 w: Z
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS9 w4 G: O( q, W( O$ `2 M
    SEGMENT: ?CO?FUZATUXING
& `' x% E; C3 A7 d  E+ j+ R1 j, U% G& j, J6 u4 X: Y
  ^! B# v6 z+ S& i5 f: m3 Y. w
这是我的代码:6 O( U9 O; M5 Y# d) ~0 V! b
#include <reg52.h>
4 F. _; l! Z8 ~- `( k( u, s! y& l5 r#include <intrins.h>. W6 q: V, S5 q
sbit R_CLK = P3^6;//串行数据输入口
; Z& H* J3 U% p7 I( ^* \$ _sbit S_CLK = P3^5;//移位寄存器时钟/ l' C2 S0 B. {& N: W8 t1 g
sbit DIO = P3^4;  //输出锁存器时钟% B! ]2 D4 K& H1 L; z" w0 W
" K& _: ~) ^" Y& |6 x
unsigned char code table[2][8]={
7 |! c  A$ z) P$ u0x0C,0x1E,0x3E,0x7C,0x3E,0x1E,0x0C,0x00,
4 t4 T' v. b1 O7 S3 u% ?7 C, U0x00,0x09,0x29,0x49,0xFD,0x0B,0x09,0x08
1 d- o0 [" D! j4 F, u' K5 e};         //字模代码4 W6 z/ ?9 c8 e% p  N' s% e
8 A2 l$ X- P/ G! P
void Send_Byte(unsigned char dat)//发送一个直接数据给点阵模块
) Z: a' q( S" m{# M2 L" d6 K' `8 q' V9 k
        unsigned char i;
& w+ _/ N' _7 |        S_CLK = 0;
2 H# v. b8 U/ @, ?        R_CLK = 0;8 _  n5 O+ Q+ }, Q& v2 b; d
        for(i=0; i<8; i++)
% ]  _: D7 a# R# ^7 ~7 f        {
! R4 X2 z& [2 S: g                IF(dat & 0x01)
) {2 b6 y& l% e3 {- _* V# i: n$ {                        DIO = 1;% O+ a6 J( j9 {: P
                else
1 X1 K3 o$ m1 Y% ?" g+ O                        DIO = 0;$ }; I0 ~0 B* j6 N4 L0 t  p4 y' Y
                S_CLK = 1;
% Y  H0 m0 d1 i2 g0 O                dat >>= 1;
' u+ R7 q+ B9 n3 y: `/ T! L! r                S_CLK = 0;  9 p) v+ K5 t) y5 L$ G( c
        }' L: |9 Y# \$ j% R7 g. Z. X
}
. z" y2 o6 ]/ u6 K0 [9 Ivoid main()
) P  ^- B7 m" b0 m1 O* y) h{& o5 U8 n& p5 w% Y7 `6 i
         //ROW 0x80, COL 0xfe) |/ W( E9 \/ |$ S8 g
        unsigned char j,k, ROW;( `) S8 ^/ i# ?$ X, e$ f$ V9 l
        unsigned int z;
  _8 p9 `/ l" Q- b: y        while(1);
5 s# h1 ?; G* d3 j% j) S: W/ _        {
+ D- K. N9 s6 v( v( [# n( i                for(k=0; k<2; k++)//循环2次显示出两个字0 q8 q( ]  U5 T
                {% r7 K7 \' f0 z9 G. I
                        for(z=0; z<1000; z++)//让每个字显示一定的时长
* N, S! g6 x* c% \& R+ l                        {- f, y/ {4 j7 a% V2 P
                                ROW = 0x80;
8 w" z1 s0 H* k4 O                                for(j=0; j<8; j++)//循环8次写入一个字节数据* x0 {0 O8 H, d
                                {  T+ G( f4 R+ J; L" A* |. H
                                         Send_Byte(table[k][j]);
9 w; Z& U/ U. O5 u! Y0 C* ~                                        Send_Byte(ROW);
: S6 z8 z3 i% V                                        R_CLK = 1;8 Y7 |% G* T; M+ y
                                        R_CLK = 0;
% ~* I$ {8 l1 W% R4 B0 {9 l                                        ROW = _cror_(ROW,1);" q3 N+ T& ]: `" O$ j5 _. Z
                                }
' j; ?2 @& |0 d                        }$ H1 {0 E! B% D/ R0 t( S7 Z4 _
                }
. \' M" m# H( L/ G        }
2 B8 r( p! Z, a3 q  f' R; v4 w}
) F2 q- }5 |5 g  
6 _9 D1 C- f0 o7 O) L
! R  \1 q9 Y  w- Z  N7 V( @  }8 I( ~% D) ^

( e: T) I5 N) b5 Z. }; k2 R  w: y5 G  ^
  • TA的每日心情

    2019-11-19 15:55
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2020-1-13 17:12 | 只看该作者
    代码有问题

    该用户从未签到

    3#
    发表于 2020-2-21 14:36 | 只看该作者
    IF(dat & 0x01)  大写没问题?
    * N. O5 T6 a$ p% `" c6 y! Q1 K" Z2 U: |1 A* A, A
    你这个编译都没过吧?
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-11 12:14 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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