找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2288|回复: 0
打印 上一主题 下一主题
收起左侧

松翰SN8F5703单片机USART例程

[复制链接]
跳转到指定楼层
楼主
ID:856645 发表于 2020-12-8 11:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. //-----------------------------------------------------------------------------
  2. //  FILE:   UART.c
  3. //-----------------------------------------------------------------------------
  4. //  Copyright 2014 Sonix Technology Corp. All rights reserved.
  5. //
  6. //  AUTHOR:     Sonix
  7. //  DATE:       2015/11/03
  8. //
  9. //        CheckSum = 0xD0A8
  10. //  The program is an example of UART to implement it.
  11. //
  12. //  UART decription:
  13. //      Mode 1 of UART  --  10bit
  14. //
  15. //  The system clock frequency is IHRC 32MHz
  16. //
  17. //  Device:     SN8F5703
  18. //  Tool chain: KEIL C51 V9.50a
  19. //
  20. //-----------------------------------------------------------------------------
  21. // Includes
  22. //-----------------------------------------------------------------------------
  23. #include <SN8F5703.h>
  24. #include "UART.h"
  25. //-----------------------------------------------------------------------------
  26. // Main loop
  27. //-----------------------------------------------------------------------------
  28. void main(void)
  29. {
  30.   uint8_t tmp;

  31.         CLKSEL = 0x06;                                                                                        // Fcpu = 32M/2 = 16M
  32.         CLKCMD = 0X69;                               
  33.         CKCON = 0X10;                                                                                                // From = 8M
  34.        
  35.         WDTR = 0x5A;                                    // clear watchdog
  36.        
  37.         P0 = 0x01;
  38.         P0M = 0x01;                                                                                                        // UTX is output high, URX is input
  39.         P0UR = 0xFF;
  40.        
  41.         P1 = 0;
  42.         P1M = 0;
  43.         P1UR = 0xFF;
  44.        
  45.         P2 = 0;
  46.         P2M = 0;
  47.         P2UR = 0xFF;
  48.        
  49.   UART_Init();

  50.     while (1)
  51.         {
  52.                 if(u8RxBufLength1!=u8RxBufLength)        //如果收到数据
  53.                 {       
  54.                         tmp=u8RxBuf[u8RxBufLength1++];        //发送收到的数据
  55.                         UART_WriteOneByte(tmp);
  56.                         if (u8RxBufLength1 >= BufSize)  //取指针超过设定值,从0开始取数据,指向0
  57.                         {
  58.                                 u8RxBufLength1 = 0;                                               
  59.                         }
  60.                 }
  61.     }
  62. }
复制代码

5703_UART_20161103.rar

110.81 KB, 下载次数: 14, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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