超MINI核心板 stm32F103C8最小系统板上调试Usart2功能:用Jlink 6Pin接口连接WStm32f103c8的Uart2,PC机向mcu发送数据,mcu收到数据后数据加1,回传给PC,并把
D1 指示灯状态取反.

硬件连接:

1、R27 悬空不焊接;

2、将P输出TTL接口的TX连接到超MINI核心板 stm32F103C8最小系统板的RX2;

3、将P输出TTL接口的RX连接到超MINI核心板 stm32F103C8最小系统板的TX2;

串口配置uart2.c:

/*-------------------------------------------------------
* @ 功能:usart2Init()串口2初始化 9600, 8, N, 1
* PA2 -> TX2
* PA3 -> RX2
* @ 参数:无
* @ 返回:无
*-------------------------------------------------------
*/
void usart2Init(void)
{
USART_InitTypeDef USART_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(UART_GPIO_CLK | RCC_APB2Periph_AFIO, ENABLE);
if(UART == USART1)
RCC_APB2PeriphClockCmd(UART_CLK, ENABLE);
else
RCC_APB1PeriphClockCmd(UART_CLK, ENABLE); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);
NVIC_InitStructure.NVIC_IRQChannel = UART_IRQ_N;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = ;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure); GPIO_InitStructure.GPIO_Pin = UART_RX_PIN; //RX
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(UART_GPIO, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = UART_TX_PIN; //TX
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(UART_GPIO, &GPIO_InitStructure); USART_StructInit(&USART_InitStructure); USART_Init(UART, &USART_InitStructure); USART_ITConfig(UART, USART_IT_RXNE, ENABLE);
USART_Cmd(UART, ENABLE);
} /*-------------------------------------------------------
* @ 功能:中断接收,数据值+1再发送
* @ 参数:无
* @ 返回:无
*-------------------------------------------------------
*/
void UART_IRQ_HANDLER(void)
{
char ch;
if (USART_GetITStatus(UART, USART_IT_RXNE) != RESET)
{
ch = USART_ReceiveData(UART);
usart2SendChar(ch + );
LED_REV();
}
} /*-------------------------------------------------------
* @ 功能:发送
* @ 参数:无
* @ 返回:无
*-------------------------------------------------------
*/
void usart2SendChar(u8 ch)
{
while (USART_GetFlagStatus(UART, USART_FLAG_TC) == RESET);
USART_SendData(UART, (uint8_t)ch);
while (USART_GetFlagStatus(UART, USART_FLAG_TC) == RESET);
}

uart2.h

/********************************************************************************
* @File : uart1.h
* @Author : worldsing
* @Version: V0.1
* @Date : 2014/04/05
* @Brief :
*******************************************************************************
* @Attention:
*/
#ifndef __UART1__
#define __UART1__ #include "stm32f10x.h"
#include "system_stm32f10x.h"
#include "stm32f10x_rcc.h"
#include "stm32f10x_gpio.h"
#include "stm32f10x_usart.h"
#include "misc.h"
#include "uart.h" #define UART USART2
#define UART_GPIO GPIOA
#define UART_CLK RCC_APB1Periph_USART2
#define UART_IRQ_N USART2_IRQn
#define UART_TX_PIN GPIO_Pin_2
#define UART_RX_PIN GPIO_Pin_3
#define UART_GPIO_CLK RCC_APB2Periph_GPIOA
#define UART_IRQ_HANDLER USART2_IRQHandler void usart2Init(void);
void USART2_IRQHandler(void);
void usart2SendChar(u8 ch); #endif //end of file

上位机发送55,超MINI核心板 stm32F103C8最小系统板回复56,LED状态取反;

实物演示

功能连接说明:

1、使用stm32F103C8最小系统板 Uart1 的232电平接口时把R26焊接成0R,P1的pin17, p18悬空;

2、使用stm32F103C8最小系统板 Uart2 的232电平接口时把R27焊接成0R,R17、R12悬空、P2的pin2、pin3悬空;

4、使用stm32F103C8最小系统板 Uart1 的TTL电平接口时把R26悬空,信号连接到P1的pin17, p18;

5、使用stm32F103C8最小系统板 Uart2 的TTL电平接口时把R27悬空,信号连接到P3的pin9, pin12或连接到P2的pin2、pin3;

6、使用stm32F103C8最小系统板 USB转串的TTL电平接口时,直接连接到P1的pin15,pin16;

7、使用stm32F103C8最小系统板 USB转串连接到CPU内部的uart1时,P1的pin17与pin15短接,pin18与pin16短接;

8、使用stm32F103C8最小系统板 Uart2的485接口时,R17和R12焊接0R,P2的pin2、pin3悬空,P3的pin9, pin12悬空,R27悬空;

9、使用stm32F103C8最小系统板 USB接口连接到CPU是,焊接R14,R15为22R,R3,R4悬空,R1,R2悬空;

10、使用stm32F103C8最小系统板 CAN接口连接到CPU是,焊接R1,R2为22R,R3,R4悬空,R14,R15悬空;

11、使用stm32F103C8最小系统板 不焊接CPU时可以做独立的1通道USB转串功能;

12、使用stm32F103C8最小系统板 不焊接CPU时可以做独立的2通道TTL转232功能;

