| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> VSPD+XCOM+Proteus仿真stm32串口通信 -> 正文阅读 |
|
[嵌入式]VSPD+XCOM+Proteus仿真stm32串口通信 |
本文说明功能要求
相关软件使用说明 串行接口相关知识点
HAL库中串口发送的重要函数阻塞式发送函数(要等待数据发完才能做其他任务) 非阻塞式发送函数 串口发送完毕中断回调函数 举例说明串口发送函数的作用假如我们使用非阻塞式的串口发送函数,将发送数组dat_Txd中的前5个数据发送到USART1,在发送完数据后,翻转PB9引脚的输出电平
如果是使用阻塞式发送函数,则代码变为如下内容
HAL库中串口接收的重要函数阻塞式接收函数(要等待数据接收完才能做其他任务,所以不推荐) 非阻塞式接收函数(推荐使用) 串口发送完毕中断回调函数 举例说明串口接收函数的作用假如使用非阻塞式的串口发送函数,接收USART1中的一个字节,将其保存在dat_Rxd,在发送完数据后,若该字节位0x5A,则翻转PB9引脚的输出电平
STM32CubeMX配置USARTMode选择Asynchronous(异步的)
Keil编写代码逻辑首先定义一些变量
然后在主函数内实现开机发送Welcome
发送函数执行结束后,要等待串口发来的字符 因此我们需要编辑我们的回调函数
简单解释一下程序,进行回调函数,根据接收的字符执行对应的操作 编译运行生成hex文件,准备仿真 Proteus仿真原理图如下
COMPIM是Proteus中一个极其有用的虚拟元件,COMPIM可以建立起一种映射,把仿真电路中的数字量映射到计算机的物理端口 找到这个元件,拖进原理图,编辑一些属性,如图
第一次见比较陌生,介绍一下这个虚拟终端 左键这个虚拟终端,出现了一堆参数,如图
这些好像哪里见过,找到usart.c文件的UART_Init函数中,发现完全一致
那我们就把芯片的TX引脚和COMPIM的TXD相连,芯片的RX引脚和COMPIM的RXD相连,再将COMPIM的RXD与VIRTUAL TERMIN的RXD相连即可。详情可看上方的原理图 老规矩导入Hex文件,设置主频72MHz 虚拟串口VSPDVSPD官方地址: https://www.eltima.com/products/vspdxp/ 我自己用的是老版本的(反正能用就行,学习使用)
串口调试工具XCOM我用的是XCOM2.6版本的 由于软件是正点原子的 打开串口调试工具XCOM,选择串口COM4->COM3,打开串口
存在的问题(待解决)连续输入两个字符,没有任何问题
这之间可能出现了程序的死锁? 其实就是想等待大佬救一下23333 总结
我是爱学习的诸葛铁锤,觉得有用的话点个赞哈,啾咪 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:31:10- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |