zoukankan      html  css  js  c++  java
  • 松翰单片机_SN8F570310——UART

    SN8F570310——UART


    哎,没想到工作之中又玩起了单片机!!!

    平台:松翰 SN8F570310

    官网:http://www.sonix.com.tw/masterpage-tw


     









     也就这些


              通过串口助手发送 ——》 单片机UART_RX ——》  串口接收中断_UART_TX ——》 逻辑分析仪

     1 #include "Equ.h"
     2 
     3 /*    硬件IO
     4         XIN /UTX/T2CC0/P0.0            UART_TX
     5         XOUT/URX/T2CC1/P0.1            UART_RX
     6 */
     7 
     8 #define SYSUartSM0    (0 << 6)
     9 #define SYSUartSM1    (1 << 6)
    10 #define SYSUartSM2    (2 << 6)
    11 #define SYSUartSM3    (3 << 6)
    12 #define SYSUartREN    (1 << 4)  //接收功能
    13 #define SYSUartSMOD   (1 << 7)
    14 #define SYSUartSMODE1 (1 << 7)
    15 #define SYSUartBD1    (1 << 7)
    16 #define SYSUartES0    (1 << 4)
    17 
    18 
    19 void uart_init(void)
    20 {
    21     //IO配置    
    22     P00 = 1;                    //UART_RX 输入模式
    23     P0M = P0M | 0x01& ~0x02;    //UART_TX 输出模式
    24     
    25 
    26     //模式使能
    27     S0CON = SYSUartSM1 | SYSUartREN;   //模式1
    28     
    29     //波特率   9600
    30     //PCON      = SYSUartSMODE1;
    31     S0CON2 = SYSUartBD1;
    32     S0RELH = 0x03;
    33     S0RELL = 0Xf3;
    34     
    35     //使能串口中断
    36     IEN0 |= SYSUartES0;  //打开串口中断
    37     IEN0 |= ( 1<<7 );    //打开总中断
    38     
    39     RI0 = 0;
    40     
    41     //发送测试
    42     //S0BUF = 0x31;
    43     
    44 }
    45 
    47 void SYSUartInterrupt(void) interrupt ISRUart
    48 {
    49 /*    
    50     if (TI0 == 1) {
    51         S0BUF = uartTxBuf;
    52         TI0 = 0;
    53     }else if (RI0 == 1) {
    54         uartRxBuf = S0BUF;
    55         RI0 = 0;
    56     }
    57 */
    58     
    59     if (RI0 == 1) {
    60         RI0 = 0;
    61       S0BUF = S0BUF;
    62     }    
    63 }

    测试:

    笔记:


    1. 串口连发S0BUF之间加延时( for(p=0;p<30000;p++){ }),否则出错!!

  • 相关阅读:
    关于yarn的spark配置属性
    spark1.2.0编译
    sqoop1.99.4 JAVA API操作
    数据库范式(1NF 2NF 3NF BCNF)
    HTTP协议详解【转载】
    ESI 动态缓存技术[转载]
    ESI+varnish页面片段缓存
    用 Gearman 分发 PHP 应用程序的工作负载【转载】
    介绍 JSON的
    跨多种环境部署 Gearman -改善应用程序性能和降低服务器负载
  • 原文地址:https://www.cnblogs.com/panda-w/p/11733508.html
Copyright © 2011-2022 走看看