找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1134|回复: 0
打印 上一主题 下一主题
收起左侧

FDC2214程序STM32 OLED串口

[复制链接]
跳转到指定楼层
楼主
ID:416342 发表于 2020-1-1 12:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
FDC2214程序STM32OLED串口 可参考
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "timer.h"
  5. #include "led.h"
  6. #include "oled.h"
  7. #include "fdc2214.h"
  8. #include "McuDataSend.h"

  9. float res0,res1,res2,res3;
  10. float temp0,temp1,temp2,temp3;  //初始值

  11. void Sys_Init(void)
  12. {
  13.         delay_init();                     //延时函数初始化          
  14.         NVIC_Configuration();//设置NVIC中断分组2:2;2位抢占优先级,2位响应优先级
  15.         uart_init(9600);         //串口初始化为115200
  16.         LED_Init();
  17.         OLED_Init();
  18.         while(FDC2214_Init());
  19.         led=0;
  20.         delay_ms(100);
  21.         temp0 = Cap_Calculate(0);//读取初始值
  22.         temp1 = Cap_Calculate(1);
  23.         temp2 = Cap_Calculate(2);
  24.         temp3 = Cap_Calculate(3);
  25.         TIM5_Ctrl_Init(2000-1,720-1);
  26. }

  27. int main(void)
  28. {
  29.   Sys_Init();
  30.         while(1)
  31.         {
  32.                 Oled_Printf_Float(0,1,res0-temp0,0);
  33.                 Oled_Printf_Float(0,3,res1-temp1,0);
  34.                 Oled_Printf_Float(0,5,res2-temp2,0);
  35.                 Oled_Printf_Float(0,7,res3-temp3,0);
  36.                 printf("CH0;%3.3f CH1;%3.3f CH2;%3.3f CH3;%3.3f\r\n",res0-temp0,res1-temp1,res2-temp2,res3-temp3);
  37.                 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)==RESET);
  38.     delay_ms(20);
  39.         }
  40. }


  41. //定时器5中断服务程序
  42. void TIM5_IRQHandler(void)   //TIM5中断
  43. {

  44.                
  45.                 if(TIM5->SR&0X0001)//20ms定时中断
  46.                  {
  47.                         res0 = Cap_Calculate(0);//采集数据
  48.                         res1 = Cap_Calculate(1);
  49.                         res2 = Cap_Calculate(2);
  50.                         res3 = Cap_Calculate(3);
  51.                          
  52. //                          Data_Send_Status(res,0,0);
  53. //                          printf("%5d : %5d : %5d\r\n",res0,res1,res2);
  54.                          led=~led;
  55.                  }
  56.          TIM5->SR&=~(1<<0);  //中断标志位清0,等待下一次中断
  57. }
复制代码

全部资料51hei下载地址:
FDC2214程序STM32OLED串口.zip (396.37 KB, 下载次数: 13)

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表