打印
[DemoCode下载]

通过串口控制灯的亮和灭

[复制链接]
872|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
小明的同学|  楼主 | 2020-7-28 00:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
经过修改,该程序可以通过发送带ON字符的字符串打开LED,或者通过发送带OFF的字符串关闭LED,并通过串口获取当前LED状态


#include "ML51.h"




void main (void)
{
        unsigned char my[10];
        unsigned char i=0;

        MFP_P03_GPIO;
        P03_PUSHPULL_MODE;
/**
For UART0 P0.5 asTXD output setting
* include uart.c in Common Setting for UART0
*/
        MFP_P31_UART0_TXD;                              /* set P3.1 and P3.0 as Quasi mode for UART0 trasnfer */
        MFP_P30_UART0_RXD;
        P31_QUASI_MODE;                                 
        P30_QUASI_MODE;
        UART_Open(24000000,UART0_Timer1,115200);      // Open UART0 use timer1 as baudrate generate and baud rate = 115200


/**
  UART0 loop test
  UART0 TXD send data received by RXD pin. Connect TXD pin and RXD pin check result.
*/  
        while(1)
        {
                unsigned char temp;
                temp = UART_Receive_Data(UART0);
                UART_Send_Data(UART0,temp);
               
                my[i++]=temp;
                if(i>=10)
                {

                        ENABLE_UART0_PRINTF;
                        printf ("\nHello\n");
                        DISABLE_UART0_PRINTF;
                        for(i=0;i<10;i++)
                                {
                                        if(my[i]=='O')
                                        {
                                                if(my[i+1]=='N')
                                                {
                                                        P03=0;
                                                        ENABLE_UART0_PRINTF;
              printf ("\nLED is ON \n");
              DISABLE_UART0_PRINTF;
                                                }
                                                else if(my[i+1]=='F')
                                                {
                                                        if(my[i+2]=='F')
                                                        {
                                                                P03=1;
                                                        ENABLE_UART0_PRINTF;
              printf ("\nLED is OFF \n");
              DISABLE_UART0_PRINTF;                                                               
                                                        }                                               
                                                }
                                               
                                        }                               
                                }
                        i=0;
                }
        }

}





使用特权

评论回复
沙发
幸福小强| | 2020-7-28 11:41 | 只看该作者
多谢分享。看起来不错。

使用特权

评论回复
板凳
monitoring| | 2020-7-28 20:26 | 只看该作者
很不错 看到你的完善贴了

使用特权

评论回复
地板
电子xiaocainiao| | 2020-7-28 20:58 | 只看该作者
支持下,楼主确实完善了代码,21ic的编辑器的原因吗?为什么空格缩进了那么多。

使用特权

评论回复
5
小明的同学|  楼主 | 2020-7-29 15:35 | 只看该作者
monitoring 发表于 2020-7-28 20:26
很不错 看到你的完善贴了

不客气,我也是参考其他人发的帖。

使用特权

评论回复
6
小明的同学|  楼主 | 2020-7-29 15:36 | 只看该作者
电子xiaocainiao 发表于 2020-7-28 20:58
支持下,楼主确实完善了代码,21ic的编辑器的原因吗?为什么空格缩进了那么多。 ...

专门那么缩进的啊,电脑全屏看就OK了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

139

主题

1469

帖子

2

粉丝