串口

利用定时器与串口接收指令控制LED亮度

匿名 (未验证) 提交于 2019-12-03 00:21:02
#include "sys.h" #include "PWM.h" #include "USART3_TIM2.h" #include "string.h" char *str_light = "LIGHT:"; unsigned char PWM_BUF = 0; int main(void) { } #include "USART3_TIM2.h" u8 count=0; u8 RX_SATA=0;//0表示接收未完成,1表示接收完成 char RX_BUF[20] = {0}; void USART3_TIM2_Init(u32 bound) { } void USART3_IRQHandler(void) { } void TIM2_IRQHandler(void) { } #include "PWM.h" void PWM_Init(void) { } 文章来源: 利用定时器与串口接收指令控制LED亮度

矩阵键盘通过串口3输出

匿名 (未验证) 提交于 2019-12-03 00:21:02
主程序如下: u8 key_num = 0; int main (void) { uart_init(115200); delay_init(); KEY44_Init(); while(1) { key_num = key44_Scan(); if(key_num != 0) { printf("Key Num is %d\r\n",key_num); } } } void KEY44_Init(void) { GPIO_InitTypeDef GPIO_InitStructure;//结构体声明 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//使能APB2外设时钟 GPIO_InitStructure.GPIO_Pin = (GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3);//选用管脚1,2,3 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//设置管脚的速率 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//设置管脚为推挽式输出 GPIO_Init(GPIOA, &GPIO_InitStructure); RCC_APB2PeriphClockCmd(RCC

STM32实战 2.矩阵键盘通过串口3输出

匿名 (未验证) 提交于 2019-12-03 00:21:02
#include "KEY44.h" #include "sys.h" #include "delay.h" #include "usart.h" u8 key_num = 0; int main(void) { uart_init(115200); delay_init(); KEY44_Init(); while(1) { key_num = key44_Scan(); if(key_num != 0) { printf("KEY is %d\r\n",key_num); } } } #include "KEY44.h" #include "sys.h" #include "delay.h" void KEY44_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1 |GPIO_Pin_2 |GPIO_Pin_3; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO

matlab 串口实时接收数据 绘图

匿名 (未验证) 提交于 2019-12-03 00:21:02
利用matlab实时接收串口发送的数据,并绘图。 clear s = serial ( 'com5' ) %选择串口号 set ( s , 'BaudRate' , 115200 , 'StopBits' , 1 , 'Parity' , 'none' );%设置波特率 ֹͣλ 校验位 fopen ( s ) for i = 1 : 300 %循环读取 out = fread ( s , 26 , 'uint8' );%读取 数据个数 与 类型 plot ( x1 , y1 , x2 , y2 , x3 , y3 , x4 , y4 );%绘图 axis ([- 2000 , 2000 , 0 , 70000 ]);%设置 x , y 轴坐标范围 pause ( 0.01 );%延时一小段时间,必须具备 i = i + 1 ; end fclose ( s ) 转载请标明出处: matlab 串口实时接收数据 绘图 文章来源: matlab 串口实时接收数据 绘图

MSP430F5438A系列之串口通讯

匿名 (未验证) 提交于 2019-12-03 00:21:02
前言: MSP430F5438A 这款芯片,以后所有的程序都是基于该芯片。 本次需要实现的功能:单片机判断串口0收到的字符,输出相应的字符串到上位机。 下面直接上代码: 测试结果如下:发送字符“A”,返回“Hello! Welcome to MSP430F5438A!”; 下面对时钟源选择和波特率配置进行简要说明: 1、时钟源选择 2、波特率配置 波特率寄存器值需根据芯片数据手册中的推荐值进行配置。由于时钟源与波特率的比值(分频系数)一般来说是非整数值,所以UCA0BR1和UCA0BR0用于配置分频系数的整数部分,UCA0MCTL用于分频系数的配置小数部分: 文章来源: MSP430F5438A系列之串口通讯

pixhawk串口原理图学习

匿名 (未验证) 提交于 2019-12-03 00:20:01
Ŀ¼ Ŀ¼ ժҪ ժҪ 本文档主要记录学习pixhawk硬件的串口过程,pixhawk中主要的串口有六个。 1.UART4―-GPS 2.USB串口 3.UART6―连接STM32F103CBT6的串口 4.UART2―-Telem2/OS4 5.UART8 6.UART7 总的电路图: 采用Viso2013总结各个串口与程序的对应关系 文章来源: pixhawk串口原理图学习

串口接收一帧数据及解析

匿名 (未验证) 提交于 2019-12-03 00:20:01
3. 下位机中的数据接收和协议解析 0x55, 0xAA, 0x7E, 0x12, 0xF0, 0x02, 0x23, 0x45, SUM, XOR, 0x0D { } else if(state_machine == 1) { } else if(state_machine == 2) { } else if(state_machine == 3) { } else if(state_machine == 4) { else if(state_machine == 5) { } else if(state _machine == 6 || state _machine == 7) { } else if(state_machine == 8) { } else if(state_machine == 9) { } else if(state_machine == 10) { } 文章来源: 串口接收一帧数据及解析

当串口大师ComMaster提示”找不到串口“

匿名 (未验证) 提交于 2019-12-03 00:18:01
windows系统上,串口是记录在注册表里的,串口大师也就是从注册表里找当前系统连接了哪些串口。 每当一个串口设备接入系统后,系统都会将其记录在注册表中,用一个键值对来标记。串口大师就是通过检查键的名字来判断串口设备的。所以,如果这个键名不能被串口大师检测到,则串口大师就无法发现这个串口设备了。 比如,某个串口蓝牙模块接入系统后,其在注册表中的键值对是这样: key:HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM\Device\Silabser0 value:COM2 此时串口大师找不到COM2。 解决的办法很简单:将键重命名为\Device\Serial0即可。 再打开串口大师,就能找到COM2了。 文章来源: 当串口大师ComMaster提示”找不到串口“

串口异或校验字C++代码实现

匿名 (未验证) 提交于 2019-12-03 00:15:02
串口异或效验 C++代码实现 直接上代码片段 QString str="32000"; str += QString::number(ui->lightBox->value()); char* ch; QByteArray ba = str.toLatin1(); ch = ba.data(); j = ch[0]; for (int i = 1; i < str.length(); i++) { j = j^ch[i];//返回10进制的效验码 } //换算16进制 for (; k > 0;) { if (j < 10) { str += "0" + QString::number(j); k = 0; } else if (j > 9 && j < 16) { if (j == 10) str += "0A"; if (j == 11) str += "0B"; if (j == 12) str += "0C"; if (j == 13) str += "0D"; if (j == 14) str += "0E"; if (j == 15) str += "0F"; k = 0; } else { int a = j / 16; int b = j % 16; if (a< 10) { str +=QString::number(a); if (b < 10) { str +

串口(TTL)升级STM32:程序固定Flash地址写入,运行

匿名 (未验证) 提交于 2019-12-03 00:13:02
升级篇资料重新整理! 升级篇目录! 注:源码说明: 一,实现功能概要   STM32通过串口接收程序文件,写入固定Flash地址,写完之后,运行写入的程序. 二,操作演示   1,下载 BootLoader   2,打开串口调试助手,选择bin文件         4,发送程序文件       三,源码使用说明    来源:博客园 作者: 杨奉武 链接:https://www.cnblogs.com/yangfengwu/p/11639176.html