
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
通信目的:将一个设备的数据传输到另一个设备,扩展硬件系统通信协议:制定通信的规则,通信双方按照协议规则进行数据收发硬件电路简单串口通信有两根通信线(发送端TX和接收端RX)TX和RX要交叉连接当只需要单向的数据传输时,可以只接一根通信线当电平标准不一致时,需要加电平转换芯片电平标准电平标准是数据1和数据0的表达方式,是传输线缆中人为规定的电压与数据的对应关系,串口常用的电平标准有如下三种:TTL电
使用RTC直接再cubeMX中配置启动时钟和日历如第六届省赛想要让RTC的秒每隔一秒递增1需要在时钟树界面观察RTC的主频由于RTC时钟主频为32KHZ将异步预分频计数器的值设为31,将同步预分频计数器的值设为999这样就可以将RTC的时钟信号分频为1HZ达到1秒自增的效果生成代码首先定义时间,日期结构体然后使用两个函数得到时间和日期就可以啦放在LCD显示。
这个在之前的省赛题目里都有详细的配置过程这里就不在展示。

参考产品手册配置PC8到PC15为LED并将引脚电平拉高。

将数字量转换为模拟量的器件查阅DAC的数据手册stm32的DAC模块是12为数字输入,电压输出型的DACDAC可以配置为8位或者12位模式,也可以与DMA配合使用DAC工作在12位模式时,数据可以设置成左对齐或者右对齐DAC模块有两个输出通道,每个通道都有独特的转换器参考stm32G4的数据手册可以看到开发板一共有一个DAC,输出引脚分别为PA4和PA5在双DAC模式下,2个通道可以独立的进行转换

ADC:模拟数字转换技术,在stm32中模拟——数字转换技术通常使用逐次逼近法(通过不断进行二分比较最终确定电压值的方法)其中12位称为分辨率,在stm32中分辨率可以设置为6,8,10,12位ADC的结果存储在16位的左对齐或者右对齐的数据寄存器中ADC转换的步骤:采样,保持,量化,编码。

由于题目要求需要将K值保存在E2PROM中,所以我们需要用到I2C通信,LCD模块不需要我们自己编写可以直接使用官方例程,首先将官方例程的LCD模块和I2C模块移植到我们自己建立的BSP文件夹下。需要注意如果电脑版本不同对于k0.x\n的字符数的识别也不同,有的版本可能将'\n'视为一个字符有的可能将'\n'视为'\'和'n'两个字符所以这里提供两种编码方式。题目中要求串口能够发送相关数据接收上报

由于题目要求需要将K值保存在E2PROM中,所以我们需要用到I2C通信,LCD模块不需要我们自己编写可以直接使用官方例程,首先将官方例程的LCD模块和I2C模块移植到我们自己建立的BSP文件夹下。需要注意如果电脑版本不同对于k0.x\n的字符数的识别也不同,有的版本可能将'\n'视为一个字符有的可能将'\n'视为'\'和'n'两个字符所以这里提供两种编码方式。题目中要求串口能够发送相关数据接收上报

直接上代码这个代码里面我们简单实现了如果按键按下时间超过0.8秒K1的值增加,短按只增加一次,按键2长按K2值增加,按键3双击K1的值减1,按键4双击K2的值减1。
参考产品手册配置PC8到PC15为LED并将引脚电平拉高。








