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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
我是一个刚刚学单片机的菜鸡。 想用8*8点阵屏写两个字,然后跟着视频自己摸索着写出的代码。整改后,虽然没有错误了但是有两个警告。下载到单片机后,没有得到理想的结果。自己搞了很久也没有搞明白,所以请各位大神帮帮我!
$ j! x6 i9 x$ z. \6 g. l
6 d% ?# O0 ]  H 我用的是74hc595芯片控制点阵屏。这是警告内容:
# y8 k" V9 G) B! b( R) i
6 d$ m4 R3 M' D7 ]
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
( Q" Z  l5 p+ v9 O) o+ a* t! f    SEGMENT: ?PR?_SEND_BYTE?FUZATUXING
* [! i3 f. O) m" O" l; A*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS- I% s+ f: @  Z8 [: b1 D6 h
    SEGMENT: ?CO?FUZATUXING1 I: }8 n/ D% g, U" I  @) B- k! ?! d
9 U7 H( V$ O5 e4 j
$ s9 @& _& V! z$ }5 L
这是我的代码:
5 f5 d1 s: r; L7 F8 p/ i) u# U) o. v#include <reg52.h>
$ h( l( P( r6 n% K0 p2 E, ]8 G#include <intrins.h>0 \  L6 A$ W" ^7 v: O
sbit R_CLK = P3^6;//串行数据输入口
* q% n& q) C0 \7 {; s, _% W( @# jsbit S_CLK = P3^5;//移位寄存器时钟7 z& m5 d0 E( k3 K8 ?
sbit DIO = P3^4;  //输出锁存器时钟
7 W* C$ I2 i7 @) Y  d5 r$ a2 y6 x+ A' O) ]0 [
unsigned char code table[2][8]={7 F7 T* b( A: p* G' ?
0x0C,0x1E,0x3E,0x7C,0x3E,0x1E,0x0C,0x00,! q  n! \5 @, _: s; T1 ]
0x00,0x09,0x29,0x49,0xFD,0x0B,0x09,0x08( P, q0 S6 a; k1 a- j- j* P3 p
};         //字模代码
9 D/ g1 T: W, H- S! v, E3 q% m* V8 H0 W! w% O5 s
void Send_Byte(unsigned char dat)//发送一个直接数据给点阵模块
' }1 ?; U* k8 ]: l{
: k% a( }5 @/ y- ~! A6 T        unsigned char i;
- F! I; t) D, ]0 h, z- V3 ^* i! F' V        S_CLK = 0;
8 |, o/ g/ B* F        R_CLK = 0;
6 Q6 R/ ~, r# {) t        for(i=0; i<8; i++)" |! _+ e8 P6 @: e' x/ d; q# r
        {3 L0 M. R0 t  ?* F5 j& C
                IF(dat & 0x01)9 ^) C& D9 j) q! x" t! F
                        DIO = 1;
% ~/ H- G) f, _                else- k. U& ^2 i( G% J. [
                        DIO = 0;: ]& Z% c5 h0 H8 m+ G
                S_CLK = 1;  k: g8 e) E6 L+ W. ~. m" E5 t
                dat >>= 1;
4 P7 Z- F$ e: h! V3 B% L9 J! _7 Y. Y8 V) F                S_CLK = 0;  
. p$ q4 ]: V0 L0 v        }
& i! k* z: V- f2 L& Y, z}6 |: X4 @8 ~8 ^4 u
void main()
- i# e8 X3 e2 S0 }9 w{
6 v7 l/ @2 e5 n! H. q. {         //ROW 0x80, COL 0xfe
" C$ y/ \8 t( I$ i- Z% q2 ?: Z        unsigned char j,k, ROW;
& D1 f- G4 d, q( I2 |, c        unsigned int z;
" J5 t5 P6 G7 [5 g# [5 y        while(1);
  K5 k. `8 `- F, H. J8 \        {
4 t* ]1 h' U" q' B7 X9 V                for(k=0; k<2; k++)//循环2次显示出两个字3 s) y7 s# g! Q3 R
                {9 a4 j6 V8 C7 c  `( a3 J
                        for(z=0; z<1000; z++)//让每个字显示一定的时长+ E2 l3 U- Z8 v! Q' X$ `
                        {0 X; E- D9 \7 Z7 C3 q
                                ROW = 0x80;
& l  l% [- q& E5 d2 n                                for(j=0; j<8; j++)//循环8次写入一个字节数据
: C# j/ G. ?3 H$ f8 T2 m% Q                                {
$ k/ {$ D7 |7 s& y+ y; h                                         Send_Byte(table[k][j]);/ [! a/ b3 u6 [0 c; V( L0 P
                                        Send_Byte(ROW);% L  [3 d1 o4 p$ e. f. i* f
                                        R_CLK = 1;
1 J% w4 [5 d% x1 G, c5 ]                                        R_CLK = 0;
+ ?8 J  n: y$ M) V$ H8 w6 U8 h* s                                        ROW = _cror_(ROW,1);
- u0 [4 A1 F% k                                }) v7 J* k! O3 s& t- v* W# x
                        }1 |8 D. O* P+ L( i7 n% @9 Q
                }
8 C0 J# A. O/ z% m2 A        }2 Y, h1 c4 x5 [! P+ C7 X) S+ V8 }
}
% [. u( |, X3 Z/ S3 M  
) G* a4 d# C" z. W+ A1 G/ y( S3 E- S" }

. N: v/ E( Z) v: I4 Q

3 U9 e" A5 v6 z- i
4 j. Z4 l; G5 F% z2 i) L4 V$ Q
  • TA的每日心情

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

    [LV.1]初来乍到

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

    该用户从未签到

    3#
    发表于 2020-2-21 14:36 | 只看该作者
    IF(dat & 0x01)  大写没问题?2 {( l* i" {$ a/ _- ?) [, Q$ s
    7 t) ^2 ?, p, a% T: O! J
    你这个编译都没过吧?
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-6-23 19:48 , Processed in 0.093750 second(s), 23 queries , Gzip On.

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

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

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