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

单片机1602和流水灯如何同时运行?

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
单片机型号:stc89c52
' _6 @5 `0 ], \* L1602上面显示:我爱单片机。. x0 c$ m& d% t  `5 F
流水灯八个灯轮流亮起。求大神编一个程序参考。( ?$ i4 `4 e  W: F6 v+ F: N6 A

该用户从未签到

2#
发表于 2023-2-3 10:48 | 只看该作者
流水灯可以放在定时器中断里,1602在主程序里,这样流水灯就可以和1602分开了

该用户从未签到

3#
发表于 2023-2-3 11:23 | 只看该作者
随便在论坛里一找就是好几百个程序!本站就有的。

该用户从未签到

4#
发表于 2023-2-3 13:40 | 只看该作者
#include
/ g% N4 f; J6 |3 q" u#include. i9 o+ t1 M6 ]; f5 M
#define uchar unsigned char9 L4 q$ {% T: g$ z# _
#define uint unsigned int* H( n  k- r  I& e$ j3 E4 H" L
***it lcden=P1^2;//液晶使能端
# E! F; E  N. Q***it RS=P1^0;//液晶数据命令选择端3 d; t% H( r! ^8 M/ b; B& g
***it RW=P1^1;//液晶读写选择端- s! F& Z/ W0 g) N6 c. {+ h6 u
uchar code table1[]="  qq417520418"        ;
- v+ F% v. \' f8 d) d3 I, {uchar code table2[]=" Unauthorized"         ;//转载请联系
* q  |( \, A" R( ]: L& Nvoid delay(uint xms)1 C4 u6 s, T, y% s$ d, {$ h* O
{
" M- d7 o9 Z+ `: r+ `   uint y,z;
$ c' d8 F9 E$ d; q' j   for(y=xms;y>0;y--)
5 l+ w3 D/ N' M: t$ ?0 G4 g( l     for(z=110;z>0;z--);
9 x& D. x6 x' I}. v& I7 R7 Q% [
void write_com(uchar com)              //command 命令
: w* [( I; \0 D. t- L- [+ }{
# K, {% b' o& F' ?( ?" H( k4 E    RS=0;
0 R9 ]$ p& M- m" p        RW=0;
6 ]' ?; }: S* `    P0=com;             //高脉冲输入,所以要把lcden进行改变" H* \3 m# ?7 c
        delay(5);
) h6 l# x/ h0 Z6 C3 |: B+ ^        lcden=1;
3 @; b3 ]! }9 B& S  R1 g, N        delay(5);3 c+ K- }7 U# z1 z
        lcden=0;
' q3 A5 [1 d* D}  ( C0 \! `- r& s
void write_data(uchar date)              //data 数据. S5 L: q/ P* i# S; _: ]8 i- X1 D
{
8 w; |. ]" K( j- s# _    RS=1;0 f4 Y7 v3 r0 x/ v$ C- O
        RW=0;
8 }" m# V9 Q4 {6 Z% p    P0=date;                   //高脉冲输入,所以要把lcden进行改变: |& c; e, p% K  c* ^
        delay(5);! B' m" t/ ?5 i  S8 o* A5 @" u( d
        lcden=1;, W0 A7 i2 v5 u7 [6 I
        delay(5);
; g7 X0 E# l! Y2 I) Z$ k        lcden=0;
1 q8 s( i7 N1 C}        " T9 z* t, B1 |, y& ?
void init()7 K& z' t( B: Q. C) e7 r' O5 j
{
4 y4 r' ~$ n$ l6 {& M& H  lcden=0;
0 J/ ~- v( G. A  write_com(0x38);        //设置16*2显示,5*7点阵,八位数据口3 h0 y6 i) U1 l% @5 I: `( T  @$ {" d
  write_com(0x0c);         //打开显示,但光标既不显示,也不闪动. J( m7 Q1 L6 c( t) p" ~( e
  write_com(0x06);         //写一个字地址指针后移一位
6 O8 {" \. \7 q$ y/ E: o9 Q  write_com(0x01);         //清屏
9 F- @  O$ X/ I( o) P}4 U/ o; C; ^* ?. H: p' e1 \- R
void main()& ?. a$ R" j5 d0 g5 c/ C
{
6 L# ^7 V1 B5 G. p- @' z$ duchar n;
4 d0 v3 A: s) ?, L3 f6 ^% Winit();0 a& p2 h. _+ K7 v$ D
for(n=0;n<12;n++)                  //就是前文提到的移位0 L# {& E" P% M2 S, R& S
{
9 V: q0 y5 j  o6 R( D* V6 A8 L. `write_data(table1[n]);
+ D( {' @- o5 _) W& vdelay(1);                                  //反正延迟必须有,不然会爆机
$ c7 ^. p# o5 i' h7 I  c3 k! N}
* H# q6 X: q+ j- l9 p5 v: b7 Iwrite_com(0x80+0x40);0 S  ?6 T) F4 o
for(n=0;n<13;n++)
; r" C+ n! j. S{
' F; ~+ M( S5 J/ ~4 Iwrite_data(table2[n]);6 [0 P# Z; P0 i7 ~" J/ e
delay(1);
' Q% `( r' E& M}5 u# w9 t. l4 O' r. {. v
P1 =0xfe; //流水灯占用2 d$ p" {8 E+ P* A
while(1)
( j* l, b0 g8 i4 K1 ~, u6 f{
& Q5 Q6 K5 N( M( k) d- r2 k             delay(50);: ~" ^6 o5 p! K& S4 `
             P1=_crol_(P1,1);
" v& A9 b% n7 Z$ X}
8 O$ Z8 x4 S3 E& Z! [}
6 D1 ]3 `* ]: @6 K) e//写了一个,记事本写可能会有少个括号啥的小错误,中文自己找对应代码,直接搜就行
  • TA的每日心情
    开心
    2024-4-29 15:07
  • 签到天数: 466 天

    [LV.9]以坛为家II

    5#
    发表于 2023-2-3 15:26 | 只看该作者
    :hug::hug::hug:
  • TA的每日心情
    开心
    2024-4-29 15:07
  • 签到天数: 466 天

    [LV.9]以坛为家II

    6#
    发表于 2023-2-3 19:52 | 只看该作者
    :hug::hug:
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-8-2 03:08 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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