13、使用stm32F103C8最小系统板 不焊接CPU时可以做独立的1通道485转TTL功能,外置三级管;

14、使用stm32F103C8最小系统板 不焊接CPU时可以做独立的1通道CAN转TTL功能;

WS103C8例程——串口2【worldsing笔记】的更多相关文章

  1. emWin(ucGui)数值显示例程 -【worldsing笔记】

    本例程下载:2.emWin5.26(ucGui)VS2008数字显示.zip   在emWin显示文本字符还是容易,我们也可以使用字符串和标准 C 库的函数来显示数值.然而,有时候这会是件困难的事.通 ...

  2. QTbaWidget控件几个例程 【worldsing笔记】

    Qt Creator自带的 QTabWidget控件几个例程 在Qt Windos版本安装后,在Example目录可以找到与QTabWidget相关的工程Demo,如果按默认安装的话他们分别是:   ...

  3. STM32串口IAP实验笔记

    STM32的IAP功能确实方便,以前对此如何实现有所了解,但是一直没去测试,这两天来练了下,可谓困难重重,搞了两天问题也一一解决,下面做些简要的笔记 IAP就是在线应用编程,方便程序升级,可以不用打开 ...

  4. 谢欣伦 - OpenDev原创例程 - 串口助手Comm Assist

    前一段时间,一位博友发邮件给我.他跟我讲说没太看懂<化繁为简系列原创教程 - 通信专题 - 串口类CxComm的使用>,请我做一个DEMO工程给他.我抽了一天时间编写并上传了一个DEMO工 ...

  5. 3.emWin5.26(ucGui)VS2008 2-D图形库-基本绘图【Worldsing笔记】

    UCGUI(emWin) 2-D图形库--之基本板绘图,在ucgui的基本绘图功能上来看,功能还是比较全的,本例程主要使用基本的接口,两个主要的概念是绘制(draw)和填充(Fill),这两的区别是一 ...

  6. MFRCC522 SPI无法通讯【worldsing笔记】

    用单片机于MRFC522与单片接时,加上485通讯后出现很诡异的像: 只要485芯片上有收到外部发送的信号时RC522就死掉,经过仿真卡在了SPI的收发部分(等待回复) u8 MFRC522Write ...

  7. stm32 时钟配置——外部时钟倍频、内部时钟倍频 【worldsing笔记】

    stm32可选的时钟源 在STM32中,可以用内部时钟,也可以用外部时钟,在要求进度高的应用场合最好用外部晶体震荡器,内部时钟存在一定的精度误差. 准确的来说有4个时钟源可以选分别是HSI.LSI.H ...

  8. 推荐《C Primer Plus(第五版)中文版》【worldsing笔记】

      老外写的C书,看了你会有一种哇塞的感觉,这里提供PDF扫描版的下在,包含数内的例程,请大家支持原版!! C Primer Plus(第五版)中文版.pdf  下载地址:http://pan.bai ...

  9. Keil Mdk5.0 破解包 和谐包【worldsing笔记】

    有关Keil MDK 5.0的介绍和下载 http://www.cnblogs.com/worldsing/p/3355911.html 下载地址 点击下载:http://pan.baidu.com/ ...

随机推荐

  1. 用imagemagick和tesseract-ocr破解简单验证码

    用imagemagick和tesseract-ocr破解简单验证码 Tesseract-ocr据说辨识程度是世界排名第三,可谓神器啊. 准备工作: 1.安装tesseract-ocr sudo apt ...

  2. 对List顺序,逆序,随机排列实例代码

    ackage  Test; import  java.util.Collections; import  java.util.LinkedList; import  java.util.List; p ...

  3. rapidxml使用

    以前都是用tinyxml,这次开发中解析xml配置文件像尝试一下rapidxml,据说效率很高... RapidXml Manual: http://rapidxml.sourceforge.net/ ...

  4. dp,px转换

    public static int dip2px(Context context, float dpValue) {        final float scale = context.getRes ...

  5. 安卓表格布局android:collapseColumns,android:shrinkColumns和stretchColumn

    TableLayout的行数由开发人员直接指定,即有多少个TableRow对象(或View控件),就有多少行. TableLayout的列数等于含有最多子控件的TableRow的列数.如第一Table ...

  6. 转:ASP.NET MVC中Unobtrusive Ajax的妙用

    Unobtrusive Javascript有三层含义:一是在HTML代码中不会随意的插入Javsscript代码,只在标签中加一些额外的属性值,然后被引用的脚本文件识别和处理:二是通过脚本文件所增加 ...

  7. I.MX6 开机 闪红屏

    /************************************************************************** * I.MX6 开机 闪红屏 * 说明: * 本 ...

  8. javascript 命名空间的实例应用

    /** * 创建全局对象MYAPP * @module MYAPP * @title MYAPP Global */ var MYAPP = MYAPP || {}; /** * 返回指定的命名空间, ...

  9. C语言中strcpy(char *strDest, const char *strScr)字符串复制库函数的理解与分析

    1.原版的strcpy()函数原型 char * strcpy( char *strDest, const char *strSrc ) { assert( (strDest != NULL) &am ...

  10. liunx安装qq

    http://www.07net01.com/电脑玩物 http://www.07net01.com/2014/09/68186.html 安装qq 一开始,我在ubuntu14.04下安装的QQ版本 ...